89
[email protected] www.netobjectives.com 1 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009 What’s Next In the Agile World? The Case for Lean-Agile Software Development

Creating a Model to Understand Product (and Software) Development

Embed Size (px)

Citation preview

Page 1: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 1/89

[email protected]

www.netobjectives.com

1 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

What’s Next In the

Agile World?The Case for Lean-Agile

Software Development

Page 2: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 2/89

2 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

What’s Next?

Kanban!

Page 3: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 3/89

[email protected]

www.netobjectives.com

3 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Thank You For

Being Here

Page 4: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 4/89

4 20 May 2009

Where We Have

Been

A (very) short history of the

software development culture

Page 5: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 5/89

5 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

The Importance of Software

Software is permeating more andmore of our

businesses/lives/culture

The quality of our software is having

a greater influence on the quality of our lives

Failures in software are now

capable of doing greater and

greater damage

Other professions are becoming

increasingly vulnerable to software

Page 6: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 6/89

6 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Tick - Tock

60s: Software Crisis

80s: PCs

90s: Internet

00s: Consumer

Technologies / Agilemethods

70s: Software Engineering /Waterfall

80s: 4th Generation

Language

90s: Rigorous Process

(CMM)

00s: CMMI (done

improperly)

Page 7: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 7/897 20 May 2009

The Arrival

of Agile

Agile Has Been as Much a

Reaction as it Has Been a

Solution

Page 8: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 8/898 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Agile Manifesto

Individuals and interactions over processes and tools

Working software over comprehensive documentation

Customer collaboration over contract negotiation

Responding to change over following a plan

Page 9: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 9/899 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

What Is Agile?

Build software in steps

Get feedback from customers

Self-organizing teams

Deliver high quality software, faster, at lower cost

Page 10: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 10/8910 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

eXtreme Programming

Very popular for a few years 99-??

Demanded too much from developers

Why?

Page 11: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 11/8911 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Scrum

Based on few principles

Several practices

Embraces “inspect and adapt”

Protect the team – exclude management

Page 12: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 12/8912 20 May 2009

Current

Challenges

We're Moving, But

We're Not There

Page 13: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 13/8913 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Current Challenges

Practices more widespread than principles

Lack of proper management view

Lack of professionalism / craftsmanship

Page 14: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 14/8914 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

We Need More

Practices work in a context

We have practice adherence but low agility

No set of practices will work in more than a limited

number of situations

If you look for someone else’s success you will get your

own failure

Page 15: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 15/8915 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

What Does It Take to Learn Something?

“Theory by itself teaches nothing.

Application by itself 

teaches nothing.

Learning is the resultof dynamic interplay

between the two.”Peter Scholtes, The Leader’s

Handbook: A Guide ToInspiring Your People and 

Managing the Daily 

Workflow 

Hunches,

hypotheses,

guesses Theory

DataExperience,

observation,

real life

True learningand improvement

Interaction

Page 16: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 16/8916 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Available Management Paradigms

3 industrial paradigms

1900Interchangeable

People – 

Assembly Line

1800Interchangeable

Parts

Craft

Page 17: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 17/8917 20 May 2009

Improvements

Needed

Page 18: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 18/8918 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Business Issue

If Software is important to a business then they have tocontrol:

 – What it will do

 – When it is finished

 –

What it will cost How do you control something you don't understand, if 

you are running a business?

Find something it is "like" that you do understand, and

reuse that knowledge What is software development like?

Page 19: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 19/8919 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Re-thinking Change

If we accept that change is inevitable…

and if change means decay…

…isn't decay inevitable?

Page 20: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 20/8920 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Decay

Time

   Q   u   a    l   i   t   y   a   s

   C   o   d   e   C    h   a   n   g   e   s

Hack it in Code Debt

"That’s the way it is"

Functional

Completeness

Cheaper to

Replace

ReleaseMaintenance

Page 21: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 21/8921 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Rejecting Decay: Changing Change

Time

   Q   u   a    l   i   t   y   a   s   C   o   d   e   C    h   a   n   g   e   s

"First, do no harm"

Code what you know

Validation-Centricity

Validateable:

What we think

we know

Based on what

we have

learned

First

IterationFurther Iterations

Page 22: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 22/8922 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

The Nature of Software Development

Is Software Development a true "Profession?" Is it Engineering?

Is it an Art?

Is it a Craft?

Is it Science?

Page 23: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 23/8923 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

What Is Missing

Other Professions have:

 –

Specialized language – Clear path to entry

 – Defined mentoring

 – Peer-review

 – Standards & practices

A profession is an organism:

 – There has been "medicine" for thousands of years, but no

particular doctor has been around that long

Page 24: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 24/8924 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Can Initially Be Thought of as Answers to Questions

What would you want someone to know before leadinga Lean Transition at the team level?

What would you want management to know before

leading their organization?

What would you want a programmer to know before

touching your code?

Page 25: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 25/89

25 20 May 2009

Lean Provides

New

Opportunities

There Is a Foundation

To Build On

Page 26: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 26/89

26 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Science / Experience as the Source of Lean

Toyota

Lean-Thinking

Flow

ServicesSoftware

Development

Deming

Lean

PrinciplesJIT Autonomation

Page 27: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 27/89

27 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

The Lean Enterprise

Lean “Science”

Flow, Cadence, Pull

Options Theory

ToC

Lean

Education

A3s, KaizensContinuous

improvement

5-whys

LeanManagement

Leadership

Education

Visual Controls

Lean Thinking 

 _1dd

