63
1 Discipline vs. Agility Report by Jason Cradit

1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

Embed Size (px)

Citation preview

Page 1: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

1

Discipline vs. Agility

Report by Jason Cradit

Page 2: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

2

For Review• What are we talking about and who cares?• What is discipline?• What is agility?• What are the misconceptions?• Contrasts and home grounds• Five critical factors• Risk-based method• Projects from my past• Closing remarks

Page 3: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

3

What Are We Talking About?Agile? Discipline? Perplexity?

• Project management • Getting things done

− How− Good practices

• Perplexity on:− Each have multiple definitions − Distinguishing from use and misuse− Overgeneralization based on most visible

Page 4: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

4

Who Cares?Barry Boehm

• B.A. Harvard 1957• M.S. UCLA 1961• Ph.D. UCLA 1964

Richard Turner• B.A. Huntingdon 1975• M.S. U of Southwestern Louisiana 1977• D.Sc. George Washington University 2002

You – Future KU Graduates

Page 5: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

5

For Review• What are we talking about and who cares?• What is discipline?• What is agility?• What are the misconceptions?• Contrasts and home grounds• Five critical factors• Risk-Based method• Projects from my past• Closing remarks

Page 6: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

6

Where Did Discipline Come From?Government

• DoD guidance documents− MIL-STD-1521− DoD-STD-2167− MIL-STD-498

Large commercial companies• Internal standards of use

− IBM− Hitachi− Siemens

Page 7: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

7

What is Disciplined?

Adjectives:• Predictive• Process• Plan-driven• Documentation• Systematic

Methods:• Software capability maturity mode• IEEE • Cleanroom

Page 8: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

8

What is Disciplined?

Plan-Driven Concepts:• Process improvement• Process capability• Organizational maturity• Process group• Risk management• Verification• Validation• Software system architecture

Improve Process

MeasureProcess

ControlProcess

DefineProcess

Perform Process

Page 9: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

9

Quality in Discipline

Specification and process compliance• Requirements/design/build• Gage success of how we met the plan

− Estimated Cost− Estimated Time− Estimated Scope

Page 10: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

10

For Review• What are we talking about and who cares?• What is discipline?• What is agility?• What are the misconceptions?• Contrasts and home grounds• Five critical factors• Risk-based method• Projects from my past• Closing remarks

Page 11: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

11

Where Did Agile Come From?• Outgrowth of rapid prototyping

• Programming more of a craft than a process− Dehumanization of plan-driven processes

• Problem:− After a long development cycle the product doesn’t

meet expectations

• Chaordic = chaos + order

Page 12: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

12

What is Agile?

Read the Manifesto:

We have come to valueIndividuals and interactions over process and toolsWorking software over comprehensive documentationCustomer collaboration over following a planThat is, while there is value in the items on the right,

wevalue the items on the left more.

Page 13: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

13

What is Agile?

Adjectives:• Iterations• Test-driven• Customer collaboration

Methods:• eXtreme Programming (XP)• Adaptive Software Development• Feature Driven Development

Every 24hours

Page 14: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

14

What is Agile?

Agile Concepts:• Embrace change• Fast cycle/frequent delivery• Simple design• Refactoring• Pair programming• Retrospective• Test-driven development

Page 15: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

15

Quality in Agile

Customer satisfaction• Is the product fit for use?• Is the product fit for purpose?• Is the customer happy with the product?

Page 16: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

16

Sounds Great, Why Not Use It?• Agile has trouble scaling

− Size of project− Size of group

• Cost can go up with group size• Plan-driven has trouble trimming

− Heavy documentation− Late cycle delivery

• No silver bullet

Page 17: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

17

What Are The Key Differences?• Plan-Driven value process over people• Agile values people over process• Document, Document, Document – chants the

disciplined• Waterfall vs. Cups-of-water

Page 18: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

18

For Review• What are we talking about and who cares?• What is discipline?• What is agility?• What are the misconceptions?• Contrasts and home grounds• Five critical factors• Risk-based method• Projects from my past• Closing remarks

Page 19: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

19

What are the misconceptions?

Plan-Driven Methods Agile

Plan-driven methods are uniformly bureaucratic

Agile methods don’t plan

Having documented plans guarantees compliance with plans

Agile methods require uniformly talented people

