0
Agile Dependency Management      November 2nd 2011
About	  the	  Speaker	                    !   Principal	  Consultant	  at	  ThoughtWorks,	  Inc	                    !   13...
Blockers – Argh!!
Goals For Today  !   Awareness of potential gotchas related to dependencies  !   Maybe relieve some frustrations  !   Walk...
One of Our Favorite Agile Acronyms      Independent     Basically,	  NO	  dependencies	        Negotiable      Valuable   ...
First Speedbump!       Card as a placeholder for conversation!       1st day of 1st iteration - textbook IPM is conducted!...
Requirements Preparation !   Goal: Have stories ready for development on the first day of the     iteration     •  One ite...
UI Visioning !   Some feature sets need to be envisioned     as a group !   Could require numerous iterations !   Could in...
UI Visioning !   Goal: Refine vision well ahead of iteration planning   Rolling	  Release	  Planning	      Workshop	      ...
Really Rolling
UI Comps!   Developers don’t always have the skill or    patience to create the final look and feel!   UI team may need to...
UI Comps!   Goal: Have stories ready for development on the first day of the    iteration  Rolling	  Release	  Planning	  ...
Dependencies Gone Wild!   The more dependencies you have, the more planning nonsense you    will have to put up with
Impact on Planning
Velocity Impacts !   The more dependencies you have, the more developer overhead you     will have, and the less velocity ...
Velocity Impacts              Story	  2	  (8)                              	                                         Story...
Inter-Story Dependency PlanningTotal	  Story	  Points	  /	  Raw	  Velocity	  Per	  Itera5on	  =	  Rough	  Number	  of	  It...
External Dependencies
Best Case – Both Teams Agile!       Align iteration/release schedules!       Cross-team planning!       “Scrum of Scrums” ...
Cross-Team Dependencies!   Goal: Have dependencies ready by the time we want our team to    work on stories  Rolling	  Rel...
Is Separation Necessary?          Java             C++        C++India
Combine the Teams
Other Team is Not Agile                    !  Beg them to change!                    !  Force the issue
Potential to Change Behavior  Program  Project     OurTeam      Team 2                               3rd Party   Product  ...
Agile/Waterfall MismatchWATERFALL PREDICTIVE PLANNING        Req & planning                                       Design  ...
What Can You Do?WATERFALL PREDICTIVE PLANNING    Req &    planning                                                        ...
Not Negotiable !   Frequent communication     •  Participation in planning meetings     •  Participation in retrospectives...
Stealth Method !       Mocks or stub out interfaces, real integration later !       “Preview” or “Alpha” versions !       ...
Is The Dependency Worth It? !   Does the benefit of using the interface outweigh the cost of doing     it yourself (ex: ac...
Face It, Some Stuff is Waterfall-ish  !       Hardware  !       Network  !       Training  !       User documentation
Tracking Dependencies   !       Predecessors on cards   !       Blocked stickers on cards, or blocked status on card in tr...
Why Independence is Important  !       Dependencies limit flexibility in planning  !       Dependencies cause overhead  ! ...
Work Towards These Goals !   Have stories ready for development on the first day of the iteration !   Refine vision well a...
Questions?joez@thoughtworks.com
Agile Dependency Management
Upcoming SlideShare
Loading in...5
×

Agile Dependency Management

3,040

Published on

Joe Z - Agile East 2011

Published in: Technology, Business
1 Comment
3 Likes
Statistics
Notes
No Downloads
Views
Total Views
3,040
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
49
Comments
1
Likes
3
Embeds 0
No embeds

No notes for slide

Transcript of "Agile Dependency Management"

  1. 1. Agile Dependency Management November 2nd 2011
  2. 2. About  the  Speaker   !   Principal  Consultant  at  ThoughtWorks,  Inc   !   13+  years  at  ThoughtWorks   !   10  years  at  GE  Capital   !   Developer  -­‐>  Project  Manager,  Delivery  Assurance,   Program  Manager,  Coach,  Entertainer,  etc,  etc   !   Leasing,  banking,  medical,  insurance,  hotel,  etc    
  3. 3. Blockers – Argh!!
  4. 4. Goals For Today !   Awareness of potential gotchas related to dependencies !   Maybe relieve some frustrations !   Walk away with some practical advice
  5. 5. One of Our Favorite Agile Acronyms Independent Basically,  NO  dependencies   Negotiable Valuable Estimatable Small Testable
  6. 6. First Speedbump!   Card as a placeholder for conversation!   1st day of 1st iteration - textbook IPM is conducted!   Developers want to commit to stories!   Requirements not fully thought out!   Result? •  Development delayed •  Product owner becomes a bottleneck •  Efficiency is diminished •  Velocity impeded
  7. 7. Requirements Preparation !   Goal: Have stories ready for development on the first day of the iteration •  One iteration ahead planning •  Product Owners have a full iteration to prepare stories Planning  MeeNng   Analysis  for  IteraNon  n   IteraNon  Kickoff   IteraNon  Kickoff   Dev Iteration n - 1 Dev Iteration n Itera&on  Zero  
  8. 8. UI Visioning !   Some feature sets need to be envisioned as a group !   Could require numerous iterations !   Could involve collecting external feedback
  9. 9. UI Visioning !   Goal: Refine vision well ahead of iteration planning Rolling  Release  Planning   Workshop   Estimation Planning  MeeNng   Analysis  for  IteraNon  n   IteraNon  Kickoff   Dev Iteration n
  10. 10. Really Rolling
  11. 11. UI Comps!   Developers don’t always have the skill or patience to create the final look and feel!   UI team may need to create the “comp” prior to development
  12. 12. UI Comps!   Goal: Have stories ready for development on the first day of the iteration Rolling  Release  Planning   Workshop   Estimation Planning  MeeNng   Analysis  for  IteraNon  n   IteraNon  Kickoff   UI  Comps   Dev Iteration n
  13. 13. Dependencies Gone Wild!   The more dependencies you have, the more planning nonsense you will have to put up with
  14. 14. Impact on Planning
  15. 15. Velocity Impacts !   The more dependencies you have, the more developer overhead you will have, and the less velocity Workshop   Estimation Planning  MeeNng   Analysis  for  IteraNon  n   IteraNon  Kickoff   UI  Comps   Dev Iteration n
  16. 16. Velocity Impacts Story  2  (8)   Story  3  (3)   Story  4  (3)   Story  3  (3)   Story  2  (8)   Story  4  (3)   Story  5  (8)   3 11 ?
  17. 17. Inter-Story Dependency PlanningTotal  Story  Points  /  Raw  Velocity  Per  Itera5on  =  Rough  Number  of  IteraNons?   Story  1   Story  2   Story  3   Story  4   Story  5  
  18. 18. External Dependencies
  19. 19. Best Case – Both Teams Agile!   Align iteration/release schedules!   Cross-team planning!   “Scrum of Scrums” to keep on top of issues (or standup visitors)!   Shared codebase?!   Cross-team retrospectives (or partial attendance)!   Shared tech huddles
  20. 20. Cross-Team Dependencies!   Goal: Have dependencies ready by the time we want our team to work on stories Rolling  Release  Planning   Cross–Planning   IteraNon  Planning   Other  Dev  IteraNon n   Analysis  for  IteraNon     IteraNon  Kickoff   Dev Iteration n
  21. 21. Is Separation Necessary? Java C++ C++India
  22. 22. Combine the Teams
  23. 23. Other Team is Not Agile !  Beg them to change! !  Force the issue
  24. 24. Potential to Change Behavior Program Project OurTeam Team 2 3rd Party Product Partner Vendor Team 3
  25. 25. Agile/Waterfall MismatchWATERFALL PREDICTIVE PLANNING Req & planning Design Code Integrate UAT Deploy TimelineADAPTIVE PLANNING Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration
  26. 26. What Can You Do?WATERFALL PREDICTIVE PLANNING Req & planning Req & Design planning Code Design Integrate Code UAT Integrate Deploy UAT Deploy TimelineADAPTIVE PLANNING Estimates Iteration Iteration Velocity Iteration Iteration Iteration Testing Iteration Iteration IterationAnalysis Development
  27. 27. Not Negotiable !   Frequent communication •  Participation in planning meetings •  Participation in retrospectives •  Illustrate the blockers/pain to management •  Standups? Probably not likely Manage the risks associated with lack of communication
  28. 28. Stealth Method !   Mocks or stub out interfaces, real integration later !   “Preview” or “Alpha” versions !   Absorb into team !   In-Team Pilot !   Separate code branch Chip away at the resistance
  29. 29. Is The Dependency Worth It? !   Does the benefit of using the interface outweigh the cost of doing it yourself (ex: accessing the data)? !   Does the separation of teams justify the overhead?
  30. 30. Face It, Some Stuff is Waterfall-ish !   Hardware !   Network !   Training !   User documentation
  31. 31. Tracking Dependencies !   Predecessors on cards !   Blocked stickers on cards, or blocked status on card in tracking tool !   Expose in planning meetings, standups !   Visibility in metrics !   Plan level visibility
  32. 32. Why Independence is Important !   Dependencies limit flexibility in planning !   Dependencies cause overhead !   Dependencies may ultimately increase your cost !   Dependencies can mess up your velocity !   Dependencies can mess up your plan !   Dependencies can cause rework !   Dependencies can make you want to quit software development
  33. 33. Work Towards These Goals !   Have stories ready for development on the first day of the iteration !   Refine vision well ahead of iteration planning !   Have dependencies ready by the time we want our team to work on stories !   Revisit your release plan frequently !   Be ever vigilant of things which will block progress
  34. 34. Questions?joez@thoughtworks.com
  1. A particular slide catching your eye?

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

×