1 / 16

Software Project Management

Software Project Management. Lecture # 7. Outline. Project Scheduling. Relationship of People and Effort. Putnam-Norden-Rayleigh (PNR) Curve indicates the relationship between effort applied and delivery time for a software project. Mathematical representation of the PNR curve:.

indiya
Download Presentation

Software 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. Software Project Management Lecture # 7

  2. Outline • Project Scheduling

  3. Relationship of People and Effort • Putnam-Norden-Rayleigh (PNR) Curve indicates the relationship between effort applied and delivery time for a software project. • Mathematical representation of the PNR curve:

  4. PNR curve was used to derive the software equation

  5. to = delivery time that will result in least effort expended • As we move left to to, i.e. as we try to accelerate delivery, curve rises nonlinearly • As we try to reduce accelerate delivery, curve rises sharply to left of td indicating, project delivery time can not be compressed much beyond 0.75td • As we try further, the project moves into impossible region and failure risk becomes high Effort Cost Ed Eo Impossible Region Tmin=0.75Td td to Development Time

  6. PNR Curve & Software Eqn. • The software equation is derived from the PNR curve • It demonstrates a highly nonlinear relationship between time to complete project and human effort applied to the project • Lines of Code (L) is related to effort (E) and development time (t) as: • L = P x E 1/3 t 4/3 • Rearranging the equation • E = L3 / P3t4

  7. Effort Distribution • A recommended distribution of effort across software process is often referred to as 40-20-40 rule • 40% allocated to analysis & design • 20% allocated to coding • 40% allocated to testing • Use the above as a guideline only as each project dictates its own distribution effort

  8. Defining Task Set • Task set is a collection of software engineering work tasks , milestones and deliverables that must be accomplished to complete a particular software project. • Task sets are different for different types of projects • Most organizations encounter following types of projects • Concept development projects • Explore some new business concept or application of new technology

  9. Project Types • New application development projects • Undertaken as a consequence of specific customer request • Application Enhancement projects • Involve modification to functions, performance or interfaces (observable by end-user) in existing software • Application maintenance projects • That correct, adapt or extend existing software in ways that may not be obvious to end user • Reengineering projects • Undertaken for rebuilding an existing system in whole or part

  10. Factors affecting task set selection • Size of project • Number of potential users • Mission criticality • Application longevity • Stability of requirements • Ease of customer/develop communication • Maturity of applicable technology • Performance constraints • Embedded, non embedded characteristics • Project staff • Reengineering factors • These factors also provide an indication of the degree of rigor with which the software process should be applied

  11. Reading Assignment • 24.3.1 • 24.3.2

  12. Defining a Task Network • Also known as activity network • It is a graphic representation of the task flow for a project • Displays interdependencies and parallelism • Project manager should be aware of those tasks that lie on the critical path

  13. 1.1 Concept Definition 1.5 Integrate & Test A task set network for ‘concept development’ Enables the team to see the essentially serial nature of the project, but take advantage of parallelism where possible. 1.4a Module A Des/Dev 1.2 Project Planning 1.6 Concept Demo 1.4b Module B Des/Dev

  14. Scheduling • Two Project Scheduling methods that can be applied to software development: • Program evaluation and review technique (PERT) • Critical Path Method (CPM) • Both are driven by Info already developed: • Estimates of effort • A decomposition of product function • The selection of appropriate process model and task set • Decomposition of tasks

  15. Timeline Charts • When creating software project schedule, the planner begins with a set of tasks (work breakdown structure) • If automated tools are used, the work breakdown is input as a task network • Effort, duration and start date are then input for each task • As a result of this input, a timeline chart or Gantt chart is generated

  16. Tracking Schedule • Accomplished in a no. of ways • Conducting periodic project status meetings in which each team member reports progress & problems • Evaluating results of all reviews conducted throughout the s/w engg process • Determining whether formal project milestones have been accomplished by scheduled date • Comparing actual start date to planned date for each project task • Meeting practitioners to get their assessment of progress to date and problems encountered • Use earned value analysis to assess progress quantitatively

More Related