1 / 87

5. Project Management

5. Project Management. Goals. The goals of this chapter are to introduce concepts and techniques for the management of software projects. Summary . Good PM is not enough to warranty that a project succeeds

Download Presentation

5. Project Management

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 5. Project Management

  2. Goals The goals of this chapter are to introduce concepts and techniques for the management of software projects

  3. Summary Good PM is not enough to warranty that a project succeeds But bad PM is enough to warranty that a project is late, over budget and does not deliver the needed functionality Key activities in PM are project planning, cost and effort estimation, project tracking, project organization, risk management Key tools are Work breakdown structure, product breakdown structure (VPM in software projects), Gantt and Pert charts, process and product measures.

  4. Outline 5 Project management 5.1 Project planning 5.2 Cost/effort estimation 5.3 Project Tracking 5.4 Personnel 5.5 Risk Management

  5. Project Management Software System (functions and quality) Calendar time Cost No notion of unpredictable events here

  6. Management activities planning defining activities and products scheduling activities and deliveries on calendar deciding organizational structure (5.4) allocating resources estimating cost / effort (5.2) tracking (5.3) managing risks (5.5)

  7. 5.1 Planning

  8. Tools Phases, Activities, Resources WBS, PBS Gantt, Pert Milestones, deliverables

  9. WBS Work Breakdown Structure Hierarchical decomposition of activities in subactivities no temporal relationships

  10. Milestone Key event/condition in the project with effects on subsequent activities ex. requirement document accepted by the customer if yes then .. if no then ..

  11. PBS Product Breakdown Structure hierarchical decomposition of product cfr Virtual Product Model

  12. Deliverable Product (final or intermediate) in the process cfr PBS, VPM internal (for producer) or external (for customer) contractual value or not

  13. Gantt chart

  14. Pert

  15. PERT -directed acyclic graph: node = activity, arrow = precedence relatioship Docum. 2 Design 4 Requir. 3 STOP Coding 4 Test Data 2 START System Test 4 Test plan 2 Unit Test 6

  16. Critical path analysis What is shortest time to complete the project? What are the critical activities to complete the project in shortest time? Critical activities are the ones on the critical path(s)

  17. Critical path - Path with longest duration start end (1) START label with (0,0) (2) For each node N whose predecessors are labeled: SN=max {Si} Si: end time for i-th predecessor label N with (SN, SN+duration) (3) Repeat (2) until all nodes labeled

  18. Example . (7,9) (3,7) Docum. Design 4 (0,3) 2 (15,15) 3 Requir. (7,11) STOP (3,5) Code (0,0) Test data 4 START 2 Unit Test System Test Test Plan 4 6 2 (11,15) (0,2) (2,8)

  19. Analysis - Late start latest time an activity can be started without changing end time of project . . . . . - .Slack time Admissible delay to complete an activity

  20. To Compute “Slack Time” Start from graph (S,F) from critical path analysis, for each node compute new labels (S’,F’), max start and end times 1. For STOP (S’, F’)=(S,F). 2. For each node whose successors are labeled (S’, F’) compute min S’, that becomes F’ for the node S’=F’-duration Slack Time=S’- S (or also F’- F) 3. Repeat

  21. Managerial Implications 1. Use slack time to delay start time, or lenghten, an activity 2. If duration of activity on critical path lenghtens by X, the whole project is delayed by X 3. If only one critical path exists, reducing duration of any activity on critical path shortens duration of project.

  22. Planning Process Identify activities and/or deliverables PBS, WBS reference models (VPM, CMM, Iso 9000) estimate effort and cost define schedule (Gantt) analyze schedule (Pert)

  23. Project plan living document will be updated during tracking outline list of deliverables, activities milestones Gantt Pert personnel organization roles and responsibilities

  24. 5.2 Estimation

  25. Costs - by phase • upfront costs • market analysis, feasibility studies • development costs • maintenance costs

  26. Costs - by category • hardware (target platform) • hardware (development platform) • personnel (by far main cost in most cases) • salaries, office space, travel .. • technical • administrative

  27. Estimation of cost and effort Based on analogy requires experience from the past to ‘foresee’ the future the closer a project to past projects, the better the estimation

  28. Techniques Expert judgement Delphi bottom-up empirical models Cocomo function points

  29. Expert judgement one or more experts (chosen in function of experience) propose an estimate

  30. Delphi evolution of expert judgement structured meetings to achieve consensus in estimate each participant proposes estimate (anonymous) team leader publishes synthesis (a + 4m + b)/6 (beta distribution) a best - b worst - m mean iterate

  31. Bottom up decomposition (WBS o PBS) estimate each part easier estimate for small parts aggregate not linear

  32. Empiricals models requires data base of past projects min info required: size, effort apply regression (linear, or else) apply regression for estimates

  33. Cocomo effort = a * size **b a, b are defined constants, depend on the type of system (organic = MIS, embedded rt, intermediate) a,b are based on retrospective application requires an estimated size cocomo 2.0 integration of oo, reuse, gui, fp

  34. Function Points fp = A*EI + B*EO + C*EQ + D*EIF + E*ILF EI = number of Input Item EO = output item EQ = Inquiry EIF= Master File ILF = Interface

  35. Coefficients A,B,C,D,E

  36. Function Points For any product, size in “function points” is given by FP = 4  Inp + 5  Out + 4  Inq + 10  Maf + 7  Inf A 3-step process.

  37. Function Points (2) 1. Classify each component of product (Inp, Out, Inq, Maf, Inf) as simple, average, or complex. Assign appropriate number of function points Sum gives UFP (unadjusted function points)

  38. Function Points (3) 2. Compute technical complexity factor (TCF) Assign value from 0 (“not present”) to 5 (“strong influence throughout”) to each of 14 factors such as transaction rates, portability Add 14 numbers  total degree of influence (DI) TCF = 0.65 + 0.01  DI Technical complexity factor (TCF) lies between 0.65 and 1.35

  39. Function Points (4) 3. Number of function points (FP) given by FP = UFP  TCF

  40. Function Points suitable for MIS use of adjustment factors delicate FP expert should do estimate long, expensive conversion tables FP - LOC conversion tables FP - cost www.ifpug.org COBOL 110 PL/1 65 4GL 25 Language LOC/FP

  41. 5.3 Tracking

  42. Tracking process project has started collect project data minimum: effort, completion of activities/deliverables process and product measures compare estimated - actual corrective actions change personnel, change activities, change deliverables, ... re-plan

  43. Process measures time, effort, cost fault, failure, change product specific measures

  44. Effort time taken by staff to complete a task person hours (ieee 1045) person day, person month, person year depend on national and corporation parameters

  45. Cost cost to user acquisition, maintenance, normal operation, initial operation (training, overheads) cost to vendor staff hardware, software offices, telephone, ...

  46. Earned value When the total time to do a project is estimated, each task is given a earned value based on its estimated percentage of the total. Example: for a 600 minute project, a 60 minute task will give an earned value of 10%. When you reach an earned value of 100% the project is completed.

More Related