© Mountain Goat Software, LLCMike CohnPresidentMountain Goat SoftwareLafayette, Coloradomike@mountaingoatsoftware.comTrans...
Founding member anddirector of Agile Alliance,Scrum Alliance, and AgileProject LeadershipNetworkFounder of MountainGoat So...
© Mountain Goat Software, LLCThe twelve things you must do1. Dispense with predictability2. Treat the transition as a proj...
© Mountain Goat Software, LLCHow we traditionally view our organizationsBehavior is highly predictableOnce set in motion, ...
© Mountain Goat Software, LLC“This machine imagery [Newtonian view]leads to the belief that studying the parts isthe key t...
© Mountain Goat Software, LLCIs it top down or bottom up?Two simplistic views of transitioning to agile:Top downPowerful l...
© Mountain Goat Software, LLCWhat we do on projectsOn projects we learn we cannot precisely anticipate:our users’ requirem...
© Mountain Goat Software, LLCTreat the transition as aproject2Establish an “Agile Transition Team” (“AgileAdoption Team,” ...
© Mountain Goat Software, LLCStocking the transition backlogBrainstorm needed activities within these broadcategories1. Es...
© Mountain Goat Software, LLCAn example transition backlogDecide how pervasive to go with Scrum—softwaredevelopment only o...
© Mountain Goat Software, LLCUse a congruent approach3Part of the move toagile is a move toself-organizing teamsMoving to ...
© Mountain Goat Software, LLCPre-requisites of self-organizationA boundary within which self-organization occursCompany, p...
© Mountain Goat Software, LLCUsing the CDE modelWhen stuck thinking about how to nudge theorganization think of the:Contai...
© Mountain Goat Software, LLCPick the right projectDurationSizeImportanceA businesssponsorPick this project414
© Mountain Goat Software, LLCSizeSomething that can be startedwith one teamScale up the team using theprinciples shown lat...
© Mountain Goat Software, LLCDurationPick a project with a mediumdurationProbably 2-4 monthsMedium for your organization w...
© Mountain Goat Software, LLCA business sponsorPick a project that has abusiness sponsor who willengage because:You’ll nee...
© Mountain Goat Software, LLCImportancePick an important projectbecause:People don’t change behaviorunless they need toIt ...
© Mountain Goat Software, LLC“Don’t start with an initial ‘learningproject’ that is of marginal importance.Start on a proj...
© Mountain Goat Software, LLCThe ideal projectHas an active, engaged business sponsorIs critical to your organizationWould...
© Mountain Goat Software, LLCGet the right people on (andoff) the projectBe aware that there are typically two teams5The p...
© Mountain Goat Software, LLCThe project teamThe project team shouldBe cross-functional / multi-disciplinaryInclude opinio...
© Mountain Goat Software, LLCThe transition teamResponsible for guiding a transition to agileSometimes this is implicitly ...
© Mountain Goat Software, LLCWho will gain or lose something by the transition toagile?Are there blocs likely to mobilize ...
© Mountain Goat Software, LLCWho should not be onthese teamsPeople with big egosDon’t understand their own limitationsSnak...
© Mountain Goat Software, LLCStart development with abeachhead team6Cannot start effectively if focus is spread toothinGiv...
© Mountain Goat Software, LLCTwo approaches to expandingStart with 1-3 teams and get them successfulSplit those teams up a...
© Mountain Goat Software, LLCOvercome resistance7Sell the problem, not the solutionNo one wants a solution to a problem th...
© Mountain Goat Software, LLCDisposition to Change ContinuumGenerally deliberate, disciplinedand organizedPrefer change th...
© Mountain Goat Software, LLCBalkanPeninsulaAppleComputerCompanieswith lots ofcontractorsMicrosoftin 1995Extent to which p...
© Mountain Goat Software, LLCPowerToolsCultureToolsManagementToolsLeadershipToolsExtent to which people agree on cause and...
© Mountain Goat Software, LLCPowerToolsCultureToolsManagementToolsLeadershipToolsExtent to which people agree on cause and...
© Mountain Goat Software, LLCHave a customer8To succeed you need a	CustomerProduct OwnerCustomer TeamWhatever you want to ...
© Mountain Goat Software, LLCCustomerInvolvementTimeCustomerInvolvementTimeAgile processes don’t require more customer inv...
© Mountain Goat Software, LLCEngage the change agents9Change agents...help others see problems and address themarticulate ...
© Mountain Goat Software, LLCIdentifying change agentsFind out who people listen toThese may not be people with formal aut...
© Mountain Goat Software, LLC10The three most important words in agile:Whole team gathers and discusses what they’dlike to...
© Mountain Goat Software, LLCA start, stop, continue listStartStopContinueShowing the software to customers earlySpecifyin...
© Mountain Goat Software, LLCDon’t try it all at once11Don’t try to do everything all at onceStart with the agile practice...
© Mountain Goat Software, LLCMy preferred sequenceRequirements as userstoriesFoundational skills(testing and OOD/P)Estimat...
© Mountain Goat Software, LLCFollow a guide12Follow the advice of someone who has beenthere, done thatAn employeeA contrac...
© Mountain Goat Software, LLCCommon sense?So try one-week iterations until you’ve masteredthat.Two weeks will then be a br...
© Mountain Goat Software, LLCThe role of consultants andemployees in change programsConsultant Involvement Employee Involv...
© Mountain Goat Software, LLCMike Cohn contact infomike@mountaingoatsoftware.comwww.mountaingoatsoftware.com(303) 810-2190...
Upcoming SlideShare
Loading in...5
×

Transitioning to Agile

349

Published on

Published in: Business, Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
349
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
40
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Transitioning to Agile

  1. 1. © Mountain Goat Software, LLCMike CohnPresidentMountain Goat SoftwareLafayette, Coloradomike@mountaingoatsoftware.comTransitioning to AgileA Guide to Good Practices in Context1
  2. 2. Founding member anddirector of Agile Alliance,Scrum Alliance, and AgileProject LeadershipNetworkFounder of MountainGoat SoftwareConsultant, author,and speakerMike Cohn - background© Mountain Goat Software, LLC2
  3. 3. © Mountain Goat Software, LLCThe twelve things you must do1. Dispense with predictability2. Treat the transition as a project3. Use a congruent approach4. Pick the right project5. Get the right people on (and off) the project6. Start development with a beachhead team7. Overcome resistance8. Have a customer9. Engage the change agents10.11.Don’t try it all at once12.Follow a guide3
  4. 4. © Mountain Goat Software, LLCHow we traditionally view our organizationsBehavior is highly predictableOnce set in motion, will continue in motionPredictableAn organization change strategy can bemapped out:And we’ll end up right where I predictDispense with predictability14
  5. 5. © Mountain Goat Software, LLC“This machine imagery [Newtonian view]leads to the belief that studying the parts isthe key to understanding the whole.Thingsare taken apart, dissected literally oris that the more we know about theworkings of each piece, the more we willlearn about the whole.”~Margaret Wheatleyin Leadership and the New Science5
  6. 6. © Mountain Goat Software, LLCIs it top down or bottom up?Two simplistic views of transitioning to agile:Top downPowerful leader shares a visionBottom-upnew approachBut, transitioning to agile is neither top-downnor bottom-upIt’s everywhere, all together, all-at-once6
  7. 7. © Mountain Goat Software, LLCWhat we do on projectsOn projects we learn we cannot precisely anticipate:our users’ requirementshow long it will take to develop a feature or entire systemwhich design will be bestthe set of tasks necessary to develop a featureSo we devise alternative approachesRather than ask for upfront specs, we deliver partialsolutions, solicit feedback, and repeatRather than design the whole system, we designincrementally and adjust based on what we learnWe need to do the same for the transition effort7
  8. 8. © Mountain Goat Software, LLCTreat the transition as aproject2Establish an “Agile Transition Team” (“AgileAdoption Team,” etc.)Who?Sponsor—senior person responsible for successArea managers or leads who can make it happenMeet weeklyRun monthly iterations managing work from aTransition Backlog8
  9. 9. © Mountain Goat Software, LLCStocking the transition backlogBrainstorm needed activities within these broadcategories1. Establish a sense of urgency2. Create a vision3. Communicate the vision4. Empower others to act5. Plan for, support and create short-term wins6. Consolidate improvements7. Inspect and adaptRef: John Kotter, Leading Change, 1996.9
  10. 10. © Mountain Goat Software, LLCAn example transition backlogDecide how pervasive to go with Scrum—softwaredevelopment only or full companyAllIdentify which issues Scrum can solve or help with. DFSet expectations that it will hurt. MCTCIdentify other groups/functions that will be affected. MC, DFIdentify needed organizational changes—reporting,reviews, compensation, career paths, etc.Determine how we’ll communicate progressAre there agile project management tools we shoulduse?10
  11. 11. © Mountain Goat Software, LLCUse a congruent approach3Part of the move toagile is a move toself-organizing teamsMoving to self-organization requiresself-organization“You will self-organize!”11
  12. 12. © Mountain Goat Software, LLCPre-requisites of self-organizationA boundary within which self-organization occursCompany, project, team, city, role, nationalityContainerThere must be differences among the “agents” actingin our systemTechnical knowledge, domain knowledge, education,experience, power, genderDifferencesTransforming ExchangesAgents in the system interact and exchange resourcesInformation, money, energy (vision)Glenda Eoyang: Conditions for Self-Organizing in Human Systems12
  13. 13. © Mountain Goat Software, LLCUsing the CDE modelWhen stuck thinking about how to nudge theorganization think of the:Containersformal teams, informal teams, clarify (or not)expectationsDifferencesDampen or amplify them within or between containersExchangesInsert new exchanges, new people, new techniques ortools13
  14. 14. © Mountain Goat Software, LLCPick the right projectDurationSizeImportanceA businesssponsorPick this project414
  15. 15. © Mountain Goat Software, LLCSizeSomething that can be startedwith one teamScale up the team using theprinciples shown laterProbably no more than 1-5 teamson initial projectProbably can’t scale any higherduring a medium length projectanyway15
  16. 16. © Mountain Goat Software, LLCDurationPick a project with a mediumdurationProbably 2-4 monthsMedium for your organization will bedifferent from mineDon’t want too shortWon’t prove as much“It only works on small projects”Don’t want too longWant to see value quickly16
  17. 17. © Mountain Goat Software, LLCA business sponsorPick a project that has abusiness sponsor who willengage because:You’ll need a business-side allychance of doing it againbusiness sponsor is to start withone willing to be involvedPick one who embraces agile17
  18. 18. © Mountain Goat Software, LLCImportancePick an important projectbecause:People don’t change behaviorunless they need toIt will be hard to stick with it unlessthe project is importantDon’t pick one that is too riskyBut if you pick a trivial projectthe results will be dismissedYou can startin the middleof a project18
  19. 19. © Mountain Goat Software, LLC“Don’t start with an initial ‘learningproject’ that is of marginal importance.Start on a project that is absolutely criticalto your company; otherwise it will be too[agile] will ask of you.”~Jim Highsmith in Adaptive SoftwareDevelopment Ecosysmtems19
  20. 20. © Mountain Goat Software, LLCThe ideal projectHas an active, engaged business sponsorIs critical to your organizationWould likely or possibly fail if done in thestatus quo mannerCan start with 1 teamWill grow to no more than 5 teamsLasts “a handful of months”20
  21. 21. © Mountain Goat Software, LLCGet the right people on (andoff) the projectBe aware that there are typically two teams5The project teamThe transition team21
  22. 22. © Mountain Goat Software, LLCThe project teamThe project team shouldBe cross-functional / multi-disciplinaryInclude opinion leadersBoth favorably disposed toward and opposed to agileInclude evangelistsInclude those who’ve done it before (elsewhere)Include a range of perspectives22
  23. 23. © Mountain Goat Software, LLCThe transition teamResponsible for guiding a transition to agileSometimes this is implicitly the same team as the projectteam“if you do well, we’ll all switch”Think aboutWho has the power to make or break the transition toagile?Who controls critical resources or expertise?How will each be affected?How will each react?23
  24. 24. © Mountain Goat Software, LLCWho will gain or lose something by the transition toagile?Are there blocs likely to mobilize against or insupport of the transition?teams’ opinions and results are taken seriously?Can team members put their personal interestsaside in favor of the organizational goal?Additional transition teamconsiderations24
  25. 25. © Mountain Goat Software, LLCWho should not be onthese teamsPeople with big egosDon’t understand their own limitationsSnakesSomeone who poisons relationships among teammembersReluctant participantsLack time or enthusiasmBut may have needed expertise or political clout25
  26. 26. © Mountain Goat Software, LLCStart development with abeachhead team6Cannot start effectively if focus is spread toothinGive them the early infrastructural tasksTheir goal is to build enough of and the rightparts of the system so that other teams can beadded26
  27. 27. © Mountain Goat Software, LLCTwo approaches to expandingStart with 1-3 teams and get them successfulSplit those teams up and use members toseed new teamsRepeatSplit and seed1Start with 1-3 teams and get them successfulKeep teams togetherSelect 1-2 coaches from those teamsUse them to advise new teamsAttend planning meetingAttend 2 daily scrums per weekSpend 4 hours with the team per sprintInternal coaching227
  28. 28. © Mountain Goat Software, LLCOvercome resistance7Sell the problem, not the solutionNo one wants a solution to a problem they don’t(think they) haveBe open to hearing better solutions than you haveCommunicate why the change and why nowPut team members in touch with customersLet them hear the problems you are hearing28
  29. 29. © Mountain Goat Software, LLCDisposition to Change ContinuumGenerally deliberate, disciplinedand organizedPrefer change that maintainscurrent structureEnjoy predictabilityMay appear cautiousFocus on details and routineConserversMay appear unorganized,undisciplined, unconventionalPrefer change that challengesthe current structureWill challenge assumptionsEnjoy risk and uncertaintyLittle regard for policiesOriginatorsPrefer changes that emphasizes workableoutcomesMore focused on results than structureOpen to both sides of an argumentOperate as mediatorsAppear more team orientedPragmatistsFrom: Harvard BusinessEssentials: ManagingChange andTransition29
  30. 30. © Mountain Goat Software, LLCBalkanPeninsulaAppleComputerCompanieswith lots ofcontractorsMicrosoftin 1995Extent to which people agree on cause and effectNo consensus Broad consensusExtenttowhichpeopleagreeonwhattheywantNoconsensusBroadconsensus“Tools of Cooperation and Change,” Christensen et al., Oct. 2006.30
  31. 31. © Mountain Goat Software, LLCPowerToolsCultureToolsManagementToolsLeadershipToolsExtent to which people agree on cause and effectNo consensus Broad consensusNoconsensusBroadconsensusExtenttowhichpeopleagreeonwhattheywant31
  32. 32. © Mountain Goat Software, LLCPowerToolsCultureToolsManagementToolsLeadershipToolsExtent to which people agree on cause and effectNo consensus Broad consensusNoconsensusBroadconsensusCharismaSalesmanshipRole modelingVisionNegotiationFiatCoercionThreatsFolkloreRitualTraditionReligionDemocracyApprenticeshipStrategic planningFinancialincentivesHiring &promotionTrainingStandardsMetricsprogramsExtenttowhichpeopleagreeonwhattheywant32
  33. 33. © Mountain Goat Software, LLCHave a customer8To succeed you need a CustomerProduct OwnerCustomer TeamWhatever you want to call it, you need oneDoesn’t have to “sit with the team”But set your targets around the level ofinvolvement you’ll get33
  34. 34. © Mountain Goat Software, LLCCustomerInvolvementTimeCustomerInvolvementTimeAgile processes don’t require more customer involvementthan a successful project with another processBUTthe involvement is spread throughout the project.Customer involvementTraditional Agile34
  35. 35. © Mountain Goat Software, LLCEngage the change agents9Change agents...help others see problems and address themarticulate the need for a changeare accepted as trustworthy and competentcan see and diagnose problemsmotivate people to changework through others to translate intent intoaction35
  36. 36. © Mountain Goat Software, LLCIdentifying change agentsFind out who people listen toThese may not be people with formal authorityLook for people who think differentlyConsider new employees or others who maynot be infected with a common mindset yetConsider people with different backgroundsThe programmer with the art history degree36
  37. 37. © Mountain Goat Software, LLC10The three most important words in agile:Whole team gathers and discusses what they’dlike to:Inspect and AdaptContinue doingStop doingStart doing37
  38. 38. © Mountain Goat Software, LLCA start, stop, continue listStartStopContinueShowing the software to customers earlySpecifying acceptance tests early and withcustomersDoing code inspectionsGetting FitNesse into the nightly buildsTrying to finish one story before moving to thenextBeing disrespectful of QAMaking progress with the canonical databaseEmphasizing test automation38
  39. 39. © Mountain Goat Software, LLCDon’t try it all at once11Don’t try to do everything all at onceStart with the agile practices that seem mostvaluable in your contextPut other practices on your Transition BacklogPrioritize them in as you goUse Start/Stop/Continue meetings as a guide39
  40. 40. © Mountain Goat Software, LLCMy preferred sequenceRequirements as userstoriesFoundational skills(testing and OOD/P)Estimate and createrelease planNightly or continuousbuild with tests40
  41. 41. © Mountain Goat Software, LLCFollow a guide12Follow the advice of someone who has beenthere, done thatAn employeeA contractorOutside mentor / coachTrainBetter design skills, unit testing and test automation,agile project management, estimating and planningCan save you from many mistakes41
  42. 42. © Mountain Goat Software, LLCCommon sense?So try one-week iterations until you’ve masteredthat.Two weeks will then be a breeze.“We’re having trouble deliveringSo use smaller cards.“There’s not enough room towrite requirements on cards.”So do it more often until you become so good atit that’s it not painful.“Integrating is painful.”42
  43. 43. © Mountain Goat Software, LLCThe role of consultants andemployees in change programsConsultant Involvement Employee InvolvementDiagnosis CapabilitiesAssessmentStrategyDevelopmentImplementationFrom: Harvard Business Essentials:Managing Change andTransition43
  44. 44. © Mountain Goat Software, LLCMike Cohn contact infomike@mountaingoatsoftware.comwww.mountaingoatsoftware.com(303) 810-2190 (mobile)44
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×