Page 28: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 28/89

28 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Command and Control

Set direction & how to do it

Figure out the one best way

Get teams motivated

Make sure teams do it right

Process is good

We’d be successful if only

the devs would do what

they are supposed to

Individuals/Teams Rule

Figure it out

Avoid management

The rules are do it fast

Individuals are key

Process is bad

We’d be successful if only

management would let us

do the right thing

The Management Dilemma of the Last 4 Decades

Page 29: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 29/89

29 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Lean: A New Paradigm

4 industrial paradigms

2000 Engaged,Thinking People – 

Lean

1900Interchangeable

People – 

Assembly Line

1800Interchangeable

Parts

Craft

Page 30: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 30/89

30 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Organization Concerns / “Boundaries”

Team Technical & Line Mgrs Business Owners

How do we achievethat value? 

What – is the best way todeliver that value ? 

Why – is this of value? 

•Speed of 

•analysis

•build

validation•deployment

•Continual

standards

improvement

•Technology

•Process for Discovery and

Development

Core Engineering Practices•System integrity

•Boundaries to empower

teams

•Resolution of Impediments to

speed and flow

Skills excellence and optimizedteam performance

•Portfolio of Projects

•Budgets

•Priority & Sequence

Continual discovery of highest business value

Iterative Iterative Incremental  

Page 31: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 31/89

31 20 May 2009

Achieving

Enterprise Agility

Page 32: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 32/89

32 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Agility

Its about Agility; you can be more agile or less agile inyour efforts

An agile team is only as agile as the business &

management is agile…

Challenges / Questions

Does it work in the real world?

Would it work for my company?

What must we do?

How long until we see results?

Page 33: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 33/89

33 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Enterprise Agility

Page 34: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 34/89

34 20 May 2009

Driving from

Value

Page 35: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 35/89

35 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Speed of Realizing Business Value

Develop Faster

Deploy Faster

Use Faster! “Business Value can be Realized” 

Page 36: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 36/89

36 20 May 2009

Trends for

Business Value

Realization

Page 37: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 37/89

37 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Type 1

   B   u   s   i   n   e   s   s   v   a    l   u   e   r

   e   a    l   i   z   e   d

Time

   r   e    l   e   a   s   e

   r   e    l   e   a   s   e

   r   e    l   e   a   s   e

Page 38: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 38/89

Page 39: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 39/89

39 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Type 3

   B   u   s   i   n   e   s   s   v   a    l   u   e   r   e   a    l   i   z   e   d

Time

   r   e    l   e   a   s   e

   r   e    l   e   a   s   e

   r   e    l   e   a   s   e

Page 40: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 40/89

40 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Type 4

   B   u   s   i   n   e   s   s   v   a    l   u   e   r   e   a    l   i   z   e   d

Time

   r   e    l   e   a   s   e

   r   e    l   e   a   s   e

   r   e    l   e   a   s   e

Page 41: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 41/89

42 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Project View: By Project Business Value

0%

20%

40%

60%

80%

100%

120%