Plan-driven methods can succeed with a lack of talented people

YAGNI is a universally safe assumption, and won’t alienate your customers

• Silver bullet – that you have to pick one

Page 20: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

20

Do What Makes Sense!

CMM for Software like the dictionary• Use the words that make the desired point• Don’t use all the words

Tool box• An organization should have the repository of

“plug-compatible” process assets

Philippe Kruchten from Rational

Page 21: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

21

For Review• What are we talking about and who cares?• What is discipline?• What is agility?• What are the misconceptions?• Contrasts and home grounds• Five critical factors• Risk-based method• Projects from my past• Closing remarks

Page 22: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

22

Contrasts and Home Grounds

Home grounds depend on characteristics• Application characteristics• Management characteristics• Technical characteristics• Personnel characteristics

Page 23: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

23

Application CharacteristicsContrasts and Home GroundsPrimary goals

• Rapid value and responsiveness to change• Plan-driven goals are predictability, stability, and high

assurance

Size• Agile works best on smaller projects• Plan-driven is a necessity on large complex projects

Environment• Agile approaches are comfortable in high-change

environments with some risks• Plan-driven methods need stability

Page 24: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

24

Management CharacteristicsContrasts and Home GroundsCustomer relations

• Agile encourages a dedicated collocated customer• Plan-driven methods depend on contracts and specifications• Agile methods use working software to build trust• Plan-driven methods use established process maturity

Planning and control• Agilists see planning as a means to an end• Plan-driven methods use plans to communicate and

coordinate• Agile is “planning driven,” rather than “plan-driven”

Project communication• Agile methods depend on tacit knowledge• Plan-driven approaches use explicit, documented

knowledge

Page 25: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

25

Technical CharacteristicsContrasts and Home GroundsRequirements

• Agile uses informal, user-prioritized stories as requirements

• Plan-driven methods prefer specific, formalized requirements

Development• Agile advocates simple design• Plan-driven methods advocate architecture to anticipate

changes

Testing• Agile methods develop tests before code, and test

incrementally• Plan-driven methods test to specifications

Page 26: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

26

Personnel CharacteristicsContrasts and Home GroundsCustomers

• Both methods need CRACK performers – Collaborative, Representative, Authorized, Committed, and Knowledgeable

• Plan-driven does not require them full-time

Developers• Agile developers need more than technical skills• Plan-driven methods need fewer highly talented people

than agile

Culture• Agilists like many degrees of freedom• Plan-driven people need clear process and roles

Page 27: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

27

For Review• What are we talking about and who cares?• What is discipline?• What is agility?• What are the misconceptions?• Contrasts and home grounds• Five critical factors• Risk-based method• Projects from my past• Closing remarks

Page 28: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

28

Five Critical Factors

Factors to measure:• Personnel• Size• Dynamism• Criticality• Culture

Page 29: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

29

Five Critical FactorsPersonnel – Based on Cockburn scale

• Agile− Requires continuous presence of critical mass of scarce Cockburn

Level 2 or 3 experts. Risky to use non-agile Level 1B people.

• Plan-Driven− Needs a critical mass of scarce Cockburn level 2 and level 3

experts during project definition, but can work with fewer later in the project – unless the environment is highly dynamic. Can usually accommodate some Level 1B people.

- Range: (% level 1B / % level 2-3, Agile to Plan-driven)• 0%1B / 35% Level 2 and 3• 10%1B / 30% Level 2 and 3• 20%1B / 25% Level 2 and 3• 30%1B / 20% Level 2 and 3• 40%1B / 15% Level 2 and 3

Page 30: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

30

Cockburn Scale

Levels of Software Method Understanding and Use

Level Characteristics

3 Able to revise in unprecedented situation

2 Able to tailor a method to fit new situation

1A With training can perform discretionary steps, can train to level 2

1B With training can perform basic procedural steps

-1 May have technical skills but unable or unwilling to collaborate

Page 31: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

31

Five Critical FactorsSize

• Agile− Well matched to small products and teams

• Plan-Driven− Methods evolved to handle large products and teams –

hard to tailor down

- Range: (Number of personnel)• 3• 10• 30• 100• 300

Page 32: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

32

Five Critical FactorsDynamism

• Agile− Simple design and continuous refactoring are excellent for highly

