1 / 25

Iterative Planning

Iterative Planning. http://flic.kr/p/ pVmSx. What are you going to learn about today?. Agile planning practices Simple estimation technique Simple practice for tracking progress. http://flic.kr/p/8JpkTg. Recall: Iterative development process. We are here.

brandonc
Download Presentation

Iterative Planning

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Iterative Planning http://flic.kr/p/pVmSx

  2. What are you goingto learn about today? • Agile planning practices • Simple estimation technique • Simple practice for tracking progress http://flic.kr/p/8JpkTg

  3. Recall: Iterative development process We are here Note that planning and requirements don’tnecessarily happen one right after the other http://en.wikipedia.org/wiki/File:Iterative_development_model_V2.jpg

  4. For those following along in the book… Larman doesn’t really cover practical planning,so I’m going to draw from some other sources http://flic.kr/p/anWc2v

  5. OK. So you have some UCs,What’s next?For an answer, read the excerpt“Weekly Cycle” from Beck (2005). http://flic.kr/p/9ksxQa

  6. OK. So you have some UCs,What’s next? In a nutshell:Estimate how much work each UC will be andchoose some to build in the next iteration http://flic.kr/p/9ksxQa

  7. Agile estimation practice: Planning poker Let’s watch this video to find outwhat planning poker is all about: http://youtu.be/0FbnCWWg_NY But first, a quick word about…

  8. The nebulous unit of work • A unit is defined in terms of how much work you can get done in the next iteration • To start with, typically defined as something like 1/20th of what the team can accomplish • This is after taking into account the fact that programming might occur in pairs • So an 8-person team might have 4 pairs, each of which might be able to get 5 units done • Some team members might be able to do more units than others

  9. OK. Now let’s watch the video: http://youtu.be/0FbnCWWg_NY

  10. Recap: Estimation with planning poker • Based on the “wisdom of the crowd” • Idea: More opinions produce better accuracy • Cards with units of work: 1, 3, 5, 8, 13, 20, 40 • Assume that 20 units is what the whole team can do in a single iteration • Rules: For each UC… • Discuss work involved • Flip cards • Repeat until consensus • Efficiency in estimating is important • Don’t expect your estimates to be super accurate

  11. Why do estimation as a card game? http://flic.kr/p/9ksxQa

  12. Why do estimation as a card game? Everyone’s opinion is important.Having everyone flip cards at the same timeassures that everyone’s opinion is on the table. http://flic.kr/p/9ksxQa

  13. How do you use these rough estimates? http://flic.kr/p/9ksxQa

  14. How do you use these rough estimates? • Provide client an idea of the cost of implementing each UC • He/she already knows the value • Then, the client can prioritize • Based on the prioritization, you break the UCs into tasks and assign the work • May involve more detailed estimates on a few UCs/tasks http://flic.kr/p/9ksxQa

  15. Why is efficiency in planning poker important? http://flic.kr/p/9ksxQa

  16. Why is efficiency in planning poker important? • Even with the wisdom of the crowd, your estimates still won’t be super precise • No sense wasting a lot of time on estimation http://flic.kr/p/9ksxQa

  17. Some additional estimation principles • Engineers give honest estimates that customers can trust. • Engineers refine estimates; customers refine expectations. • It is expected that you will work at a sustainable pace. • No heroes, no all-nighters, no super-human feats • Either you get the code done like a human being, or you don’t

  18. Activity for next class(?):Planning poker • Get together with your teammates • Pool and sort your UCs so you have a complete set • Play planning poker for each UC • At the end, we’ll compare outcomes and consider some questions http://flic.kr/p/5dfuqL

  19. Another agile practice: Informative workspace Read the handout (Beck 2005), andwe will discuss(esp. what we can do in this course)

  20. Popular practice: Kanban board http://flic.kr/p/7NQz4b

  21. Here’s another example… http://flic.kr/p/7xD6wF

  22. And another… http://flic.kr/p/4Q8hdr

  23. How do you think we should approximate aninformative workspace in this course? http://flic.kr/p/7NQz4b http://flic.kr/p/9ksxQa http://flic.kr/p/4Q8hdr

  24. Activity for next Wednesday:Planning an iteration • I will prioritize your UCs • See how many of the UCs your team can do in an iteration, favoring higher priority UCs over lower • For each UC that your team will do, break it into subtasks • Assign each subtask to a person and give a time estimate in hours • Use informal visual/spatial layout tricks to capture dependencies http://flic.kr/p/5dfuqL

  25. Summary • Estimation with planning poker • Informative workspaces • Progress tracking with Kanban boards http://flic.kr/p/YSY3X

More Related