Agile planning and estimating / Zwinne planowanie i estymacja projektów

Agile planning and estimating / Zwinne planowanie i estymacja projektów

Abstract in Polish:

Czy zdarzyło ci się nie trafić z wyceną projektu nawet kilkukrotnie? Czy twój klient nieustannie zmienia zdanie i wymyśla nowe funkcjonalności? A może twój zespół regularnie "nie dowozi"?

Zapewne na niektóre powyższe pytania odpowiesz twierdząco. W prezentacji postaram się pokazać w jaki sposób można uniknąć takich sytuacji. Bazując na własnym doświadczeniu opiszę najczęstsze błędy już podczas wstępnej estymacji, które mogą być przyczyną przyszłych problemów. Opowiem też w jaki sposób planować pracę nad projektami przy ciągle zmieniających się wymaganiach i otoczeniu, aby klient i zespół wzajemnie się szanowali oraz ich współpraca była bardziej efektywna.

92be3745c5f182e94ccf9974b147f15e?s=128

Przemek Lewandowski

October 18, 2014
Tweet

Transcript

  1. PyCon PL 2014 Zwinne planowanie i estymacja projektów Przemek Lewandowski!

    @haxoza
  2. About me

  3. What is Planning? https://www.flickr.com/photos/stargardener/4610115463/

  4. Planning ❖ Estimating! ❖ Prioritizing! ❖ Scheduling

  5. Planning benefits

  6. Planning creates a Plan

  7. Plan is a base of decision making

  8. Planning benefits ❖ Estimating! ❖ Prioritizing! ❖ Scheduling cost and

    time! value! resources and deadlines
  9. Planning benefits ❖ Reducing risk! ❖ Reducing uncertainty! ❖ Supporting

    better decision making! ❖ Establishing trust! ❖ Conveying information
  10. Why Planning fails

  11. Why Planning fails < Put any stats here >

  12. Fail reasons ❖ Ignored uncertainty! ❖ Changing scope! ❖ Features

    are not developed by priority! ❖ Planning is by activity rather than feature! ❖ Multitasking
  13. Plans become invalid

  14. Estimates become commitments

  15. – Parkinson’s law “Work expands! so as to fill the

    time available! for its completion”
  16. Focus more on the planning than on the plan

  17. Planning is on-going activity

  18. https://www.flickr.com/photos/photohannah/512202109/ Assumptions

  19. Scrum workflow ❖ Iterations! ❖ Product owner role! ❖ Backlog

  20. Project type ❖ Consulting! ❖ Time & material! ❖ Fixed

    priced (discourage changes)! ❖ In-house
  21. Agile Planning https://www.flickr.com/photos/vfsdigitaldesign/5396094193/

  22. Identify conditions of satisfaction

  23. Planning activities ❖ Maintaining backlog (Grooming / Refinement)! ❖ Prioritizing!

    ❖ Disaggregating! ❖ Planning of each iteration
  24. Backlog items ❖ User stories! ❖ Job stories! ❖ Tasks!

    ❖ Issues
  25. User story As an administrator,! I want to be notified

    about new customers,! so I can start a conversation with them
  26. User story As a/an …, I want to …, so

    that … Role Goal Benefit
  27. Job story When a new customer signs up,! I want

    to be notified,! so I can start a conversation with them
  28. Job story When …, I want to …, so I

    can… Situation Motivation Expected! Outcome
  29. Issues Tasks 6=

  30. “Tell me how much time you need to make it

    faster?!”
  31. None
  32. Maintaining backlog ❖ Updating backlog items! ❖ Adding / Removing

    / Breaking down! ❖ (Re-)Prioritizing! ❖ (Re-)Estimating
  33. Maintaining backlog ❖ When?! ❖ Before iteration planning! ❖ After

    software demo! ❖ Separate sessions (team / stakeholders)
  34. Iteration planning

  35. Input ❖ Prepared backlog! ❖ Fixed start date and duration!

    ❖ Identified team members
  36. Iteration planning ❖ All team members! ❖ Product owner! ❖

    Time boxed! ❖ Use checklists (our template have 25 items)
  37. Output ❖ Goal! ❖ Selected scope from backlog! ❖ Defined

    user stories & tasks! ❖ Confirmed estimates! ❖ Acceptance tests
  38. Estimating https://www.flickr.com/photos/onegoodbumblebee/ 2922744060/

  39. Estimates ❖ Initial estimates (best guess)! ❖ Quotes! ❖ New

    features! ❖ On-going estimates
  40. Estimating ❖ Duration! ❖ Cost! ❖ Resources needed

  41. Estimates size ❖ Story points! ❖ Ideal time! ❖ Hours!

    ❖ Days
  42. Story points ❖ Relative values! ❖ Express:! ❖ Complexity! ❖

    Risk! ❖ Uncertainty
  43. Ideal time ❖ Differs from elapsed time! ❖ No interruptions!

    ❖ Could be treated as story points
  44. Story points math ❖ Velocity! ! ❖ Focus factor

  45. Velocity ❖ Story points completed in a sprint! ! ❖

    Project duration! Velocity = X Story points Number of sprints = P Backlog story points Velocity
  46. Velocity ❖ Helps to estimate project duration! ❖ Helps to

    pick a scope for next iteration! ❖ Most of team assigned full time
  47. Focus factor ❖ Story points completed in a given time!

    ! ❖ Project duration! Focus factor = P Story points P Hours spent Hours = P Backlog story points Focus factor
  48. Focus factor ❖ Needs time tracking! ❖ Helps manage team

    changes between sprints! ❖ Used similar as velocity
  49. Estimation techniques ❖ Story points scale! ❖ Analogy! ❖ Disaggregation!

    ❖ Expert opinion! ❖ Planning poker
  50. Story points scale ❖ Fibonacci sequence! ! ! 1, 2,

    3, 5, 8, 13, …! ❖ Power of two! ! ! 1, 2, 4, 8, …! ❖ T-shirts! ! ! XS, S, M, L, XL, …
  51. Planning poker ❖ All team members take part! ❖ Combines

    all estimation techniques! ❖ Simultaneous estimates! ❖ Great communication channel
  52. Accuracy vs. Effort

  53. None
  54. Summary ❖ Identify and remove obstacles! ❖ Say “No”! ❖

    Use checklists! ❖ Be consequent
  55. Resources ❖ Agile Estimating and Planning, Mike Cohn 2005! ❖

    https://medium.com/the-job-to-be-done/replacing- the-user-story-with-the-job-story-af7cdee10c27
  56. Questions?

  57. Thanks! Follow me on Twitter for more! @haxoza