140%

   O  v  e  r  n   i  g   h   t   A

  p  p   A   &   P  r   i  c   i  n  g   D   i  s   t  r   i   b  u   t   i  o  n   t  o   I  n   i   t   i  a   t   i  v  e   B

   V  e  n   d  o  r   1

   E  q  u   i   t  y   A  p  p   A   D  a   t  a   B  u   i   l   d  o  u   t  -   I  n   i   t   i  a   t   i  v  e   D

   T  r  a   d  e

   A   d  m   i  n   i  s   t  r  a   t   i  o  n  c   h  e  c   k   l   i  s   t  -   f   i  x  e   d   i  n  c  o  m  e

   V  e  n   d  o  r   1

   O  n  e  -   d  a  y   S  o  u  r  c   i  n  g   /   A  c  q  u   i  s   i   t   i  o  n  -  r  e  q  u  e  s   t

   O  n  e  -   d  a  y   A  p  p   A   D   i  s   t  r   i   b  u   t   i  o  n   t  o   I  n   i   t   i  a   t   i  v  e   B

  -   f   i  x  e   d   i  n  c  o  m  e

   V  e  n   d  o  r   1   O

  n  e  -   d  a  y   S  o  u  r  c   i  n  g   /   A  c  q  u   i  s   i   t   i  o  n  -  r  e  s  p  o  n  s  e

   V  e  n   d  o  r   1   F   i  x  e   d   I  n  c  o  m  e   A  p  p   A   D  a   t  a   B  u   i   l   d  o  u   t  -   I  n   i   t   i  a   t   i  v  e   D

   O  c   t  o   b  e  r   E  n  a   b   l   i  n  g

   O  c   t  o   b  e  r

   V  e  n   d  o  r   5   P  r  o   d  u  c   t   i  o  n   S  u  p  p  o  r   t   R  e  q  u  e  s   t  s

   O  c   t  o   b  e  r   E   l  e  v  a   t   i  o  n

   A  c   t   i  o  n  s   I  n   i   t   i  a   t   i  v  e   C

   f  o  r   d  o  w  n  s   t  a   i  r  s  o   f   f   i  c  e

   4   Q   2   0   0   7

   D  e  c  o  u  p   l   i  n  g  -   S   t  o  r  e   d  p  r  o  c   d  e  v  e   l  o  p  m  e  n   t

   A  p  p   A   D   i  s   t  r   i   b  u   t   i  o  n   t  o   I  n   i   t   i  a   t   i  v  e   D

   4   Q   2   0   0   7   D  e  c  o  u  p   l   i  n  g  -   D  a   t  a   b  a  s  e   b  u   i   l   d  o  u   t

   T  e  a  m   o  n   U   I

   A  p  p   A   F   i  n  a   l   A  n  a   l  y  s   i  s  a  n   d   D  e   f   i  n   i   t   i  o  n

   N  o  v   /   D  e  c   E   l  e  v  a   t   i  o  n   &   E  n  a   b   l   i  n  g

   V  e  n   d  o  r   2

   O  n  e  -   d  a  y   S  o  u  r  c   i  n  g   /   A  c  q  u   i  s   i   t   i  o  n  -  r  e  q  u  e  s   t

   V  e  n   d  o  r   2   O

  n  e  -   d  a  y   S  o  u  r  c   i  n  g   /   A  c  q  u   i  s   i   t   i  o  n  -  r  e  s  p  o  n  s  e

   V  e

  n   d  o  r   2   E  q  u   i   t  y   A  p  p   A   R  a  w

   D  a   t  a   B  u   i   l   d  o  u   t

   V  e  n   d  o  r   2   F   i  x  e   d   I  n  c  o  m  e   A  p  p   A   R  a  w

   D  a   t  a   B  u   i   l   d  o  u   t

   V  e  n   d  o  r   2   O  v  e  r  n   i  g   h   t   S  o  u  r  c   i  n  g   /   A  c  q  u   i  s   i   t   i  o  n  -  r  e  q  u  e  s   t

   V  e  n   d  o  r   2   O  v  e  r  n   i  g   h   t   S  o  u  r  c   i  n  g   /   A  c  q  u   i  s   i   t   i  o  n  -  r  e  s  p  o  n  s  e

   V  e  n   d  o  r   3   H  o   l   d   i  n  g  s  a  n   d   A  p  p   A   b  u   i   l   d  o  u   t

   B  u  s   i  n  e  s  s  c  u  s   t  o  m   s  e  c  u  r   i   t  y   t  o  s  u  p  p  o  r   t  r  e  q  u  e  s   t   b  u   i   l   d  o  u   t

   R  e  g   i  s   t  r  a  n   t   b  u   i   l   d  o  u   t

   V  e

  n   d  o  r   1   2   I  n   d  u  s   t  r  y   C   l  a  s  s   i   f   i  c  a   t   i  o  n   b  u   i   l   d  o  u   t

   F   i  x  e   d   I  n  c  o  m  e   A  n  a   l  y  s   i  s

   S  o  u  r  c  e  a  n   d   L  o  a   d   A  p  p   C

  a   t   t  r   i   b  u   t  e

  s   f  r  o  m   e  x   t  e  r  n  a   l  v  e  n   d  o  r  s   (   V  e  n   d  o  r   1  a  n   d

   A  p  p   A   D   i  s

   t  r   i   b  u   t   i  o  n   t  o   I  n   i   t   i  a   t   i  v  e   D

   E  q  u   i   t  y  -   O  n  e  -   d  a  y

   A  p  p   A   F   i  n  a   l   D  e

  s   i  g  n  a  n   d   I  m  p   l  e  m  e  n   t   (  w   i   t   h  c  o  n   t   i  n  g  e  n  c  y   )

   V  e  n   d  o  r   4  c   h  e  c   k   l   i  s   t

   D  e   l   i  v  e  r  e  q  u   i   t  y   A  p  p   A   t  o   V  e  n   d  o  r   3

   D  e   l   i  v  e  r   f   i  x  e   d   i  n  c  o  m  e   A  p  p   A   t  o   V  e  n   d  o  r   3

   M  a  n  a  g  e   A   d   d   /   R  e  p  a   i  r  o   f   A   d  v   i  s  o  r   A  p  p   A   D  a   t  a

   A  p

  p   A   D   i  s   t  r   i   b  u   t   i  o  n   t  o   I  n   i   t   i  a   t   i  v  e   D

  -   O  n  e  -   d  a  y

   O  v  e  r  n   i  g   h   t   A  p  p   A   &   P

  r   i  c   i  n  g   D   i  s   t  r   i   b  u   t   i  o  n   t  o   I  n   i   t   i  a   t   i  v  e   B

  -  e  q  u   i   t  y

   O  n  e  -   d  a  y

   A  p  p   A   D   i  s   t  r   i   b  u   t   i  o  n   t  o   I  n   i   t   i  a   t   i  v  e   B

  -  e  q  u   i   t  y

   D  a  y   0  w   i   t   h   I  n   i   t   i  a   t   i  v  e   B

   L  o  c  a   l   D   B  -  e  q  u   i   t  y

   B  r  o   k  e  r   U   I   /   F  u  n  c   t   i  o  n  a   l   i   t  y   R  e   f  a  c   t  o  r

   E  x  c   h  a  n  g  e   U   I   /   F  u  n  c   t   i  o  n  a   l   i   t  y   R  e   f  a  c   t  o  r

   V  e  n   d

  o  r   1   3   A  c  c  o  u  n   t   U   I   /   F  u  n  c   t   i  o  n  a   l   i   t  y   R  e   f  a  c   t  o  r

   E

  x  c  e  p   t   i  o  n  s  -  p  r  o  c  e  s  s   i  n  g  a  n   d   U   I  r  e   f  a  c   t  o  r

   V  e  n   d

  o  r  c   h  e  c   k   l   i  s   t ,   A   t   t  r   i   b  u   t  e  s  a  n   d   A  u   d   i   t  v   i  a   U   I

   D   i  s   t  r   i   b  u   t  e   f   i  n  a   l  a   t   t  r   i   b  u   t  e  s   t  o   A  p  p   C

   L  o  a   d   d

  e  r   i  v  e   d   A  p  p   C

  a   t   t  r   i   b  u   t  e  s   t  o  e  n  v   i  r  o  n  m  e  n   t

   A  p  r   i   l   2   0   0   8   I  n

   i   t   i  a   t   i  v  e   A

   P  r  o   d  u  c   t   i  o  n   S  u  p  p  o  r   t   R  e  q  u  e  s   t  s

   A  p  r   i   l   2   0   0   8   E  n  a   b   l   i  n  g

   A  p  r   i   l   2   0   0   8   E   l  e  v  a   t   i  o  n

Delivery Plan Feature Burn Up

10/07 04/084Q07

Features

The project has been prioritized. Making good

progress on completing features in release.

Page 42: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 42/89

43 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Product Portfolio View: By Business Value

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

    V   e   n    d   o   r    1    E   q   u    i    t   y

    A   p   p    A    D   a    t   a    B   u    i    l    d   o   u    t

    A   p   p    A    D    i   s    t   r    i    b   u    t    i   o   n    t   o    I   n    i    t    i   a    t    i   v   e    D    (    b   y …

    O   v   e   r   n    i   g    h    t    A   p   p    A

    &    P   r    i   c    i   n   g    D    i   s    t   r    i    b   u    t    i   o   n …

    A   c    t    i   o   n   s    I   n    i    t    i   a    t    i   v   e    C

    f   o   r    d   o   w   n   s    t   a    i   r   s   o    f    f    i   c   e

    4    Q    2    0    0    7    D   e   c   o   u   p    l    i   n   g

    V   e   n    d   o   r    1    F    i   x   e

    d    I   n   c   o   m   e    A   p   p    A    D   a    t   a …

    V   e   n    d   o   r    1    S   o   u   r   c    i   n   g    /    A   c   q   u    i   s    i    t    i   o   n  -   r   e   s   p   o   n   s   e

    D   a   y    0    A   n   a    l   y   s    i   s    /    I   n    t   e   g   r   a    t    i   o   n   w    i    t    h …

    2    0    0    7    A   u   g   u   s    t

    I   n    i    t    i   a    t    i   v   e    A    P   r   o    d   u   c    t    i   o   n …

    V   e   n    d   o   r    1    E   q   u    i    t   y

    A   p   p    A    D   a    t   a    B   u    i    l    d   o   u    t  - …

    T   r   a    d   e    A    d   m    i   n    i   s    t   r   a    t    i   o   n    L    i   s    t

    V   e   n    d   o   r    1    S   o   u   r   c    i   n

   g    /    A   c   q   u    i   s    i    t    i   o   n  -   r   e   q   u   e   s    t

    A   p   p    A    D    i   s    t   r    i    b   u    t    i   o

   n    t   o    I   n    i    t    i   a    t    i   v   e    D    (    O   n   e  - …

    A   p   p    A    t   o    V   e   n    d   o   r    1    0

    V   e   n    d   o   r    2    E   q   u    i    t   y    A   p   p    A    D   a    t   a    B   u    i    l    d   o   u    t

    V   e   n    d   o   r    2    F    i   x   e

    d    I   n   c   o   m   e    A   p   p    A    D   a    t   a …

    A   p   p    A    F    i   n   a    l    A

   n   a    l   y   s    i   s   a   n    d    D   e    f    i   n    i    t    i   o   n

    A   p   p    A    D   a    t   a    B

   u    i    l    d   o   u    t    (    F    X ,

    F   u    t   u   r   e   s , …

    V   e   n    d   o   r    2    O   v   e   r   n    i   g    h    t …

    V   e   n    d   o   r    2    O   v   e   r   n    i   g    h    t …

    C   o   r   p   o   r   a    t   e    A   c    t    i   o   n   s  -    W    i    l    l   o   w

    O   n   e  -    d   a   y    A   p   p    A    D    i   s

    t   r    i    b   u    t    i   o   n    t   o    I   n    i    t    i   a    t    i   v   e    B

    V   e   n    d   o   r    1    F    i   x   e

    d    I   n   c   o   m   e    A   p   p    A    D   a    t   a …

    C

   o   r   p   o   r   a    t   e    A   c    t    i   o   n   s  -    F    i   r

    E   x   c   e   p    t    i   o   n   s

    2    0    0    8    D   e   c   o   u   p    l    i   n   g

    A   p   p    C

    F

    i   x   e    d    I   n   c   o   m   e    A   n   a    l   y   s    i   s

    V   e   n    d   o   r    2    O   n   e  -    d   a   y …

    V   e   n    d   o   r    2    O   n   e  -    d   a   y …

    S   e   c

   u   r    i    t   y    D   e   p   o   s    i    t   o   r   y    D   a    t   a

    A   p   p    A    f    i   n   a    l  -   c    h   e   c    k    i   m   p    l   e   m   e   n    t   a    t    i   o   n

    M   a   n   a   g   e    A    d    d    /    R   e   p   a    i   r   o    f    A    d   v    i   s   o   r    A   p   p    A …

    A    d   r   e   s   s    V   e   n    d   o   r    4    L    i   s    t

    M   e    t   r    i   c   s    /    M   o   n    i    t   o   r    i   n   g

    C   o   n   s   u   m   e   r    P   r   o    f    i    l   e  -    V    i   e   w

    C   o   n   s   u   m   e   r   c    h   e   c    k    l    i   s    t  -    I   n    i    t    i   a    t    i   v   e    E    &   a   u    d    i    t

    V   e   n    d   o   r   c    h   e   c    k    l    i   s    t

    A   u    d    i    t    C   a    t   c    h  -    U   p    f   o   r    A   u   g   u   s    t

    A   p   p    B

    S   y   s    t   e   m    F   u   n   c    t    i   o   n   a    l    i    t   y

    C   o   n   s   u   m   e   r   c    h   e   c    k    l    i   s    t  -    V    i   e   w , …

    I   m   p    l   e   m   e   n

    t    C   o   n   s   u   m   e   r    C    h   a   n   g   e   s

    I   m   p    l   e   m   e   n    t    V

   e   n    d   o   r    8   c   a    l   e   n    d   a   r    d   a    t   a

    2    0    0    8    A   u   g

    I   n    i    t    i   a    t    i   v   e    A    P   r   o    d   u   c    t    i   o   n …

    2    0    0    8    D   e   c

    I   n    i    t    i   a    t    i   v   e    A    P   r   o    d   u   c    t    i   o   n …

    A   u    d    i    t    C   a   p    t   u   r   e ,    S

    t   o   r   a   g   e   a   n    d    R   e   p   o   r    t    i   n   g

    M   e    t   a    d   a    t   a   c   a    t   a    l   o   g   u   e

    M   a   r   c    h    I   n    i    t    i   a    t    i   v   e    A    P   r   o    d   u   c    t    i   o   n    S   u   p   p   o   r    t …

    O   c    t   o    b   e   r

    I   n    i    t    i   a    t    i   v   e    A    P   r   o    d   u   c    t    i   o   n …

    A   u    t   o   m

   a    t   e    d    S   w    i    f    t    D   o   w   n    l   o   a    d

    C   o   n   s   u   m   e   r    P   r   o    f    i    l   e  -    I   n    i    t    i   a    t    i   v   e    E    &   a   u    d    i    t

    A   p   p    B

    A   p   p    l    i   c   a    t    i   o   n    S   e   c   u   r    i    t   y

    V   e   n    d   o   r    P   r   o    f    i    l   e

    C   o   u   n    t   r   y ,

    C   u   r   r   e

   n   c   y ,

    C   a    l   e   n    d   a   r   s   o   n    U    I

    C    h   e   r   r   y

    B    i   r   c    h

    2

    0    0    7    A   u   g   u   s    t    E    l   e   v   a    t    i   o   n

    2

    0    0    7    A   u   g   u   s    t    E   n   a    b    l    i   n   g

    2    0    0    7    M   a   y    E    l   e   v   a    t    i   o   n

    2    0    0    7    M   a   y    E   n   a    b    l    i   n   g

    2    0    0    7    O   c    t   o    b   e   r    E   n   a    b    l    i   n   g

    2    0

    0    7    O   c    t   o    b   e   r    E    l   e   v   a    t    i   o   n

    N   o   v    /    D   e   c    E    l   e   v   a    t    i   o   n

    2    0    0    8    A   p   r    i    l    E   n   a    b    l    i   n   g

    2    0    0    8    A   p   r    i    l    E    l   e   v   a    t    i   o   n

    2

    0    0    8    A   u   g   u   s    t    E   n   a    b    l    i   n   g

    2

    0    0    8    A   u   g   u   s    t    E    l   e   v   a    t    i   o   n

    2    0    0    8    D   e   c    E   n   a    b    l    i   n   g

    2    0    0    8    D   e   c    E    l   e   v   a    t    i   o   n

   % 

   C  o  m  p   l  e   t  e

Feature Burn Up by Business Value

Features

Same project, within program, sorted by business value

Q: Why is so much work being spent on lower priority features?

Page 43: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 43/89

44 20 May 2009

Organizational

Impacts

Page 44: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 44/89

/ “ d ”

Page 45: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 45/89

46 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Organization Concerns / “Boundaries”

Team Technical & Line Mgrs Business Owners

How do we achievethat value? 

What – is the best way todeliver that value ? 

Why – is this of value? 

•Speed of 

•analysis

•build

• validation

•deployment

•Continual

standards

improvement

•Technology

•Process for Discovery and

Development

•Core Engineering Practices

•System integrity

•Boundaries to empower

teams

•Resolution of Impediments to

speed and flow

Skills excellence and optimizedteam performance

•Portfolio of Projects

•Budgets

•Priority & Sequence

•Continual discovery of 

highest business value

Iterative Iterative Incremental  

Page 46: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 46/89

47 20 May 2009

Discovery & a

new approach

Low Cost

Speed

Quality

Whi h I M I ?

Page 47: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 47/89

48 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Which Is More Important?

Discovery of what’s valuable? – To the Customer & To the Business

Building (and achieving it)?

You can not build the right thing if you haven’t 

discovered it first!  Not everything is known or understood upfront by

Business / Customer (from a systems view)

Business should be able to: – Specify what’s most important at any given point in time

 – Learn from what is already implemented

 – Learn from their changing environment

 – Update and reprioritize their requirements

Page 48: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 48/89

49 20 May 2009

Business Driven

Software

Development

B i D i S ft D l t

Page 49: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 49/89

50 Copyright © 2007 Net Objectives. All Rights Reserved. 20 May 2009

Business Driven Software Development

Business Driven Software Development is where the

Business:

Owns Scope and Incremental Releases

Continually discovers and prioritizes increments byhighest business value

Continually manages and validates what the

development teams are producing

Ch ll & N A h

Page 50: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 50/89

51 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Challenges & New Approach

Current Approach – Project

based

Fixed Scope, Budget, Schedule

Define all requirements without

priority

Scope evolves, but budget and

schedule remain fixed

Big Bang Deployment

New Approach – Business

Value based

Discover highest business value,

allocate budget here

Prioritize based on Business

Value, Sequence based on ROI

Re-prioritize based on updated

discovery, budget follows

Team only builds & deploys

priority increments

K B i R l

Page 51: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 51/89

52 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Key Business Roles

Role Responsibilities

Sponsor Ultimately accountable forproject/program success; Sets the vision,

direction and priorities; Dedicates

resources and assigns Product Owner

Product Owner Defines, Tests, and accepts product; sets

priorities based on business value;accountable for the realization of vision

and business benefits

Business Technology Lead

/ SMEs

Facilitates continuous planning to front-run

teams; provides knowledge of business

processes, products and services; definesrequirements / scenarios; executes

acceptance tests; manages

implementation, business acceptance,

elevation and transition.

Page 52: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 52/89

53 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Critical Success Factors to Agile

Process

•Continuous planning, discovery anddevelopment

•Prioritization of technology spendingto highest business value

•Boundaries to empower teams

•Resolution of impediments to speedand flow

People

•The right business leads

•Allocation of business SMEs tosupport projects

•Skills excellence and optimized teamperformance

•Clear business vision, continuous planning and oversight•Dedicated and empowered business leader

•Project scope can be partitioned into independent pieces that can be delivered separately

Gl

Page 53: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 53/89

54 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Glossary

Minimum Marketable Feature – Increment of realizablebusiness value; decomposed from projects, comprised

of business capabilities.

Business Capability – business functionality ‘supporting’

the business and/or provides value to our customers

Business Feature – an increment of business value that

is comprised of slices of business capabilities.

Page 54: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 54/89

55 20 May 2009

Continual

Business

Planning

Business Driven Software Development

Page 55: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 55/89

56 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Business Driven Software Development

4 Stages (containers)1) Business Portfolio

2) Business Product Portfolio (MMFs)

3) Release Product Backlog4) Sprint Backlog(s)