dynamic environments, but a source of potentially expensive rework for highly stable environments.

• Plan-Driven− Detailed plans and Big Design Up Front excellent for highly stable

environments, but a source of expensive rework for highly dynamic environments.

- Range: (% Requirements-changing / month)• 50• 30• 10• 5• 1

Page 33: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

33

Five Critical FactorsCriticality

• Agile− Untested on safety-critical products− Potential difficulties with simple design and lack of

documentation• Plan-Driven

− Methods evolved to handle highly critical products− Hard to tailor down to low-criticality products

- Range: (Loss due to impact of defects)• Comfort• Discretionary Funds• Essential Funds• Single Life• Many Lives

Page 34: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

34

Five Critical FactorsCulture

• Agile− Thrives in a culture where people feel comfortable and

empowered by having many degrees of freedom.• Plan-Driven

− Thrives in a culture where people feel comfortable and empowered by having their roles defined by clear policies and procedures.

- Range: (% Thriving on chaos vs. order)• 90• 70• 50• 30• 10

Page 35: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

35

Walking the Line – When to Use What

Page 36: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

36

For Review• What are we talking about and who cares?• What is discipline?• What is agility?• What are the misconceptions?• Contrasts and home grounds• Five critical factors• Risk-based method• Projects from my past• Closing remarks

Page 37: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

37

Risk-Based Method

A Tailorable Method for Balancing Agile and Plan-Driven Methods

Step1: Rate the projects environmental, agile and plan-driven risks. If uncertain about ratings, buy information via prototyping, data collection, and analysis.

Step 2a: If agility risks dominate plan-driven risks, go risk-based plan-driven.

Step 2b: If plan-driven risks dominate agility risks, go risk-based agile.

Step 3: If parts of the application satisfy 2a and others 2b, architect the application to encapsulate the agile parts. Go risk-based agile in the agile parts and risk-based plan-driven elsewhere.

Step 4: Establish an overall project strategy by integrating individual risk mitigation plans.

Step 5: Monitor progress and risks/opportunities, re-adjust balance and process as appropriate.

Use to determine balance between methods

Page 38: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

38

Risk-Based MethodStep1.Risk Analysis

Rate risks

Uncertain about rating

Buy info

Step 3. Architecture Analysis

Architect application to encapsulate agile parts

Step 2. Risk Comparison

Comparerisks

Step 5.Execute and Monitor

Deliver according to strategy

Monitor and readjust as appropriate

Step4.Tailor Life Cycle

Go risk-basedagile

Go risk-basedplan-driven

Tailor process

Blend methods

Page 39: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

39

Risk-Based Method

Categories of risk• Environmental

− Risks that results from the project’s general environment

• Agile − Risks that are specific to the use of agile methods

• Plan-driven− Risks that are specific to the use of plan-driven

methods

Page 40: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

40

Risk-Based Method

Environmental risks:• Risks that result from the projects general

environment− E-Tech - Technology uncertainties− E-Coord - Many diverse stakeholders to coordinate− E-Cmplx – Complex system of systems

Page 41: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

41

Risk-Based Method

Agile risks• Risks that are specific to the use of agile

methods− A-Scale – Scalability and criticality− A-YANGI – Use of simple design or YANGI− A-Churn – Personnel turnover or churn− A-Skill – Not enough people skilled in agile methods

Page 42: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

42

Risk-Based Method

Plan-driven risks• Risks that are specific to the use of plan-driven

methods− P-Change – Rapid change− P-Speed – Need for rapid results− P-Emerge – Emergent requirements− P-Skill – Not enough people skilled in plan-driven

methods

Page 43: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

43

SupplyChain.comTurnkey supply chain management systems formanufactures

• Team size: 50• Team type: Distributed; often multi-organization• Failure risks: Major business losses• Clients: Multiple success-critical stakeholders• Requirements: Some parts relatively stable, others

volatile, emergent• Architecture: Mostly provided by small number of COTS

package• Refactoring: More expensive, with mix of people skills• Primary objective: Rapid value increase, dependability,

adaptability

Page 44: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

44

SupplyChain.comStep 1 - Rate the project risks

• Environmental− E-Tech – Uncertainties with agent-based system− E-Coord – Multiple suppliers and distributors

