2017 mlw chi the best database for agile ... - marklogic · our highest priority is to satisfy the...

37
13 June 2017 © COPYRIGHT MARKLOGIC CORPORATION. ALL RIGHTS RESERVED. The Best Database for Agile Development Mike Armagost, Consulting Director, MarkLogic

Upload: others

Post on 15-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

13 June 2017© COPYRIGHT MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

The Best Database for Agile DevelopmentMike Armagost, Consulting Director, MarkLogic

Page 2: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

WelcomeAre you ready to talk about agile?

Page 3: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 3 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Methodologies Are Everywhere

WATERFALL AGILE CRITICAL CHAIN PRiSM

RUP SIX SIGMA KANBAN MORE

Page 4: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 4 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Methodologies Are Everywhere

WATERFALL AGILE CRITICAL CHAIN PRiSM

RUP SIX SIGMA KANBAN MORE

goal = SUCCESSFUL PROJECTS

Page 5: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 5 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Methodologies Are Everywhere

WATERFALL AGILE CRITICAL CHAIN PRiSM

RUP SIX SIGMA KANBAN MORE

The focus of this presentation

Page 6: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 6 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Waterfall vs. AgileDIFFERENT TOOLS

CONCEPTION

INITIATION

ANALYSIS

DESIGN

CONSTRUCTION

TESTING

DEPLOYMENT

WATERFALL

VS

CONCEPTION

INITIATION

ANALYSIS

DESIGN

CONSTRUCTION

TESTING

DEPLOYMENT

AGILE

Page 7: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 7 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

The Waterfall Approach Is BrokenRESULTS

DESIGN DELIVERY

a. b. c.

Page 8: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 8 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

The Agile Approach Is Iterative and Less RiskyRESULTS

ITERATION 1

ITERATION 2

ITERATION 3

ITERATION 4

DELIVERY

Page 9: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 9 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Let’s Play a Game – Round 1Which of the below are actual of the twelve tenants of Agile?A. Our highest priority is to satisfy the customer through early and continuous delivery of

valuable software

B. Faster is always better

C. Simplicity - the art of maximizing the amount of work not done--is essential.

D. Dogs are better than cats

E. All of the above

Page 10: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 10 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Let’s Play a Game – Round 1Which of the below are one of the twelve tenants of Agile?A. Our highest priority is to satisfy the customer through early and continuous delivery of

valuable software

B. Faster is always better

C. Simplicity - the art of maximizing the amount of work not done--is essential.

D. Dogs are better than cats

E. All of the above

Page 11: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 11 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Let’s Play a Game – Round 2Which of the below are one of the twelve tenants of Agile?A. Management of the individual contributor is essential

B. Working software is the primary measure of progress.

C. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

D. There’s no good music these days

E. None of the above

Page 12: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 12 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Let’s Play a Game – Round 2Which of the below are one of the twelve tenants of Agile?A. Management of the individual contributor is essential

B. Working software is the primary measure of progress.

C. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

D. There’s no good music these days

E. None of the above

Page 13: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 13 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Let’s Play a Game – Round 2Which of the below are one of the twelve tenants of Agile?A. Management of the individual contributor is essential

B. Working software is the primary measure of progress.

C. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

D. There’s no good music these days

E. The business owners are the best arbiters of design decisions

F. None of the above

Page 14: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 14 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Let’s Play a Game – Round 3Which of the below are one of the twelve tenants of Agile?A. At regular intervals, the team reflects on how to become more effective, then tunes and

adjusts its behavior accordingly.

B. Business people and developers must work together daily throughout the project

C. Delivery to well defined requirements is essential to success

D. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely

E. Han shot first

Page 15: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 15 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Let’s Play a Game – Round 3Which of the below are one of the twelve tenants of Agile?A. At regular intervals, the team reflects on how to become more effective, then tunes and

adjusts its behavior accordingly.

B. Business people and developers must work together daily throughout the project

C. Delivery to well defined requirements is essential to success

D. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely

E. Han shot first

Page 16: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 16 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Tenants of Agile1. Our highest priority is to satisfy the customer through early

and continuous delivery of valuable software.

2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.

3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.

4. Business people and developers must work together daily throughout the project.

5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.

6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

7. Working software is the primary measure of progress.

8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.

9. Continuous attention to technical excellence and good design enhances agility.

10. Simplicity--the art of maximizing the amount of work not done--is essential.

11. The best architectures, requirements, and designs emerge from self-organizing teams.

12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

Source: Agile Alliance

Page 17: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 17 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

An Example§ A large government agency

§ All military services working towards a single goal

§ Originally attempted with Waterfall

§ Conflicting agendas made success unobtainable

§ Switched to Agile

§ Able to succeed by breaking into small bites everyone could agree upon

Page 18: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

80Of data scientists’ time is spent collecting and preparing unruly data before it can be explored for useful nuggets

%

Life Is Complex, So Are Projects

Source: Steve Lohr, New York Times

Page 19: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

6.4That’s the success rate of IT projects according to one study of 3,555 public and private sector projects

%

Life Is Complex, So Are Projects