Business Portfolio Container 1

Page 56: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 56/89

57 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Business Portfolio – Container 1

Business ProductPortfolio - MMF’s

Inputs: Prioritized Projects, budgets

Outputs: Releasegoals, MMFs

Minimum Marketable Features Container 2

Page 57: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 57/89

58 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Minimum Marketable Features – Container 2

Business ProductPortfolio - MMF’s

Inputs: Prioritized Projects, budgets

Outputs: Release

goals, MMFs

Decompose MMFs into Business Features

Page 58: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 58/89

59 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Decompose MMFs into Business Features

Release Product Backlog Container 3

Page 59: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 59/89

60 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Release Product Backlog – Container 3

Release Product Backlog

Inputs: Release Goals, Prioritized MMFs

Outputs: Scope of Effort, Refined

Prioritized Business Features (Scenarios/ 

personas), Release Plan, User Stories for

team(s)

Release View cont’d

Page 60: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 60/89

61 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Release View cont d.

Sprint Backlog(s) – Container 4

Page 61: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 61/89

62 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Sprint Backlog(s) – Container 4

Container 4  – Sprint Backlog(s)

Inputs: Priority sequenced User stories,

next priority business features

Outputs: Validated completed user stories

and next sprints’ prioritized user stories

Business Increment Precision