• Agile risks− A-Scale – 50 person development team− A-YAGNI – Many stable components− A-Churn – Stable workforce

• Plan-Driven risks− P-Change – Changing markets, technology and

organizations− P-Speed – High speed competition− P-Emerge – Requirements due to change

Page 45: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

45

SupplyChain.com

Page 46: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

46

SupplyChain.comStep 2 - Compare Agile and Plan-Driven Risks

• Agile methods less risky– Scalability – 50 person development team– Criticality – Loss due to defects, medium

• Plan-driven risks not deal breakers– Rapid-change– Emerging requirements

Use a blended approach based in agile methods!

No need for Step 3

Page 47: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

47

SupplyChain.comStep 4a – Individual Risk Resolution Strategies

• Environmental− Technical risks

• Prototype and benchmark agent technologies− Coordination risks

• Add CRACK representatives

Page 48: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

48

SupplyChain.comStep 4a – Individual Risk Resolution Strategies

• Agile risks− A-Scale – break development teams into smaller teams

• YANGI risks− Encapsulation – hide-information technique

• Churn risks− Pair-programming and successful completion bonus

• Plan-driven risks− Mitigated based on using more agile techniques

Page 49: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

49

SupplyChain.comStep 4b – System development

• Three participant groups− Operational stakeholders

– Representatives from each operation» Manufacturing» Supplier» Distributor

– CRACK performers

− Risk\opportunity management team– Project managers – Senior members– See something – do something about it

− Agile teams– Developers doing the work

Page 50: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

50

SupplyChain.comStep 4b - Three-phase development

• Inception− Build team− Build vision

• Elaboration− Establish overall operational concept− Establish key COTS− Define first increment

• Implementation increments− Agile teams develop successive increments− Develop\test

Page 51: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

51

For Review• What are we talking about and who cares?• What is Discipline?• What is Agility?• What are the misconceptions?• Contrasts and Home Grounds• Five critical factors• Risk-Based method• Projects from my past• Closing remarks

Page 52: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

52

Projects from my past

PM1 to PM2• Access forms with Access DB to Web with SQL

− Forms for revenue – project status – CRM− ISO 9000 system

• Mythical agility failed− No documentation− Poor communication− No checks

Page 53: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

53

Projects from my past

MJHarden.com• Build new web presence for MJ Harden

− Flash intro – new content – new navigation− No function, just market

• Successful plan-driven project− Document requirements− Froze requirements− Developed− Tested - functions and design(marketing)− Bug-fix− Change management− Deploy

Page 54: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

54

For Review• What are we talking about and who cares?• What is Discipline?• What is Agility?• What are the misconceptions?• Contrasts and Home Grounds• Five critical factors• Risk-Based method• Projects from my past• Conclusions

Page 55: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

55

Conclusions

No silver bullet• Plan-driven has issues

− Late value recognition− Documentation heavy

• Agility has issues− Scaling up – ineffective in large projects− Requires skilled personnel

Page 56: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

56

Conclusions

Remember the home grounds• Personnel – Skilled workers• Criticality – Loss due to defects• Size – Number of personnel• Culture - % Thriving on chaos vs. order• Dynamism - % Requirements - change/month

Page 57: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

57

Conclusions

Future projects will need both Agility andDiscipline

• Past shows no intermingling between home grounds

• Future shows more combination of methods− There will always be huge projects and small projects− Large projects will require large rate of change− Small projects are scaling up

Page 58: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

58

Conclusions

Balanced methods are emerging• Risk based method only one way

− Crystal Orange− DSDM− FDD− Lean Development

Page 59: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

59

Conclusions

Build your Method up• Start with minimal agile techniques• Build as required

Don’t tailor it down• Starting with full plan-driven requires high

experienced personnel• Tailoring waists resources and time

Page 60: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

60

Conclusions

Focus less on methods • More on people• Values• Communication• Expectations management

Good people and teams trump any other factors

Page 61: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

61

Conclusions

Page 62: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

62

Questions?

Page 63: 1 Discipline vs. Agility Report by Jason Cradit. 2 For Review What are we talking about and who cares? What is discipline? What is agility? What are the

63

Bibliography• Boehm, Barry, and Richard Turner, and . Balancing Agility and Discipline: A

Guide for the Perplexed. Addison-Wesley Professional, 2003.