Why iterative software project management matters


Published on

Published in: Technology, Business
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Why iterative software project management matters

  1. 1. Why Iterative SoftwareProject Management Matters Hermano Moura hermano@umd.edu Friday, October 8, 2010 e-Construction Group, UMD, College Park, USA
  2. 2. objectiveintroduction of iterative software development projects, showing how project managers can organize and manage such projects.
  3. 3. agenda• software & software development projects• software life cycle models• iterative model for software development• unified framework to software project management – RUP• iterative nature of agile methodologies
  4. 4. software
  5. 5. What is aSOFTWARE PROJECT?
  7. 7. 7
  8. 8. The Software Project• According to Walker Royce, the best feature- related software is also the worst: its flexibility (Royce 1998).• The feature that allows the software to become "almost anything" makes it difficult to plan, monitor and control software development (d´Anunciação 2009).• The management of software projects, in turn, has unique characteristics due to the peculiarity of the resulting product of these projects.
  9. 9. software process x softwaremanagement process
  10. 10. Project Management Models
  11. 11. The Software Production Process• the software production process on two aspects: – the technical (or engineering of the product) and – the management (software project management).• Like the technical aspect, software management has received much attention in the development of new approaches, methods, techniques and education of people. – Software Engineering textbooks with better and increasing content on software project management. – Processes – such as RUP and Scrum – bring explicitly support to management aspects.
  12. 12. How to developsoftware?
  13. 13. Software Disciplines• Requirements• Analysis & Design• Implementation (Programming/Coding)• Test• Deployment• ...
  14. 14. Software Management Disciplines• Project Management• Configuration and Change Management• ...
  15. 15. Software Development Life Cycle Models• Brute force, code and fix, nike-way• Waterfall• Spiral• Iterative 15
  16. 16. Waterfall Model
  17. 17. Waterfall development delays risk mitigation100% integration starts (% coding)project progress coding original time deadlineSource: Software Project Management, Walker Royce 17
  18. 18. Bohem´s Spiral Model
  19. 19. Iterative Model• Iterative application of the waterfall model• Initial iterations treat the biggest risks Req Req Req A&D A&D A&D Imp Imp Imp T T T Dep Dep Dep Iteration 1 Iteration 2 Iteration 3 time 19
  20. 20. Iterative development anticipates risk mitigation100% Iterative life cycle (% codnig) project progress codnig Waterfall llfe cycle original time deadlineSource: Software Project Management, Walker Royce 20
  21. 21. Internet Banking System• Functionalities: – F1: User Login – F2: Change Password – F3: Display Balance – F4: Display Statement – F5: Display Credit Card Statement – F6: Pay Credit Carde Bill – F7: Make Transfer – F8: Make Transfer to other Bank – F9: Display Check Statement – F10: Order Checkbook – F11: Unblock Checkbook
  22. 22. Internet Banking System :: UML Use Case Diagram Desbloquear taloes de Efetuar Login cheque Alterar senha Solicitar taloes de cheque Consultar saldo Cliente Consultar cheques Consultar extrato Realizar DOC Consultar Qualiti Card Realizar transferencia Efetuar pagamento do Qualiti Card Operadora do DOC Operadora cartao de crédito 22
  23. 23. RUPRational Unified Process
  24. 24. RUP Main Characteristics• Iterative and incremental• Guided by use cases• Based on the system’s architecture• Object oriented 24
  25. 25. RUP PhasesInception Elaboration Construction TransitionScope and Elimination of Product Deployment to project critical risks development user viability and stable ready for beta environment architecture testing 25
  26. 26. Phases and milestones >>> Phases indicate system maturity! >>> Inception Elaboration Construction Transitionmilestones scope architecture operation release time 26
  27. 27. Phases & Iterations
  28. 28. Project Management Activities Execute Identify Iteration Plan Risks Project Develop Develop Assess Finalize Manager Project Plan Iteration Plan Iteration Project Reassess Risks Prioritize Software Use Architect Cases Source: Qualiti Software Processes. 29
  29. 29. Iterationplanning and risks
  30. 30. Risks and use cases (functionalities)• Use case (functionality) development is used to eliminate risks.• A risk matrix facilitates the visualization of the relationships between use cases (functionalities) and risks. 32
  31. 31. Risk Matrix UC 1 UC 2 UC 3 UC 4Risk XRisk YRisk Z 33
  32. 32. Risks and IterationsRisk List Iteration Planning & Execution Risk Elimination 34
  33. 33. Moura’s Cylinder for Software Projects F2 F2 Fn F1 F2 F1 Fn F3 F1 F3 F6 Requirements Analysis & Design Implementation Test© UFPE, Hermano Perrelli de Moura
  34. 34. iterative nature ofagile methodologies
  35. 35. Do not plan, build!
  36. 36. Source: targetprocess.com
  37. 37. Releases and Iterations in XP Release 3 Release 2 functionalities Release 1 iteration time
  38. 38. Iterations in Scrum
  40. 40. Iterative Software Development• Testing and integration are performed from the beginning, in a continuous manner• Critical risks are resolved before major investments are made• Allows user feedback at early stages• Small goals, focus on short-term• More concrete progress measurement• Partial implementations can be deployed• Used in predictive and adaptive software methodologies
  41. 41. References• d´Anunciação, Gustavo. Análise e extensão do Rational Unified Process com relação à ênfase na criação de valor. Dissertação de Mestrado, Universidade Federal de Pernambuco, Centro de Informática, 2009.• Highsmith, Jim. Agile project management: creating innovative products. Addison-Wesley. 2009.• Kruchten, Phillipe. The Rational Unified Process: An Introduction. Addison-Wesley. 2003.• Royce, Walker. Software Project Management: A Unified Framework. Addison-Wesley. 1998.
  42. 42. Why Iterative Software Project Management Matters Hermano Moura hermano@cin.ufpe.br hermano@umd.edu Friday, October 8, 2010 e-Construction Group, UMD, College Park, USA