Successfully reported this slideshow.
Your SlideShare is downloading. ×

Better Plan TYPO3 Projects with Agile Estimating

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Loading in …3
×

Check these out next

1 of 36 Ad

Better Plan TYPO3 Projects with Agile Estimating

Absolute estimating of programming tasks proves to be challenging in (too) many cases. When development takes longer than foreseen, any or several of the following areas are impacted: quality, finances, resource planning and client satisfaction. Studies reveal that 2 out of 3 software development projects are unsuccessful because they are over budget, late, missing function or a combination – in short: estimating fails frequently enough.

Agile Estimating is a methodology for project managers to better plan their projects in advance and to keep their planning up-to-date and accurate throughout the development process. Estimates of tasks are done on a relative basis using an independent unit instead of hours or days. As the team progresses on its tasks, indicators such as the actual business situation, the constitution of the team, the learning progress of the team members and the feedback of the client are tracked. These indicators are fed back into an updated planning allowing for more accurate forecasts and giving a better basis for decision making.

As the TYPO3 community is transitioning into greater possibilities and chances to establish itself increasingly in the enterprise CMS sector (keyword: TYPO3 Phoenix), new technical complexities will have to be faced and overcome. New business requirements and better interoperability with other systems is going to put high demands on project teams. Strong project management capabilities need to be acquired alongside the technological advancements within the community and with the different services providers to sustain the reputation of TYPO3 services as enterprise solutions.

Absolute estimating of programming tasks proves to be challenging in (too) many cases. When development takes longer than foreseen, any or several of the following areas are impacted: quality, finances, resource planning and client satisfaction. Studies reveal that 2 out of 3 software development projects are unsuccessful because they are over budget, late, missing function or a combination – in short: estimating fails frequently enough.

Agile Estimating is a methodology for project managers to better plan their projects in advance and to keep their planning up-to-date and accurate throughout the development process. Estimates of tasks are done on a relative basis using an independent unit instead of hours or days. As the team progresses on its tasks, indicators such as the actual business situation, the constitution of the team, the learning progress of the team members and the feedback of the client are tracked. These indicators are fed back into an updated planning allowing for more accurate forecasts and giving a better basis for decision making.

As the TYPO3 community is transitioning into greater possibilities and chances to establish itself increasingly in the enterprise CMS sector (keyword: TYPO3 Phoenix), new technical complexities will have to be faced and overcome. New business requirements and better interoperability with other systems is going to put high demands on project teams. Strong project management capabilities need to be acquired alongside the technological advancements within the community and with the different services providers to sustain the reputation of TYPO3 services as enterprise solutions.

Advertisement
Advertisement

More Related Content

Recently uploaded (20)

Advertisement