Page 62: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 62/89

63 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Business Increment Precision

Business Planning

Page 63: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 63/89

64 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Business Planning

Submit to Team Design Define

Minimal MarketableFeature (MMFs) prioritized

by Business Value

• Prioritized Business

Features

• Scenarios / Personas

• Validation approach &Acceptance Criteria

Business Capabilities• Workflows

• Process models / maps

• Scenarios

Define Goals• Business Value criteria

• Success Metrics

• Message Map

• Segments / audience

• OBT & Budget

WhyWhatHow

Product Owner & Customer Team Business Team Business Sponsor / Manager

Teams Pull from Business Needs

Page 64: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 64/89

65 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Teams Pull from Business Needs

Build & Deploy Define Discover

• Build product

Use Agile methods for highquality and responsiveness

• Marry features with system

evolution on how to buildthem

• Perform detailed design

• Begin Functional

acceptance criteria/tests

• Discovery of what is next in

Product Backlog (based onbusiness value)

• How to iteratively achieve

this value

• Features defined with

acceptance criteria

WhyWhatHow

Customer / User Feedback

Team Business Owner & Tech owner Product Owner

Sprint 4: Feature Burn Up by Release

Page 65: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 65/89

66 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Sprint 4: Feature Burn Up by Release

This graph shows

 – Num features

