Planning Phase Part II - Project Phases and Lifecycle Planning

2,169 views

Published on

The sixth lesson of the course on Planning and Managing Software projects (http://emanueledellavalle.org/Teaching/PMSP-2011-12.html) that I give at Politecnico di Milano.

Published in: Education, Technology, Business
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,169
On SlideShare
0
From Embeds
0
Number of Embeds
300
Actions
Shares
0
Downloads
73
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Planning Phase Part II - Project Phases and Lifecycle Planning

  1. 1. Planning and Managing Software Projects 2011-12Class 6Planning PhaseMatching Life Cycles to Project and Project PlansEmanuele Della Vallehttp://emanueledellavalle.org
  2. 2. Credits 2§  This slides are largely based on Prof. John Musser class notes on Principles of Software Project Management§  Original slides are available at http://www.projectreference.com/§  Reuse and republish permission was granted Planning and Managing Software Projects – Emanuele Della Valle
  3. 3. Last Class, Today and Next Classes 3§  Last Class •  Phases in Detail –  Step-by-step of typical software project •  Lifecycles§  Today •  Matching Life Cycles to Project •  Project plans§  Next Weeks: •  Lots of Project-ish Details: WBS, PERT, CPM, Scheduling & Estimation Planning and Managing Software Projects – Emanuele Della Valle
  4. 4. Class 5 Review 4§  Phases in Detail •  Know your pure waterfall, 7 phase model •  Understand the steps in each phase •  Know typical deliverables of each •  Know the primary issues and goals of each§  Lifecycles •  Know a representative sample •  Waterfall and variation, 1-2 iterative ones •  Learn a bit about XP and other Agile methods Planning and Managing Software Projects – Emanuele Della Valle
  5. 5. Class 5 review - DetailsLifecycle Planning 5§  a.k.a. Lifecycle Management or Systems Development Life Cycle (SDLC )§  Greatly influences your chance of success§  Not choosing a lifecycle is a bad option§  Three primary lifecycle model components •  Phases and their order •  Intermediate products of each phase •  Reviews used in each phase Planning and Managing Software Projects – Emanuele Della Valle
  6. 6. Class 5 review - DetailsLifecycle Planning 6§  Different projects require different approaches§  You do not need to know all models by name§  You should know how that if given a certain scenario what sort of SDLC would be appropriate§  There are more than covered here§  A lifecycle is not a design, modeling or diagramming technique •  The same technique (UML, DFD, etc) can be used with multiple lifecycles Planning and Managing Software Projects – Emanuele Della Valle
  7. 7. Lifecycle PlanningMatching Life Cycles to Project 7§  Varies by project§  Opt for iterative or incremental§  How well are requirements understood?§  What are the risks?§  Is there a fixed deadline?§  How experienced is the team or customer? Planning and Managing Software Projects – Emanuele Della Valle
  8. 8. Lifecycle PlanningMcConnell’s way of choosing a Lifeclycle 8Model a b c d e f g h i j k ~ = fair to excellent,Pure Waterfall x x ~ ~~ empty box = poor.Code-and-Fix x x x = excellent,Spiral x x x x x ~~ ~ x xModified Waterfalls (sashimi) ~ ~ x x ~~ x ~~~ Legend:Evolutionary Prototyping x ~ x ~ ~ x x ~Staged Delivery x x ~~~ ~ xCommercial (COTS) x x x ~a.  Works with poorly understood requirementsb.  Works with poorly understood architecturec.  Produces highly reliable systemd.  Produces system with large growth envelopee.  Manages risksf.  Can be constrained to a predefined scheduleg.  Has low overheadh.  Allows for midcourse correctionsi.  Provides customer with progress visibilityj.  Provides management with progress visibilityk.  Requires little manager or developer sophistication [source http://acmesoffware.com/acme/default.asp ] Planning and Managing Software Projects – Emanuele Della Valle
  9. 9. Lifecycle PlanningAdding Lifecycles to McConnell’s way 9Model a b c d e f g h i j k ~ = fair to excellent,Pure Waterfall x x ~ ~ ~ empty box = poor.Code-and-Fix x x x = excellent,Spiral x x x x x ~ ~ ~ x xModified Waterfalls (sashimi) ~ ~ x x ~ ~ x ~ ~ ~ Legend:Evolutionary Prototyping x ~ x ~ ~ x x ~Staged Delivery x x ~ ~ ~ ~ xCommercial (COTS) x x x ~Rapid Application Development x x x ~ x ~ x x xExtreme Programming x x x ~ x x x ~Agile Software Development x x x ~ ~ x x ~SCRUM x x x ~ x ~ x x ~ Planning and Managing Software Projects – Emanuele Della Valle
  10. 10. Lifecycle PlanningAn Example at a Little Consulting Corporation 10§  http://www.creativedd.com/projlifecycle.html Planning and Managing Software Projects – Emanuele Della Valle
  11. 11. Project PlansPlanning 11§  Plans are nothing. But planning is everything. -- Gen. Dwight Eisenhower Planning and Managing Software Projects – Emanuele Della Valle
  12. 12. Project PlansPlanning 12§  Preliminary planning starts on day one§  Even in the pre-project phase§  Should not be conducted in secret§  Need buy-in and approval •  Very important step •  Both from above and below Planning and Managing Software Projects – Emanuele Della Valle
  13. 13. Project PlansYour PM Process 13§  Why •  Deliverable: ROI§  What •  SOW, Requirements§  How •  Design Specification, Software Development Plan, Lifecycle Futrell, Shafer, Shafer, Quality Software Project Management§  Do it •  Execution§  Did it •  Post Project Report Planning and Managing Software Projects – Emanuele Della Valle
  14. 14. Project PlansPrimary Planning Steps 14§  Identify project scope and objectives§  Identify project organizational environment§  Analyze project characteristics§  Identify project products and activities§  Estimate effort for each activity§  Identify risk§  Allocate resources§  Review and communicate plan Planning and Managing Software Projects – Emanuele Della Valle
  15. 15. Project PlansDocuments 15§  Planning§  Product Planning and Managing Software Projects – Emanuele Della Valle
  16. 16. Project PlansPlanning Documents 16§  Software Development Plan (SDP)§  Software Quality Assurance Plan (SQAP)§  Software Configuration Management Plan (SCMP)§  Risk Management Plan§  Software Process Improvement Plan§  Communications Management Plan§  Migration Plan§  Operations Plan Planning and Managing Software Projects – Emanuele Della Valle
  17. 17. Project PlansPlanning Documents 17§  You (the PM) need to choose which documents are appropriate§  Docs do not have to be lengthy§  Small Set: •  Software Development Plan •  Risk Management Plan •  Software Quality Assurance Plan •  Software Configuration Management Plan Planning and Managing Software Projects – Emanuele Della Valle
  18. 18. Project PlansMy Choice 18§  Statement of Work (SOW)§  Project Charter§  Software Project Management Plan (SPMP)§  Budget§  Responsibility Assignment Matrix (RAM)§  Risk Management Plan Planning and Managing Software Projects – Emanuele Della Valle
  19. 19. Project PlansProduct Documents 19§  Statement of Need§  System Interface Specification§  Software Requirements Specification§  Software Design Specification§  Software Validation & Verification Plan§  User Documentation§  Support Plan§  Maintenance Documentation Planning and Managing Software Projects – Emanuele Della Valle
  20. 20. Project PlansSoftware Project Survival Guide 20§  Another McConnell book§  See construx.com s SPSG section http://www.construx.com/Page.aspx?cid=1034 •  Good content online •  Documents •  Schedules •  Checklists •  Project web site template§  I tool I ve often used •  Software Project Survival Test –  http://www.construx.com/Page.aspx?cid=1229 Planning and Managing Software Projects – Emanuele Della Valle
  21. 21. Project PlansPlanning 21§  How much will it cost?§  How long will it take?§  How many people will it take?§  What might go wrong? Planning and Managing Software Projects – Emanuele Della Valle
  22. 22. Project PlansPlanning 22§  Scoping§  Estimation§  Risk§  Schedule§  Control Strategy Planning and Managing Software Projects – Emanuele Della Valle
  23. 23. Project PlansProcess Issues 23§  You want a fairly sophisticated process without incurring much overhead§  Remember, projects are often larger than they first appear§  Easier to loosen too much process than add later Planning and Managing Software Projects – Emanuele Della Valle
  24. 24. Project PlansPlans Evolve Over Time 24 NASA s Manager s Handbook for Software Development Planning and Managing Software Projects – Emanuele Della Valle
  25. 25. Project PlansSoftware Development Plan 25§  Software Project Management Plan (SPMP)§  Some consider it the most important document in the project (along with SRS) •  Can be seen as an aggregation of other core documents§  Evolves over time as pieces come together§  McConnell s example •  http://www.construx.com/Page.aspx?nid=240 Planning and Managing Software Projects – Emanuele Della Valle
  26. 26. Project PlansSDP / SPMP 26§  Fundamental Sections •  Project overview •  Deliverables •  Project organization •  Managerial processes •  Technical processes •  Budget •  Schedule Planning and Managing Software Projects – Emanuele Della Valle
  27. 27. Project PlansCommunications Management Plan 27§  Often a section of SPMP§  Describes information flow to all parties •  Gathering and distributing information§  Status meetings •  Monthly, Weekly, Daily? •  Status reports are vital Planning and Managing Software Projects – Emanuele Della Valle
  28. 28. Project PlansCreate a Project Intranet 28§  A great communications tool§  Reference all project resources here§  For instance have a look at portals of my current projects •  http://www.service-finder.eu •  http://www.larkc.eu and http://wiki.larkc.eu •  http://www.search-computing.it/ Planning and Managing Software Projects – Emanuele Della Valle
  29. 29. Optional Readings 29§  Thayer: •  Cori pg. 171-182 Fundamentals of Master Scheduling , •  Fairley 183-194 Work Breakdown Structures Planning and Managing Software Projects – Emanuele Della Valle
  30. 30. Comics 30 [source http://www.cs.ucl.ac.uk/external/atanu/req.gif ]Planning and Managing Software Projects – Emanuele Della Valle
  31. 31. 31Planning and Managing Software Projects – Emanuele Della Valle
  32. 32. Comics 32[source http://www.codinghorror.com/blog/images/software-engineering-explained.png ] Planning and Managing Software Projects – Emanuele Della Valle
  33. 33. Read out more about the tree swing 33§  http://www.businessballs.com/treeswing.htm Planning and Managing Software Projects – Emanuele Della Valle

×