Better Plan TYPO3 Projects with Agile Estimating

  1. 1. Better Plan your TYPO3 Projects with Agile Estimating Violeng Mam violeng@web-essentials.asia Dominik Stankowski dominik@web-essentials.asia
  2. 2. Dominik Stankowski ● Software Engineer ● TYPO3 certified Integrator ● Online media expert, has worked for the Swiss news portal www.swissinfo.ch ● Owner and CEO of Web Essentials ● 4 years outsourcing experience in Cambodia
  3. 3. Violeng Mam ● BA in Computer Sciences ● TYPO3 certified Integrator ● Project Manager and Team leader Project Managers Team ● Senior Manager at Web Essentials ● 3 years experience working with international clients
  4. 4. Agenda  Problems with Estimates  Agile Estimating  Relative Estimates  Velocity  Our Experience with AE  Summary
  5. 5. Why Plan? ● Keep due dates and budget ● Manage resources ● Build trust with clients ● Reduce risks and last minute surprises ● Create a basis for decision making → Control the outcome/future of a project
  6. 6. Problems with Estimations ● It's hard to know exactly how long a task will take ● People are not very good at giving accurate estimates ● Sometimes we get interrupted, it takes longer than thought ● Sometimes we find unexpected problems ● People get sick, take holidays... ● Planning by hour or day gives wrong incentive ● Activities are interdependent
  7. 7. Activity: Country Sizes South-East Asia Source: wolframalpha.com
  8. 8. Activity: Country Sizes Cambodia Source: wolframalpha.com
  9. 9. Activity: Country Sizes Cambodia Laos Source: wolframalpha.com
  10. 10. Activity: Country Sizes Cambodia Laos Thailand Source: wolframalpha.com
  11. 11. Activity: Country Sizes Cambodia Laos Thailand Vietnam Source: wolframalpha.com
  12. 12. Activity: Country Sizes Cambodia Laos Thailand Vietnam Myanmar Source: wolframalpha.com
  13. 13. Activity: Country Sizes Cambodia: 181,035 km2 Laos: 236,800 km2 Thailand: 513,120 km2 Vietnam: 329,560 km2 Myanmar: 676,578 km2 Source: wolframalpha.com
  14. 14. Activity: Country Sizes Cambodia: 181,035 km2 Laos: 236,800 km2 Thailand: 513,120 km2 Vietnam: 329,560 km2 Myanmar: 676,578 km2 Germany: 357,022 km2 Switzerland: 41,277 km2 Source: wolframalpha.com
  15. 15. Activity: Country Sizes Cambodia: 1 country pt. Laos: ? Thailand: ? Vietnam: ? Myanmar: ? Source: wolframalpha.com
  16. 16. Activity: Country Sizes Cambodia: 1 country pt. Laos: 1 cpt. Thailand: 3 cpts. Vietnam: 2 cpts. Myanmar: 4 cpts. Germany: 2 cpts. Switzerland: ¼ cpts. Source: wolframalpha.com
  17. 17. Activity: Country Sizes It is easier to compare in country points than in actual sizes. → Relative Estimations
  18. 18. Relative Estimations It does not matter what unit we use to measure the size: ● Country Points ● Ideal days ● Bananas... It is important that the estimates are consistent: Same sizes get same number of points
  19. 19. Relative Estimations
  20. 20. Relative Estimations
  21. 21. Relative Estimations Building estimates on facts: If an activity takes longer the chances are high that a similar activity takes longer, too. → Velocity will define the time needed
  22. 22. Velocity ● Velocity is the number of 'country points' or 'ideal days' we can do in a set time (e.g. a week) ● Things like interruptions, meetings, infrastructure failures will lower our velocity ● As long as our estimate of a task is consistent with our estimate for the other tasks, we can use velocity to tell us when we will be finished
  23. 23. Example Project Image Contest ● Users can upload images ● Users can view uploaded images and rate ● The Winners are displayed and notified
  24. 24. Example Project Picture Detail Concept, Generate (Lightbox) Data Model Extension & TCA Picture Gallery Load more when scrolling down Vote & Comment Functionality Highscore Send Email Image Functionality Upload
  25. 25. Velocity Simplified: All 9 tasks are the same size Assume: After 1 week, 3 tasks finished (simplified) Velocity = 3 tasks / 5 days = 0.6 tasks / day
  26. 26. Velocity When will we finish? ● Remaining: 6 tasks So we can complete (simplified): 6 tasks / 0.6 tasks/day = 9 days* *if we continue with the same velocity, but: Velocity will get more reliable if tracked over longer period
  27. 27. Example Project Picture Detail Techn. Concept, Generate (Lightbox) Data Model Extension & TCA Picture Gallery 1 ½ View 1 2 Load more when scrolling down Vote & Comment Functionality Highscore Send Email 1 Image 2 Upload 1 Functionality 2 2
  28. 28. Velocity Total number of points: 12.5 Assume: ● 3.5 points finished ● 3 days elapsed (simplified) Velocity = 3.5 points / 3 days = 1.2 points / day
  29. 29. Velocity When will we finish? ● Remaining: 9 points So we can complete (simplified): 9 points / 1.2 points/day = 7.5 days → 8 days Proposition: It is better to track the points we can complete/week than the remaining days.
  30. 30. Increase accuracy ● Involve the whole team in estimating ● Use non-linear sequences for points such as e.g. Fibonacci: 0, (½), 1, 1, 2, 3, 5, 8, 13, 21, … ● Man-days instead of elapsed time for velocity calculation ● Clearly define what means a task is complete ● Verify velocity on a regular basis ● Re-estimate stories if needed (but only if the relative size is wrong – absolute errors will be corrected by velocity)
  31. 31. Our Experience Planned and actual completion and scope 180 160 140 120 100 Total Planned Capacity Total Scope Points 80 Total Dev Complete 60 40 20 0 0 1 2 3 4 5 5 5 6 7 8 9 10 11 12 13 14 15 16 16 17 Iteration
  32. 32. How to decrease 'time to finish' Monitor effects on velocity regularly and make necessary changes: ● Less interruptions and less multi-tasking (velocity +) ● Give team members more time on project (man days +) ● Add skilled developer to the team (velocity +, man days +) ● Reduce scope of features or project (points -)
  33. 33. Summary Estimating is a continuous process as we understand more about how we perform → agile = flexible, well coordinated, quick to move
  34. 34. Summary Agile Estimating will make your planning more accurate because: ● The whole team is involved ● Estimates of size and duration are separated ● Estimates and plans are based on facts ● Learning and adjusting is fostered → Accurate estimates allow for better decision making
  35. 35. Further Reading Agile Estimating and Planning by Mike Cohn
  36. 36. Thank You! dominik@web-essentials.asia violeng@web-essentials.asia

×