Agile and the Seven DeadlySins of Project ManagementApril 19, 2011Mike Cohn1
® © 2008–2011 Mountain Goat Software®Mike Cohn - background•Founding member and directorof Agile Alliance and ScrumAllianc...
® © 2008–2011 Mountain Goat Software®A cornucopia of agile processesExtreme Programming (XP)ScrumCrystalDSDMLean software ...
© 2008–2011 Mountain Goat Software®®A closer look at ScrumBut many Scrum teams are adopting much of XP2- to 4-week iterati...
® © 2008–2011 Mountain Goat Software®The Scrum project communityProgrammer ProgrammerDBAProgrammerTesterTesterUser Experie...
® © 2008–2011 Mountain Goat Software®ScrumCancelGift wrapReturnSprint2-4 weeksReturnSprint goalSprintbacklogPotentially sh...
® © 2008–2011 Mountain Goat Software®Seven Sins of Project ManagementGluttony1Lust2Sloth3Opaqueness4Pride5Wastefulness6Myo...
© 2008–2011 Mountain Goat Software®®Sin #1: GluttonyFixing all dimensions (scope,schedule, resources, and quality)of a pro...
© 2008–2011 Mountain Goat Software®®Timeboxes help avoid gluttonyBut the number of iterations is variableFocus is always o...
© 2008–2011 Mountain Goat Software®®Timeboxed iterations increasepredictabilityOver time a team learns how much it cancomp...
© 2008–2011 Mountain Goat Software®®What expectation of futurevelocity should this team set?Feature A 5Feature B 3Feature ...
© 2008–2011 Mountain Goat Software®®Sin #2: LustIntense or unrestrained craving for featuresExperienced asTrying to put to...
® © 2008–2011 Mountain Goat Software®Three ways agile deals withlustIncremental2Developing features inpriority order113
® © 2008–2011 Mountain Goat Software®~Kent Beck“Overtime is a symptom of a serious problem onthe project.The XP rule is si...
® © 2008–2011 Mountain Goat Software®NormalVelocityIterationsVelocity OvertimeVelocity15
© 2008–2011 Mountain Goat Software®®Sin #3: SlothFailing to do high qualitywork at all timesExperienced asTesting quality ...
® © 2008–2011 Mountain Goat Software®Agile practices related to qualityContinuous integrationSimple designAutomated testin...
® © 2008–2011 Mountain Goat Software®Case Study 1Cosmodemonic BiotechWaterfall ScrumUse Case pagesUser StoriesCalendar mon...
® © 2008–2011 Mountain Goat Software®Productivity (NCSS / month)270US average389Three years priorto introducing agile1206F...
® © 2008–2011 Mountain Goat Software®ePSDefects per KNCSS10Three years priorto introducing agile2.9First nine monthsafter ...
© 2008–2011 Mountain Goat Software®®Sin #4: OpaquenessObscuring the progress,quality or other attribute ofa projectExperie...
© 2008–2011 Mountain Goat Software®®Three types of opaquenessContinuous integrationFeatures are either “Done” or “Not Done...
® © 2008–2011 Mountain Goat Software®How agile addresses Schedule opaqueness2StoryPointsIterations40030020010001 2 3 4 523
© 2008–2011 Mountain Goat Software®®0102030401 2 3 4 5 6 7 8 9Iterationsinterval(28–37 here)How agile addresses Scope opaq...
© 2008–2011 Mountain Goat Software®®predict what will be delivered(5×33)We’ll almost certainly get here (5×28)This is the ...
© 2008–2011 Mountain Goat Software®®Sin #5: PrideBelieving that we know everything to build the productExperienced asA lac...
® © 2008–2011 Mountain Goat Software®Sprint2-4 weeksReturnSprint goalSprintbacklogPotentially shippableproduct incrementPr...
® © 2008–2011 Mountain Goat Software®Agile requirements“User stories” facilitate workingclosely with users & customersAs a...
© 2008–2011 Mountain Goat Software®®Sin #6:WastefulnessMisuse of critical resourcesExperienced asLosses of creativity,moti...
® © 2008–2011 Mountain Goat Software®How agile handles waste1Daily standups2Iteration retrospectives3Self-organizing teams...
® © 2008–2011 Mountain Goat Software®MonthsIntensityWaterfallScrumSpreading intensity evenly531
® © 2008–2011 Mountain Goat Software®Salesforce.comImprovement in mean time torelease for major releases+61%Increase in fe...
© 2008–2011 Mountain Goat Software®®Sin #7: Myopia (Shortsightedness)Not seeing beyond your ownworkExperienced asTeams who...
® © 2008–2011 Mountain Goat Software®Seeing the forest and thetrees at the same timeRelease PlanSprint 1 Sprint 2 Sprint 3...
© 2008–2011 Mountain Goat Software®®Cross-functional teamAll disciplines necessary to go from idea toimplementationImprove...
® © 2008–2011 Mountain Goat Software®Is everyone a generalist?36
® © 2008–2011 Mountain Goat Software®Is everyone a generalist?Screw that;where’slunch?37
® © 2008–2011 Mountain Goat Software®Is everyone a generalist?Ferentino’sBruno’sScrew that;where’slunch?Meconi’sOrder-take...
® © 2008–2011 Mountain Goat Software®Additional resourcesScrum Informationwww.MountainGoatSoftware.com/scrumwww.MountainGo...
® © 2008–2011 Mountain Goat Software®Mike Cohnmike@mountaingoatsoftware.comwww.mountaingoatsoftware.comtwitter: mikewcohn(...
Upcoming SlideShare
Loading in …5
×

Agile and the Seven Sins of Project Management

1,264 views

Published on

Published in: Business, Technology

Agile and the Seven Sins of Project Management

  1. 1. Agile and the Seven DeadlySins of Project ManagementApril 19, 2011Mike Cohn1
  2. 2. ® © 2008–2011 Mountain Goat Software®Mike Cohn - background•Founding member and directorof Agile Alliance and ScrumAlliance•Founder of Mountain GoatSoftware•Ran my first Scrum projectin 1995•Former VPE in fourcompaniesAgile coachand trainer2
  3. 3. ® © 2008–2011 Mountain Goat Software®A cornucopia of agile processesExtreme Programming (XP)ScrumCrystalDSDMLean software developmentUnbranded “agile”Agile ProcessesFeature-Driven Development(FDD)OpenUPSemi-Agile Processes3
  4. 4. © 2008–2011 Mountain Goat Software®®A closer look at ScrumBut many Scrum teams are adopting much of XP2- to 4-week iterations called “sprints”Self-organizing, cross-functional teamsUses generative rules to create an agileenvironment4
  5. 5. ® © 2008–2011 Mountain Goat Software®The Scrum project communityProgrammer ProgrammerDBAProgrammerTesterTesterUser ExperienceDesignerAnalystto build andin what orderTheteamScrumMasterProductOwnerProcess coachand Sheepdogfor the team5
  6. 6. ® © 2008–2011 Mountain Goat Software®ScrumCancelGift wrapReturnSprint2-4 weeksReturnSprint goalSprintbacklogPotentially shippableproduct incrementProductbacklogCouponsGift wrapCouponsCancel24 hours6
  7. 7. ® © 2008–2011 Mountain Goat Software®Seven Sins of Project ManagementGluttony1Lust2Sloth3Opaqueness4Pride5Wastefulness6Myopia77
  8. 8. © 2008–2011 Mountain Goat Software®®Sin #1: GluttonyFixing all dimensions (scope,schedule, resources, and quality)of a projectA project management sin ofexcessExperienced asImpossible schedulesDeath marchesLeads toTrying to do too much for theresources (time, people) availableCutting quality to meet othergoals8
  9. 9. © 2008–2011 Mountain Goat Software®®Timeboxes help avoid gluttonyBut the number of iterations is variableFocus is always on “what can we accomplishnext?”9
  10. 10. © 2008–2011 Mountain Goat Software®®Timeboxed iterations increasepredictabilityOver time a team learns how much it cancomplete per iteration (its “velocity”)0102030401 2 3 4 5 6 7 8 9IterationsVelocityKnowing thisprevents thetemptation toovercommit10
  11. 11. © 2008–2011 Mountain Goat Software®®What expectation of futurevelocity should this team set?Feature A 5Feature B 3Feature C 5Feature F 3Feature D 5Feature E 5Feature G 3Feature I 3Feature H 5Feature J 2Feature K 5Feature L 3Feature A 5Feature B 3Feature C 5Feature F 3Feature D 5Feature E 5Feature G 3Feature I 3Feature H 5Feature J 2Feature K 5Feature L 3✓✓✓11
  12. 12. © 2008–2011 Mountain Goat Software®®Sin #2: LustIntense or unrestrained craving for featuresExperienced asTrying to put too many features into a product duringthe time allowedTreating all featuresas “critical”Leads toOvertime, reducedquality, surprises12
  13. 13. ® © 2008–2011 Mountain Goat Software®Three ways agile deals withlustIncremental2Developing features inpriority order113
  14. 14. ® © 2008–2011 Mountain Goat Software®~Kent Beck“Overtime is a symptom of a serious problem onthe project.The XP rule is simple–you can’t work aand put in some extra hours. If you come in onMonday and say ‘To meet our goals, we’ll have towork late again,’ then you already have a problemthat can’t be solved by working more hours.”314
  15. 15. ® © 2008–2011 Mountain Goat Software®NormalVelocityIterationsVelocity OvertimeVelocity15
  16. 16. © 2008–2011 Mountain Goat Software®®Sin #3: SlothFailing to do high qualitywork at all timesExperienced asTesting quality in at the endInstability duringdevelopmentLeads toBig delaysUnpredictable schedules16
  17. 17. ® © 2008–2011 Mountain Goat Software®Agile practices related to qualityContinuous integrationSimple designAutomated testingTest-driven developmentRefactoringPair programming17
  18. 18. ® © 2008–2011 Mountain Goat Software®Case Study 1Cosmodemonic BiotechWaterfall ScrumUse Case pagesUser StoriesCalendar monthsPerson monthsLines of Java codeLines of Java codeper person-month3,0001,4009 12540 5458,000 51,000120 84018
  19. 19. ® © 2008–2011 Mountain Goat Software®Productivity (NCSS / month)270US average389Three years priorto introducing agile1206First nine monthsafter starting agileNCSS=Non-Comment Source Statment (Java)Case Study 2ePS19
  20. 20. ® © 2008–2011 Mountain Goat Software®ePSDefects per KNCSS10Three years priorto introducing agile2.9First nine monthsafter starting agileResults achieved without any targeted rewrite of existing(buggy) codeMany of the post-agile defects continued to be in the oldcodeTrue results would be even better (if we had measured them)But wait, there’s more...20
  21. 21. © 2008–2011 Mountain Goat Software®®Sin #4: OpaquenessObscuring the progress,quality or other attribute ofa projectExperienced asNot knowing the true stateof the projectLeads toSurprisesPoor decisions21
  22. 22. © 2008–2011 Mountain Goat Software®®Three types of opaquenessContinuous integrationFeatures are either “Done” or “Not Done”Avoids the 90% SyndromeHow agile addresses Quality opaqueness122
  23. 23. ® © 2008–2011 Mountain Goat Software®How agile addresses Schedule opaqueness2StoryPointsIterations40030020010001 2 3 4 523
  24. 24. © 2008–2011 Mountain Goat Software®®0102030401 2 3 4 5 6 7 8 9Iterationsinterval(28–37 here)How agile addresses Scope opaqueness3Velocity24
  25. 25. © 2008–2011 Mountain Goat Software®®predict what will be delivered(5×33)We’ll almost certainly get here (5×28)This is the most we can realistically expect(5×37)Assume:There are fivesprints left.25
  26. 26. © 2008–2011 Mountain Goat Software®®Sin #5: PrideBelieving that we know everything to build the productExperienced asA lack of stakeholder and user involvementLeads toFailure tosolicit feedbackFailure to learn26
  27. 27. ® © 2008–2011 Mountain Goat Software®Sprint2-4 weeksReturnSprint goalSprintbacklogPotentially shippableproduct incrementProductbacklogGift wrapCouponsCancel24 hoursWhere are opportunities forfeedback?27
  28. 28. ® © 2008–2011 Mountain Goat Software®Agile requirements“User stories” facilitate workingclosely with users & customersAs a user, I want toreserve a hotel room. As a vacation traveler, Iwant to see photos of thehotels so that I canchoose the best one forme. As a user, I want the site tobe available 99.999% of thetime I try to access it.28
  29. 29. © 2008–2011 Mountain Goat Software®®Sin #6:WastefulnessMisuse of critical resourcesExperienced asLosses of creativity,motivation, and timeLeads toProject malaiseDelaysDoing it the same way(again)29
  30. 30. ® © 2008–2011 Mountain Goat Software®How agile handles waste1Daily standups2Iteration retrospectives3Self-organizing teams430
  31. 31. ® © 2008–2011 Mountain Goat Software®MonthsIntensityWaterfallScrumSpreading intensity evenly531
  32. 32. ® © 2008–2011 Mountain Goat Software®Salesforce.comImprovement in mean time torelease for major releases+61%Increase in features delivered inmajor releases+94%Increase in features delivered perdeveloper+38%Increase in major releasecumulative value+568%Source: Scrum Gathering,April 16, 200832
  33. 33. © 2008–2011 Mountain Goat Software®®Sin #7: Myopia (Shortsightedness)Not seeing beyond your ownworkExperienced asTeams who don’t see the bigpictureIndividuals who work onlywithin their rolesLeads toUnsuccessful productsDelays33
  34. 34. ® © 2008–2011 Mountain Goat Software®Seeing the forest and thetrees at the same timeRelease PlanSprint 1 Sprint 2 Sprint 3 Sprints 4–78 hoursTask A16 hoursTask B5 hoursTask C8 hoursTask DIterationPlan34
  35. 35. © 2008–2011 Mountain Goat Software®®Cross-functional teamAll disciplines necessary to go from idea toimplementationImproves creativity and ownershipWhole teamcommitmentBut doesthat makeeveryone ageneralist?35
  36. 36. ® © 2008–2011 Mountain Goat Software®Is everyone a generalist?36
  37. 37. ® © 2008–2011 Mountain Goat Software®Is everyone a generalist?Screw that;where’slunch?37
  38. 38. ® © 2008–2011 Mountain Goat Software®Is everyone a generalist?Ferentino’sBruno’sScrew that;where’slunch?Meconi’sOrder-takerKeyFloaterSandwich-maker38
  39. 39. ® © 2008–2011 Mountain Goat Software®Additional resourcesScrum Informationwww.MountainGoatSoftware.com/scrumwww.MountainGoatSoftware.com/presentationswww.ScrumAlliance.orgTrainingwww.MountainGoatSoftware.com/trainingBooksAgile Software Development with Scrum, Ken SchwaberSucceeding with Agile, Mike Cohn39
  40. 40. ® © 2008–2011 Mountain Goat Software®Mike Cohnmike@mountaingoatsoftware.comwww.mountaingoatsoftware.comtwitter: mikewcohn(888) 61−AGILE40

×