330 likes | 651 Vues
Software Engineering Project Management. Control I. WBS . Work Break Down Structure( WBS) – a check list of the work that must be accomplished to meet the project objectives.
E N D
Software Engineering Project Management Control I Control I
WBS Work Break Down Structure( WBS) – a check list of the work that must be accomplished to meet the project objectives. The WBS lists the major project outputs and those departments or individuals primarily responsible for their completion. Control I
Sequence the Work Activities • Milestone Chart • Gantt chart • Network Techniques • CPM (Critical Path Method) • PERT (Program Evaluation and Review Technique) Control I
Gantt Chart • Gantt chart is a means of displaying simple activities or events plotted against time or dollars • Most commonly used for exhibiting program progress or for defining specific work required to reach an objective • Gantt charts may include listing of activities, activity duration, scheduled dates, and progress-to-date Control I
Gantt Chart • Advantages: - Easy to understand - Easy to change • Disadvantages: - only a vague description of the project - does not show interdependency of activities - cannot show results of an early or late start of an activity Control I
Network Techniques • A precedence network diagram is a graphic model portraying the sequential relationship between key events in a project. • Initial development of the network requires that the project be defined and thought out. • The network diagram clearly and precisely communicates the plan of action to the project team and the client. Control I
CPM • Critical Path Method (CPM) tries to answer the following questions: • What is the duration of the project? • By how much (if at all) will the project be delayed if any one of the activities takes N days longer? • How long can certain activities be postponed without increasing the total project duration? Control I
Critical Path • Sequence of activities that have to be executed one after another • Duration times of these activities will determine the overall project time, because there is no slack/float time for these activities • If any of the activities on the critical path takes longer than projected, the entire project will be delayed by that same amount • Critical path = Longest path in the precedence network (generally, the longest in time) Control I
A B C D E F G H I J K L CPM Graph Activity Number/Duration -/0 -/0 3/2 6/4 1/3 2/7 5/4 9/4 7/4 4/7 11/4 8/3 -/0 13/3 12/3 10/13 Critical Path 1: 1,2,7,6,5,11,12,13Critical Path2: 1,2,7,9,5,11,12,13 Control I
PERT vs. CPM • The difference between CPM and PERT are not fundamental, but merely of viewpoint • CPM emphasizes activities; PERT is event oriented • CPM uses arcs to represent activities; PERT uses node to specify events • PERT permits explicit treatment of probability for its time estimated; CMP does not • PERT is better suited to projects of high uncertainty; CPM is better suited to well defined project with little uncertainty Control I
R S PERT A – Most optimistic timeM – Most likely timeB – Most pessimistic time 2, 3, 4 Expected Time = (a + 4m + b)/6 Expected Time = 3 Control I
Percent Complete? • Conceptual Design (complete) • Program Specification (complete) • Coding (in progress) • Documentation (in progress) • User Manual Production (not started) • Testing (not started) [Wil99] Control I
Percent Complete? • Conceptual Design – 200/200 • Program Specification – 300/300 • Coding – 150/600 • Documentation – 10/100 • User Manual Production – 0/400 • Testing – 0/500 hours 660 / 2100 * 100 = 31.4% complete [Wil99] Control I
Earned Value • Adopted by the Department of Defense in the 1960s as a standard method of measuring project performance • Considered by some as costly, difficult, and of little benefit • Considered by others as a proven technique for project communication and control, often resulting in cost saving to the project overall [Wil99] Control I
What is Earned Value? • Earned Value (EV) is a methodology used to control a project • It provides a uniform measure for project progress for the entire project or any sub-element • Provides a consistent method of project progress and performance • Provides a basis for cost performance analysis of a project [Wil99] Control I
To Set Up Earned Value Tracking • Establish a WBS to divide the project into manageable parts • Identify the activities required for the current project • Allocate the effort required for each activity • Schedule the activities over time and resources • Analyze/review the schedule [Wil99] Control I
To Use Earned Value Tracking • Update the schedule by reporting activity progress • Enter the actual cost on the activities • Execute the Earned Value calculations • Analyze the data and make course corrections as necessary [Wil99] Control I
Earned Value Tracking Setup • Establish a common value scale for every task, regardless of the type of work involved (software projects use effort) • Total effort for the entire project is estimated • Every task is given a planned value based on its estimated percentage of the total project effort • Completion of a task results in a credit, or an earned value, of the value allocated to the task [Jon94] Control I
Earned Value Example Example: Total Project Effort: 1000 person hours Task A Estimate: 15 person hours Planned Value: 1.5 Completing task A contributes 1.5 to the cumulative earned value total for the project [Jon94] Control I
Earned Value Tracking • Earned value credit is given only when the task is 100% complete • Partially completed tasks are NOT given partial credit (in most software projects) • Large tasks can/must be broken into subtasks • Size tasks up to 80 person-hours; aim for 2 to 4 task completions per week [Jon94, Hum95] Control I
Task Planning Example Task Plan Actual [Jon94] Control I
Changes in Earned Value Tracking • You must start with a reasonably good plan; if the plan is not accurate there is not way to accurately track progress • High-Tech projects are rarely completed precisely as planned • If changes to the plan are relatively small, make minor adjustments • Significant changes require a re-plan [Hum95] Control I
Earned Value: Planned vs. Actual AdjustedEV CumulativeEV ProjectedEV ActualEV Weeks [Jon94] Control I
Earned Value Main Data Elements Planned Value (PV) - Budgets of the activities that are planned or scheduled Earned Value (EV) – The planned or scheduled cost of the activities that are completed Actual Cost (AC) – Actual cost charged against activities that were completed [Wil99] Control I
Earned Value Projection Schedule Variance (SV) is the Earned Value minus the planned budget for the completed work (SV=EV-PV)Cost Variance (CV) is the Earned Value minus the actual cost (CV=EV-AC) Schedule Performance Index (SPI) is the Earned Value divided by the planned value (SPI=EV/PV). Expected to be 1. Cost Performance Index (CPI) is the Earned Value divided by the planned value (CPI=EV/AC). Expected to be 1. [Wil99] Control I
Now negotiated Total Funds 4500 Management Reserve 4000 Cost overrun EAC 3500 BAC 3000 Delivery Schedule 2500 $$$ 2000 BCWS Schedule slip 1500 1000 Schedule Reserve 500 BCWP ACWP 0 Jan Mar May Jul Sep Nov Jan Mar May TIME [Wil99] Control I
Performance Reporting [ Whitten ] Control I
Earned Value Projection Can use earned value to estimate the end of the project, assuming that current rate of earned value progress will continue to the end. • Planned to earn 5.26 earned value per week • Current rate 4.32 earned value per week • An original 19-week schedule takes 23 weeks DOD study finds that for projects that regularly use EV management, a projects final cost and schedule are predictable after the initial 15% of the project is complete. [Hum95] Control I
References [Dun97] Dunn, R.H., “Software Quality Assurance: A Management Perspective,” in Software Engineering Project Management, ed. R. Thayer, Los Alamitos, CA: IEEE Computer Society, 1997, pp. 433-440. [Hum95] Humphrey, Watts S., A Discipline for Software Engineering. Addison-Wesley, 1995. [Jon94] Jones, C., Assessment and Control of Software Risks. Englewood Cliffs, New Jersery: Yourdon Press, 1994. [Ker94] Kerzner, H., Project Management; A system Approach to Planning, Scheduling and Controlling. New York: Van Nostrand Reinhold, 1994. [Pre92] Pressman, R.S., Software Engineering: A Practitioner’s Approach, 3rd ed., McGraw-Hill, 1992. [Sch92] Schulmeyer, G.G., J. I. McManus, Ed., Handbook of Software Quality Assurance, New York: Van Nostrand Reinhold 1992. [Wil99] Wilkens, Tammo T., “Earned Value, Clear and Simple.” April 1, 1999, http://www.acq.osd.mil/pm/ Control I