actively in work

 – Swarming well on

incremental

delivery?

Q: In Sprint 4, likely

to succeed in

release?

 – Why so many

activities for future

releases?

Business view: Feature completion

Sprint 5: Refocused Based on Priorities

Page 66: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 66/89

67 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Sprint 5: Refocused Based on Priorities

In Sprint 5,

Product Owner

refocuses team

based on business

value priorities

 – Increaseslikelihood of 

success in earlier

releases

 – Less work on

features for futurereleases

high Business Priority l low  

Business view: Feature completion by priorities

Page 67: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 67/89

68 20 May 2009

Improving an

Organization

There is no One Best Way 

(bummer)

The Lean Enterprise

Page 68: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 68/89

69 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

The Lean Enterprise

Business

Prioritize for Profit

Product Portfolio

Release Planning

DevelopmentPractices

TDD/QA

Design Patterns

Refactoring

Management

Value Stream

Visual Controls

Impediment Mgt

Lean Enterprise 

 _1dd

Focus on Shortening Time to Market

Page 69: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 69/89

70 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Customers

and/or

Support

Shared

Components

Development

Organization

Product

Related

New Products and/or

Enhancements

Focus on Shortening Time to Market

Customers

Product ManagersBusiness Leaders

Trainers & Educators

Regional Coordinators