Source: ComputerWorld, reporting on a study going from 2003 to 2012.

Page 20: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 20 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

OPEN DATA

MOREANALYTICS

NEW MONETIZATION STRATEGIES

VIRTUALIZATION &CLOUD

NEW REGULATION

NEW RESEARCH

REQUIREMENTS

Your business is changing…

MERGERS & ACQUISITIONS

EMPLOYEE TURNOVER

Your data & infrastructure are changing…

INTERNET OF THINGS

NEW APPSEXPANSION

MACHINELEARNING

NEW APPLICATIONS

Page 21: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 21 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

The Problem With the Traditional Approach

The Business Changes, The Requirements Change,The Source Data Changes

1Take a Current State Snapshot

Design the New Data Model

Perform ETL

Create the Indexes

23

4

Build the Application

5

Restart Process6

Page 22: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 22 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

HOW DATA IS ACCESSED

WHERE DATA COMES FROM

DATA WHO ACCESSES THE DATA

A NEW APPROACH

Expect That Over Time, Everything Can Change, at Any Time

Page 23: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

AGILE IS DISRUPTIVE & CHANGE IS HARD

Page 24: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 24 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Why Agile with MarkLogic?§ You can follow the data and respond to business users

§ You are not anchored to a predefine schema

§ You can handle disparate data types with ease

§ You get value immediately, even if you haven’t identified all your data sources

Page 25: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 25 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

2

3

1

4

1Ingest Data As-Is

2Access the Data

4Operationalize

3Harmonize & Enrich the Data

MARKLOGIC APPROACH TO DATA INTEGRATION

Page 26: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 26 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Agile Development Needs Agile DataWhat is agile data?

§ Data that is “able to move quickly and easily”

To support agile data we need:1. Bring the data in quickly and flexibly2. Search and query in real-time3. Harmonize and enrich the data “in situ” 4. Operationalize and expose the data as needed

Of course we still need to persist the data in a reliable and secure fashion.

Page 27: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 27 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Immediate Value, Faster Time to ResultsTHE MARKLOGIC ALTERNATIVE

RELATIONAL APPROACH

MARKLOGICAPPROACH

SEARCH

HARMONIZE& ENRICH

UI & APPDEVELOPMENT

DEPLOY

CURRENT STATE

SNAPSHOT

ETL

CREATE INDEXES

INTEGRATE SEARCH

DEPLOYUI & APP DEVELOPMENT

BUILD IN ADVANCED FEATURES

LOADAS IS

REDO FOR CHANGES & NEW DATA SOURCES

DATA MODELING

Page 28: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 28 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Scrum, Code, and Instance Management§ Use a code management tool:

- Unfuddle, Jira, Gradle, GitHub, flavor of the month

§ Plan your instances:

- Minimum – Dev, Test, Prod

- We highly recommend at least one Test instance to be an EXACT image of Prod

Page 29: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 29 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Rinse, Lather, RepeatMARKLOGIC & AGILE

§ You need to develop repeatable, measureable, and testable processes

§ REWORK is not a dirty word

§ MarkLogic is easy to back up and wipe clean

Page 30: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 30 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Build In Unit TestsMARKLOGIC & AGILE

§ Confident rework

§ Always prepared

Page 31: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 31 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

§ Establish code standards

§ Publish to the team

§ Enforce the standards

Standards, Standards, Standards

MARKLOGIC & AGILE

Page 32: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 32 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Review & AdaptMARKLOGIC & AGILE

§ Keep what works

§ Change what doesn’t

Page 33: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 33 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

MLCS Driven COEs Help Make MarkLogic a StandardA MarkLogic Center of Excellence provides governance, processes and technology expertise

Improve Quality Increase Efficiency Decrease Cost Reduce Risk

PROJECT A

PROJECT B

PROJECT C

PROJECT D

PROJECT E

PROJECT F

MarkLogicCenter of Excellence

ReusableComponents

KnowlegdeBase

TrainedExperts

Training &Ramping

Page 34: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 34 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Why a COE?CENTER OF EXCELLENCE

§ Organizations with more than one MarkLogic project should establish a COE

§ Consolidates MarkLogic SME’s

§ Establishes and maintains baseline configuration and practices

PROJECT A

PROJECT B

PROJECT C

PROJECT D

PROJECT E

PROJECT F

MarkLogicCenter of Excellence

ReusableComponents

KnowlegdeBase

TrainedExperts

Training &Ramping

Page 35: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 35 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Resources§ Agile Alliance

- https://www.agilealliance.org/

§ Plan for Success

- http://www.marklogic.com/resources/plan-success-high-stakes-data-projects/

§ Load as is

- http://www.marklogic.com/blog/understanding-the-load-as-is-pattern/

§ Rethink data modeling

- http://www.marklogic.com/resources/rethink-data-modeling/

Page 36: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

Questions?

Page 37: 2017 MLW CHI The Best Database For Agile ... - MarkLogic · Our highest priority is to satisfy the customer through early and continuous delivery of valuable software B. Faster is

SLIDE: 37 © COPYRIGHT 2017 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

Director, Consulting | @[email protected]

Mike Armagost