project planning
TRANSCRIPT
![Page 1: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/1.jpg)
Software Project Management
Project ManagementProject Planning
![Page 2: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/2.jpg)
Agenda• Deliverables
– Friday, May 21 @ 5 PM - Status Report #2– Friday, May 28 @ 5 PM - Status Report #3– Friday, May 28 @ 5 PM
• Requirements Document• Project Plan
• Faculty Advisors– Final Assignments Next Week– Contact ASAP if already assigned
• Lecture: Project Management
![Page 3: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/3.jpg)
Project Management• Goals
– Software delivered within budget– Software delivered within schedule– Software is built according to requirements
• Why?– Well-managed projects sometimes fail– Badly managed projects inevitably fail– Software development process is not
standardized
![Page 4: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/4.jpg)
Project Manager’s Dilemma
YOU CAN ONLY HAVE TWO!!!!
GO
OD
CHEAP
FAST
![Page 5: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/5.jpg)
Project Managers Rectangle
FEASIBLE ZONE
Resources Quality
Schedule Features
![Page 6: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/6.jpg)
Project Manager Responsibilities
• Proposal Writing• Project Costing• Project Planning & Scheduling• Project Monitoring & Reviews• Personnel Selection & Evaluation• Report Writing & Presentations
Sommerville, 1995
![Page 7: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/7.jpg)
Project Planning ProcessEstablish the project constraints Make initial assessments of the project parameters Define project milestones and deliverableswhile project has not been completed or cancelled loop
Draw up project scheduleInitiate activities according to schedule
Wait ( Execute project for a while ) Review project progress Revise estimates of project parameters Update the project schedule Re-negotiate project constraints and deliverables if ( problems arise ) then Initiate technical review and possible revision end if
end loop
Sommerville, 1995
![Page 8: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/8.jpg)
So how do we do this?• Spend time understanding the problem• Estimate amount of effort required (This is
hard!!)– Number of major functions– Difficulty of each function
• Develop schedule with built in safety nets– Increase estimates by some factor– Have a backup plan for worst case– Make sure schedule is realistic
• Revise schedule as project understanding increases
![Page 9: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/9.jpg)
Estimation Overview• Difficult & error
prone• Gradual refinement
– At beginning of project, have a “fuzzy” idea of problem, therefore estimate of time and effort will be “fuzzy” too
– Only as the project develops and the problem and solution become clearer, will the estimates increase in accuracy
• Estimation Process– Estimate the size of
the product• Lines of code (LOC)• Function Points• Number of functions
– Estimate the effort• Person-months• 50-60
Hours/Credit/Person
– Estimate the schedule• Calendar time
![Page 10: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/10.jpg)
From Estimation to Scheduling
• Refinement– Initial problem (x4)
statement– Requirements(x1.5)
Specification– High Level Design (x1.25)– Detailed Design (x1.1)
Specification– Implementation (x1)
• Top-Down vs. Bottom-Up
• Cases– Best Case– Most Likely Case– Current Case– Worst Case
![Page 11: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/11.jpg)
Scheduling• Activities
– Split project into tasks• Estimate time &
resources required
– Organize tasks concurrently to make optimal use of workforce
– Minimize task dependencies to avoid delays
– Exit Criteria
• Problems– Estimating is difficult– Productivity is not
proportional to the number of people
– Adding people to a late project makes it later
– The unexpected always happens - allow contingency
![Page 12: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/12.jpg)
Scheduling
• Milestones • Need about 1 per week• Don’t use status report submission• Choose to govern project
execution
![Page 13: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/13.jpg)
Some Historical Figures (Small Projects)
• Architecture/Design 10%• Detailed Design 20%• Code/Debug 25%• Unit Testing 20%• Integration 15%• System Test 10%
![Page 14: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/14.jpg)
Scheduling
• Dependencies• What has to be done before I can
start this activity?• Governs sequencing
![Page 15: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/15.jpg)
Scheduling• Derived from estimated level of effort required• Don’t forget testing & integration take time too• Be realistic
– Other classes– Outside work/activities– Eat & sleep
• Build in safety nets & backup plans• Find Critical Path• Work Leveling
![Page 16: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/16.jpg)
Project Schedules (Gantt)
Sommerville, 1995
4/7 11/7 18/7 25/7 1/8 8/8 15/8 22/8 29/8 5/9 12/9 19/9
T4T1T2
M1T7T3
M5T8
M3M2T6T5
M4T9
M7T10
M6T11M8
T12
Start
Finish
![Page 17: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/17.jpg)
Risk Analysis
• Risk– Something that can go wrong– Often a result of inadequate
information
• Assessment (Identify, Analyze, Prioritize)
• Control (Planning, Resolution, Monitoring)
![Page 18: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/18.jpg)
Levels of Risk Management
• Crisis Management (Fire Fighting)• Fix on Failure• Risk Mitigation• Risk Prevention• Elimination of root causes
![Page 19: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/19.jpg)
Risk Resolution Alternatives
• Acceptance• Avoidance (Eliminate)• Protection (Redundancy)• Reduction (Mitigation, Prevention,
Anticipation)• Research (Need more info)• Reserves (Slush fund, bank, pad)• Transfer (shift to someone else)
![Page 20: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/20.jpg)
Project Plan
• Format on class web page• Sample risks on web page• Grading criteria off web page
![Page 21: Project Planning](https://reader036.vdocument.in/reader036/viewer/2022062709/558fc6621a28ab7a4e8b4648/html5/thumbnails/21.jpg)
In Summary...
• Good project management is essential for project success
• Managers have diverse roles, but focus on– Planning– Estimating– Scheduling
• Planning and estimating are iterative processes
• Beware the “Fuzzy Front End” (McConnell)
Sommerville, 1995