Product Owner(s)

Scope of Current Methods

Page 70: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 70/89

71 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

   A   g   i    l   e

   S   c   r   u   m

    &

   X   P

Shared

Components

Development

Organization

Product

Related

New Products and/or

Enhancements

Scope of Current Methods

Customers

Product ManagersBusiness Leaders

Trainers & Educators

Regional Coordinators

Product Owner(s)

Customers

and/or

Support

Extending Agile

Page 71: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 71/89

72 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Extending Agile

Agile doesn’t explicitly deal with management

It somewhat ignores process except to say not to let itget in the way

Agile has had a paradigm of:

 –

Teams – Small pieces coming together

 – A result of it’s XP and Scrum heritage

Lean extends Agile with:

 – A non-command and control management model – A view of the whole

 – Business driven

Lean-Agile Works

Page 72: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 72/89

73 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Lean Agile Works

Lean provides the Enterprise and Business Perspective

Gives mantra of eliminating waste to reduce delays

Results in faster time to market, higher quality, lowercosts

Provides guidance for product portfolio management – Key business capabilities

 – Developed faster

Agile enables teams to work in their best way

 – Not ad hoc – Process is the best they know, but they will continue to

improve it

The Flow of Software Development

Page 73: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 73/89

74 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Customers

and/or

Support

Shared

Components

Development

Organization

Product

Related

New Products and/or

Enhancements

The Flow of Software Development

Customers

Product ManagersBusiness Leaders

Trainers & Educators

Regional Coordinators

Product Owner(s)

The Flow of Software Development

Page 74: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 74/89

75 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Customers

and/or

Support

Shared

Components

Development

Organization

Product

Related

New Products and/or

Enhancements

The Flow of Software evelopment

Customers

Product ManagersBusiness Leaders

Trainers & Educators

Regional Coordinators

Product Owner(s)

Step 1- Kanban/

Agile Teams: Start

with selected

teams.

The Flow of Software Development

Page 75: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 75/89

76 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Customers

and/or

Support

Shared

Components

Development

Organization

Product

Related

New Products and/or

Enhancements

p

Customers

Product ManagersBusiness Leaders

Trainers & Educators

Regional Coordinators

Product Owner(s)

Step 2 - Flow:

Improve the

ways product

enhancements

are given to theteams

The Flow of Software Development

Page 76: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 76/89

77 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Customers

and/or

Support

Shared

Components

Development

Organization

Product

Related

New Products and/or

Enhancements

p

Customers

Product ManagersBusiness Leaders

Trainers & Educators

Regional Coordinators

Product Owner(s)

Step 3 – Increase

ROI: Create an

agile product

portfolio

management

group

The Flow of Software Development

Page 77: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 77/89

78 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Customers

and/or

Support

Shared

Components

Development

Organization

Product

Related

New Products and/or

Enhancements

p

Customers

Product ManagersBusiness Leaders

Trainers & Educators

Regional Coordinators

Product Owner(s)

In parallel: Be

improving both

the technical skills

of the developers

with design

patterns and TDDand improve the

structure of the

teams in order to

reduce integration

costs.

Summary

Page 78: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 78/89

79 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

y

Take an Enterprise view

 – Look at entire flow

 – Use Lean-Thinking

 – Not team thinking expanded

Removing waste will speed time to market whileimproving quality and lowering cost

Page 79: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 79/89

80 20 May 2009

Question and

Answer

Page 80: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 80/89

[email protected]

www.netobjectives.com

81 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Thank You!

… and following is more to help youplan your next steps

Resources

Page 81: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 81/89

82 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Resources: www.netobjectives.com/resources – Webinars/Training Videos (PowerPoint with audio)

 – Articles and whitepapers – Pre/post course support Supporting materials

 – Quizzes

 – Recommended reading paths

Blogs and podcasts: blogs.netobjectives.com

Annotated Bibliography After-Course Support (students only)

Additional Training

Two User Groups – http://tech.groups.yahoo.com/group/leanagile

 – http://tech.groups.yahoo.com/group/leanprogramming

Join our e-mail list to receive regular updates and information

about our resources and training of interest to you

Tailored Bibliography

Page 82: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 82/89

83 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Scott Bain, Emergent Design: The Evolutionary Nature

of Professional Software Development 

Ken Pugh, Prefactoring

Don Reinertsen, The Principles of Product Development 

Flow: Second Generation Lean Product Development  Don Reinertsen, Managing the Design Factory 

Shalloway, Beaver, Trott: Lean-Agile Software

Development: Achieving Enterprise Agility 

Corey Ladas, Scrumban and Other Essays on KanbanSystems for Lean Software Development 

A Short List of Books - Lean Related

Page 83: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 83/89

84 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Womack and Jones: Lean-Thinking

Mary & Tom Poppendieck

 – Lean Software Development  – Implementing Lean Software Development: From Concept to Cash

Jeff Liker: The Toyota Way 

