Project Management Project Management Activities Project Scheduling Cost Estimation PVK-HT05 2 Project Management Activities Project acquisition Project planning o Resource assessment o Risk and option analysis Cost estimation Project scheduling o Work breakdown structure o Effort distribution o Resource assignment Project tracking and control Reporting PVK-HT05 3 Project Resources People o o o o Required skills Availability Duration of tasks Start date Hardware and software tools o o o o Description Availability Duration of use Delivery date PVK-HT05 4 Risk Analysis What is a risk? Risk impact: the loss associated with the event Risk probability: the likelihood that the event will occur Risk control: the degree to which we can change the outcome Risk exposure = (risk probability) x (risk impact) PVK-HT05 5 Top Ten Project Risks Staff deficiencies Unrealistic schedules and budgets Developing the wrong functions Developing the wrong interface Over-engineering Changing requirements Externally developed items Externally performed tasks Performance problems PVK-HT05 Assumptions on technology 6 Define Work Breakdown Structure Activity o o o o o Major work unit Start date End date Consumes resources Results in work products (and milestones) Phase 1 Project PVK-HT05 Project function Phase 2 Phase N o Continue throughout the project o Not bound to specific phases Step 1 Step 2 Step 1 Step 2 Activity 1 Activity 2 Activity 3 Activity 1 Activity 2 Task 1 Task 2 Task 3 Step 1 Step 2 7 Schedule Activities Almost all activities depend on the completion of some other activities Many activities can be performed in parallel Organisation necessary to balance work-load, costs, and duration o PERT chart (activity network/task graph) Critical path Project Time-line (Gantt chart) Resource table PVK-HT05 8 PERT Charts Program Evaluation and Review Technique Graph o Nodes = activities/tasks and estimated duration o Edges = dependencies Compute o Slack time = available time - estimated duration o Critical path A path is critical when it contains an activity that, if delayed, will cause a delay of the whole project. PVK-HT05 9 Example PERT Chart Time-motion study of existing hardw are 3 2d 5/4/00 5/5/00 Get final report from PSU Design electrical and pneumatic renovations Schedule dow n-time w ith production supervisor Schedule contractor for electrical and pneumatic Renovate electrical and pneumatic Install new hardw are 1 5d 4 4d 5 2d 8 1d 13 2d 14 3d 4/27/00 5/3/00 5/4/00 5/9/00 5/10/00 5/11/00 5/12/00 5/12/00 5/17/00 5/18/00 5/19/00 5/23/00 Shut dow n production line Remove old hardw are 10 1d 11 2d 5/12/00 5/12/00 5/15/00 5/16/00 Get blueprints for old hardw are Schedule truck to pickup hardw are at PSU Inform PSU about pickup Transport hardw are from PSU Store old hardw are (just in case) 2 1d 6 1d 7 2d 9 2d 12 10d 4/27/00 4/27/00 5/4/00 5/4/00 5/5/00 5/8/00 5/9/00 5/10/00 5/17/00 5/30/00 PVK-HT05 10 Gantt charts A Gantt chart is used to graphically present the start and end dates of each software engineering task o One axis shows time. o The other axis shows the activities that will be performed. o The black bars are the top-level tasks. o The white bars are subtasks o The diamonds are milestones: • Important deadline dates, at which specific events may occur PVK-HT05 11 A Gantt Chart (Project Time Line) PVK-HT05 12 Another Gantt Chart PVK-HT05 13 Cost Estimation Approach o Decompose problem o Check for experiences/ data on sub problems o Make qualified estimations o (Make at least two independent estimates) PVK-HT05 Problems: o What are good measures? o Do the estimates affect the result? o Does the type of software affect the result? o Does the project environment affect the result? o ... Use empirical and historical data Algorithmic cost modelling COCOMO (based on LOC) FP (based on function points) 14 COCOMO Constructive Cost Modelling [Boehm 81] Based on publicly available historical data of 63 TRW projects Basic assumptions: o o o o Requirements change only slightly during the project There is good project management The historical data is representative Assigning more resources to the project does NOT result in linear decreasing development time PVK-HT05 15 Basic Model Effort = a (KDSI)b Schedule = c (Effort)d •KDSI = Kilo Delivered Source Instructions ( LOC - comments) •The a, b, c, and d factors vary depending on the type of project •Effort is measured in PM (Person Months = 152h of work) •Schedule is the Development Time measured in Months Organic In-house IS, Development in a familiar environment Semi-detached Between OM- and EM projects Embedded Large and inexperienced teams, many constraints PVK-HT05 a b c d 2.4 1.05 2.5 0.38 3.0 1.12 2.5 0.35 3.6 1.20 2.5 0.32 Boehm, Software Engineering Economics, Prentice-Hall, 1981. 16 COCOMO Summary Works quite well in practice Needs KLOC as input Problems: o Estimating KLOC in early project stages o Comparison of projects using different LOC counts o Outdated metrics base (70s) Solutions: o Cross-check using an other estimation technique o Standardised LOC counts o Continuous model calibration COCOMO II is a recent new version PVK-HT05 17 COCOMO II Goal: To develop a software cost and schedule estimation model tuned to the life cycle practices of the 1990’s and 2000’s 3 Models o Application Composition: prototyping to resolve highrisk user interface issues, 2 environment drivers, 0 process drivers, Sizing in Object Points o Early Design Model: to explore alternative architectures and concepts,7 environment drivers, 5 process drivers, Sizing in Function Points or SLOC o Post Architecture Model: development has begun, 17 environment drivers, 5 process drivers, Sizing in Function Points or SLOC PVK-HT05 18 Effort and schedule in COCOMO 2 Effort = NOP/productivity NOP = OP * [(100 -%reuse)/100] Application Composition Model Productivity = NOP/man-months, 5 productivity levels depending on the 2 environment drivers (table 3.12 course book) Environment (Process Scale Factors) = [ ] Effort Multipliers Size Environment: product, platform, people, project factors Early Design and Postarchitecture Model Process: constraint, risk/architecture, team, maturity factors (Process Scale Factors ) ( ) = Schedule Multiplier [Effort] PVK-HT05 19 COCOMO II Model Stages 4x 2x Early Design (13 parameters) 1.5x Overestimated 1.25x Relative Size Range x 0.8x Post-Architecture (23 parameters) 0.67x 0.5x 0.25x Concept of Operation Feasibility PVK-HT05 Phases Underestimated Applications Composition (3 parameters) Plans and Rqts. and Milestones Detail Design Spec. Product Design Spec. Rqts. Spec. Product Design Detail Design Accepted Software Devel. and Test 20 COCOMO II summary COCOMO II + allow for spiral model instead of waterfall model only + Size of project can be listed as object points, function points or source lines of code (SLOC) + The environmental multipliers are calculated from seventeen cost drivers better suited for today's methods - Calibration is difficult, but can improve accuracy by a factor of five PVK-HT05 21 Function Points Function Point Analysis (FPA) measures the size of a software product in terms of the functionality it delivers to the users. A.J. Albrecht 1979 o What the software must do from the user’s perspective o Irrespective of software construction Based on five function types: o o o o o PVK-HT05 Inputs Outputs Inquiries Logic Files Interfaces 22 Project plan contents Project scope Project schedule Project team organization Technical description of system Project standards and procedures Quality assurance plan Configuration management plan PVK-HT05 Documentation plan Data management plan Resource management plan Test plan Training plan Security plan Risk management plan Maintenance plan 23 Difficulties and Risks in Project Management Accurately estimating costs is a constant challenge It is very difficult to measure progress and meet deadlines It is difficult to deal with lack of human resources or technology needed to successfully run a project Communicating effectively in a large project is hard It is hard to obtain agreement and commitment from others PVK-HT05 24