Michael Kennedy: Product Development in the Lean Enterprise

Taiichi Ohno: Toyota Production System

Ronald Mascitelli: Building a Project-Driven Enterprise: How to Slash Waste and Boost Profits Through Lean Project Management 

Kennedy, Harmon, Minnock: Ready, Set, Dominate: Implement Toyota's Set-based 

Learning for Developing Products and Nobody Can Catch You

 _s

See http://www.netobjectives.com/resources/bibliography for a full bibliography

Lean Management and Other Relevant Books

Page 84: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 84/89

85 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Peter Scholtes: The Leader’s Handbook: Making Things

Happen, Getting Things Done

David Mann: Creating A Lean Culture: Tools to Sustain

Lean Conversions

William Bridges: Managing Transitions

Weick and Sutcliffe: Managing the Unexpected:

 Assuring High Performance in an Age of Complexity 

See http://www.netobjectives.com/resources/bibliography for a full bibliography

A Short List of Books - Technical

Page 85: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 85/89

86 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Mugridge & Cunningham: Fit for Developing Software

Michael Feathers: Working Effectively with Legacy Code

Shalloway & Trott: Design Patterns Explained, A New Perspective on Object-

Oriented Design

Bob Martin: Agile Software Development: Principles, Patterns and Practices

Freeman, Freeman, Bates, Sierra: Head First Design Patterns

Martin Fowler, Refactoring: Improving the Design of Existing Code

Ken Pugh, Prefactoring

Scott Bain, Emergent Design: The Evolutionary Nature of Professional 

Software Development 

 _s

See http://www.netobjectives.com/resources/bibliography for a full bibliography

New Online Course

Page 86: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 86/89

87 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Everywhere (Internet)

 – Lean Software Development – TBD starting this summer

For more information, see www.netobjectives.com/courses

Net Objectives Services

Page 87: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 87/89

88 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Training in Sustainable Product Development

Net Objectives offers the most comprehensive

Lean-Agile training in the world. Our offerings

include Lean, Agile Analysis, Scrum, Design Patterns,

Test-Driven Development, and Lean-Agile Testing.

Our approach is a blend of principles and practices

to provide a complete team and/or enterprise wide

training solution.

Certification Programs by Net Objectives

Net Objectives offers certification programs that

provides a road-map of knowledge as well as

resources to get there.

• Scrum Certification

• Scrum Master Certification

• Product Owner Certification

Net Objectives is not affiliated with the Scrum Alliance

Assessment Services

An effective way to embark on an enterprise level

transition to Lean-Agile methods is to start with an

assessment of where you are, where you want to go

and options on how to get there that are right for

you and your budget.

Lean-Agile Coaching

While training provides foundational knowledge

and is a great jump start, coaching is another

effective way to increase the abilities of teams.

Our coaches work with your teams to provideguidance in both the direction your teams need to

go and in how to get there.

Coaching provides the knowledge transfer while

working on your own problem domain.

Best Practices Curriculum

Page 88: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 88/89

89 Copyright © 2008 Net Objectives. All Rights Reserved. 20 May 2009

Tester

Technical

Senior Management

IT Management

Business Management

Analyst

Process

Exec

Mgmt

IT Mgmt

Business

Mgmt

Analyst

Process

Lean Agile

Overview for

Leaders

Implementing

Scrum for

Your Team

OR

ImplementingAgile

Development

With VSTS for

Agile Teams

Agility for

Managers(if not taking

Implementing

Scrum for Your

Team course)

Lean Software

Development

For

Management

Scrum Master

Practitioner

Scrum Master

CertificationBy Net

ObjectivesLean Software

Development

Design Patterns

for Agile

Developers

Sustainable

Test-Driven

Development    E   m   e   r   g   e   n   t   D   e   s   i   g   n

Advanced

Software

Design

TDD Database Boot Camp

Business

Product

Owner

Advanced

Agile

Lean-Agile

Testing

Practices(if not taking

Implementing

Scrum for Your

Team course)

Effective

Object-

Oriented

Analysis and

Design(if needed)

Lean-Agile

Enterprise

Release

Planning

Tester

Acceptance

Test-Driven

Development

Developer

Technical Training: C++, C#, Java

Agile Planning

and

Estimating

with User

Stories

OR

Net Objectives Courses

Page 89: Creating a Model to Understand Product (and Software) Development

8/14/2019 Creating a Model to Understand Product (and Software) Development

http://slidepdf.com/reader/full/creating-a-model-to-understand-product-and-software-development 89/89

A Top 5 Course

A New Course

Lean Software Development

 – Lean Software Development for Management

 – Lean Software Development

 – Lean-Agile Software Development

Agile/Scrum

 – Implementing Scrum for Your Team

 – Implementing Scrum for Multiple Teams

 – Scrum Master Certification by Net Objectives

 – Lean-Agile Enterprise Release Planning

 – Agile Planning and Estimating with User Stories

 – Agile Life-Cycle Management with VersionOne – Product Owner Certification by Net Objectives

 – Implementing Agile Development with Microsoft™Visual Studio Team System™

Agile Software Development

 – Design Patterns Explained

 – Emergent Design: Effective Agile SoftwareDevelopment

 – Design Patterns for Agile Developers

 – Sustainable Test-Driven Development

 – Acceptance Test-Driven Development

 – TDD Database Boot Camp

 – Advanced Software Design

 – Lean-Agile Testing Practices

 –Test-Driven ASP.NET

 – Effective Object-Oriented Analysis and Design