Copyright 1995-2009, Dennis J. Frailey CSE7315 – Software Project Management CSE7315 M20 - Version 9.01 SMU CSE 7315 Planning and Managing a Software Project.

Slides:



Advertisements
Similar presentations
Virtual University - Human Computer Interaction 1 © Imran Hussain | UMT Imran Hussain University of Management and Technology (UMT) Lecture 16 HCI PROCESS.
Advertisements

CHAPTER 1 SOFTWARE DEVELOPMENT. 2 Goals of software development Aspects of software quality Development life cycle models Basic concepts of algorithm.
Early Effort Estimation of Business Data-processing Enhancements CS 689 November 30, 2000 By Kurt Detamore.
Chapter 6: Project Cost Management
Copyright 2000, Stephan Kelley1 Estimating User Interface Effort Using A Formal Method By Stephan Kelley 16 November 2000.
Sixth Hour Lecture 10:30 – 11:20 am, September 9 Framework for a Software Management Process – Artifacts of the Process (Part II, Chapter 6 of Royce’ book)
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
Cocomo II Constructive Cost Model [Boehm] Sybren Deelstra.
Chapter 7: Project Cost Management
Software Engineering. How many lines of code? Average CS1004 assignment: 200 lines Average CS4115 project: 5000 lines Corporate e-commerce project: 80,000.
Software Engineering.
May 11, 2004CS WPI1 CS 562 Advanced SW Engineering Lecture #5 Tuesday, May 11, 2004.
COCOMO II 資管研一 張永昌. Agenda Overall Model Definition COCOMO II Models for the Software Marketplace Sectors COCOMO II Model Rationale and Elaboration Development.
Software project management Module 1 -Introduction to process management Teaching unit 1 – Introduction Ernesto Damiani Free University of Bozen-Bolzano.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
April 13, 2004CS WPI1 CS 562 Advanced SW Engineering General Dynamics, Needham Tuesdays, 3 – 7 pm Instructor: Diane Kramer.
University of Southern California Center for Software Engineering CSE USC 9/14/05 1 COCOMO II: Airborne Radar System Example Ray Madachy
Project Tracking and Scheduling Infsy 570 Dr. R. Ocker.
HIT241 - COST MANAGEMENT Introduction
Cost Management Week 6-7 Learning Objectives
Cost Estimation Van Vliet, chapter 7 Glenn D. Blank.
Information System Economics Software Project Cost Estimation.
Page 1 COCOMO Model The original COCOMO model was first published by Barry Boehm in 1981 at CSE Center for Software Engineering. This is an acronym derived.
Copyright , Dennis J. Frailey CSE7315 – Software Project Management CSE7315 M29 - Version 9.01 SMU CSE 7315 Planning and Managing a Software Project.
By K Gopal Reddy.  Metrics in software are of two types.direct and indirect.  Function points as indirect metrics.  Function points are used to measure.
Copyright , Dennis J. Frailey CSE7315 – Software Project Management CSE7315 M14 - Version 9.01 SMU CSE 7315 Planning and Managing a Software Project.
Copyright , Dennis J. Frailey CSE7315 – Software Project Management CSE7315 M11 - Version 9.01 SMU CSE 7315 Planning and Managing a Software Project.
University of Southern California Center for Software Engineering C S E USC Using COCOMO for Software Decisions - from COCOMO II Book, Section 2.6 Barry.
10/27/20151Ian Sommerville.  Fundamentals of software measurement, costing and pricing  Software productivity assessment  The principles of the COCOMO.
Cost Estimation. Problem Our ability to realistically plan and schedule projects depends on our ability to estimate project costs and development efforts.
Cost Estimation What is estimated? –resources (humans, components, tools) –cost (person-months) –schedule (months) Why? –Personnel allocation –Contract.
University of Southern California Center for Systems and Software Engineering Barry Boehm, USC CS 510 Software Planning Guidelines.
Copyright © , Dennis J. Frailey, All Rights Reserved Day 1, Part 4, Page 1 4/19/2003 4) The Work Breakdown Structure (WBS)
Fifth Lecture Hour 9:30 – 10:20 am, September 9, 2001 Framework for a Software Management Process – Life Cycle Phases (Part II, Chapter 5 of Royce’ book)
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Systems Analysis and Design in a Changing World, Fourth Edition
Copyright , Dennis J. Frailey CSE7315 – Software Project Management CSE7315 M16 - Version 8.01 SMU CSE 7315 Planning and Managing a Software Project.
Cmpe 589 Spring 2006 Lecture 2. Software Engineering Definition –A strategy for producing high quality software.
SFWR ENG 3KO4 Slide 1 Management of Software Engineering Chapter 8: Fundamentals of Software Engineering C. Ghezzi, M. Jazayeri, D. Mandrioli.
Copyright , Dennis J. Frailey CSE7315 – Software Project Management CSE7315 M18 - Version 9.01 SMU CSE 7315 Planning and Managing a Software Project.
Copyright © , Dennis J. Frailey, All Rights Reserved Day 2, Part 2, Page 1 4/19/2003 Day 2, Part 2 Estimating Software Effort & Cost Section 1.
CSE SW Project Management / Module 20 - More Effort Estimation Models Copyright © , Dennis J. Frailey, All Rights Reserved CSE7315M20 Slide.
Function Points Synthetic measure of program size used to estimate size early in the project Easier (than lines of code) to calculate from requirements.
Estimating “Size” of Software There are many ways to estimate the volume or size of software. ( understanding requirements is key to this activity ) –We.
Effort Estimation In WBS,one can estimate effort (micro-level) but needed to know: –Size of the deliverable –Productivity of resource in producing that.
CSE SW Project Management / Module 15 - Introduction to Effort Estimation Copyright © , Dennis J. Frailey, All Rights Reserved CSE7315M15.
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
Copyright © , Dennis J. Frailey, All Rights Reserved Day 2, Part 1, Page 1 1/11/2004 Day 2, Part 1 Estimating Software Size Section 2 Calculating.
Copyright , Dennis J. Frailey CSE7315 – Software Project Management CSE7315 M19 - Version 8.01 SMU CSE 7315 Planning and Managing a Software Project.
Copyright , Dennis J. Frailey CSE7315 – Software Project Management CSE7315 M21 - Version 8.01 SMU CSE 7315 Planning and Managing a Software Project.
Copyright , Dennis J. Frailey CSE7315 – Software Project Management CSE7315 M15 - Version 9.01 SMU CSE 7315 Planning and Managing a Software Project.
CSE SW Project Management / Module 14 - Size Estimating Notes and Reuse Copyright © , Dennis J. Frailey, All Rights Reserved CSE7315M14.
CSE SW Project Management / Module 12 - Size Estimating Methods Part 1 Copyright © , Dennis J. Frailey, All Rights Reserved CSE7315 v3.0.
CSE SW Project Management / Module 11 - Overview of Size Estimating Copyright © , Dennis J. Frailey, All Rights Reserved CSE7315M11 Slide.
CSE SW Project Management / Module 19 - Some Popular Effort Estimation Models Copyright © , Dennis J. Frailey, All Rights Reserved CSE7315M19.
CSE SW Project Management / Module 18 - Introduction to Effort Estimating Models Copyright © , Dennis J. Frailey, All Rights Reserved CSE7315M18.
1 Chapter 2 SW Process Models. 2 Objectives  Understand various process models  Understand the pros and cons of each model  Evaluate the applicability.
Project Cost Estimation and Management. Learning Objectives Understand the importance of project cost management. Explain basic project cost management.
INFSY 570 DR. R. OCKER Software Project Planning.
The Information Systems Development Processes Chapter 9.
Chapter 33 Estimation for Software Projects
Project Cost Management
Systems Analysis and Design
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
COCOMO Model Basic.
More on Estimation In general, effort estimation is based on several parameters and the model ( E= a + b*S**c ): Personnel Environment Quality Size or.
Chapter 33 Estimation for Software Projects
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
Chapter 26 Estimation for Software Projects.
Center for Software and Systems Engineering,
Presentation transcript:

Copyright , Dennis J. Frailey CSE7315 – Software Project Management CSE7315 M20 - Version 9.01 SMU CSE 7315 Planning and Managing a Software Project Module 20 More Effort Estimation Models

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Objectives of This Module  To discuss some additional Effort Estimating models  To discuss conversion from effort to cost  To discuss more about Cocomo II

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version The Big Picture for Cost Estimating Estimate Size Estimate Effort and Cost Estimate Schedule Evaluate Source Information Statement of Work Requirements Constraints Standards Processes History etc. WBSSize Effort & Cost Schedule OK Complete Detailed Planning Revise & Negotiate Not OK

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Bottom-Up Effort Estimating

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Architecture of Spreadsheet Model Based Effort Estimate Other Effort Estimates... Historical Size Estimate Software Reuse Analysis Final Effort Estimate Productivity Based Effort Estimate Other Size Estimates... Final Size Estimate Delphi Size Estimate Size / Reuse EffortEffort & Cost Schedules Generic Schedule Effort Schedule Labor Schedule Cost Schedule

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Bottom-Up Effort Estimating  This method may take a lot of time  It may or may not be based on size estimates

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Bottom-Up Estimating Process 1) Break the software down into components -- as detailed as you can –Break down until the individual parts are small enough for an individual to develop in a short time (1 week to 1 month perhaps) –If you do not know, make a reasonable estimate of how you might break each part of the software into smaller parts 2) Estimate each part 3) Combine estimates

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Sample Breakdown Data base I/F Error Processor Sort Module Synchro- nizer Command Processor Table Interface JoeMary & Jim Bert & Sally JoeBertSally Parser Code Generator File System Run Time System User Interface Manage Software Development Build “C” Compiler Build Test Suite Write Documentation Write Installation Software Software for “C” Compiler

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Sample Estimate 6 SW 1 SW 4 SW 5 SW 3 SW 4 SW JoeMary & Jim Bert & Sally JoeBertSally 12 SW28 SW23 SW14 SW18 SW 95 SW33 SW12 SW22 SW 180 SW

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version For an Object Oriented Design You May Break it Up Differently Class “Query” Subclass “User Response” Class “Error Code” Class “Response” Subclass “System Response” Subclass “Maintenance Response”

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Bottom-Up Estimating Benefits  Each part of the project is estimated by someone who knows that part well  Individuals “buy in” to the estimate because it was based on their expertise  It is easy to compare actuals with estimates and determine if and where you went wrong

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Architecture of Spreadsheet Model Based Effort Estimate Other Effort Estimates... Historical Size Estimate Software Reuse Analysis Final Effort Estimate Productivity Based Effort Estimate Other Size Estimates... Final Size Estimate Delphi Size Estimate Size / Reuse EffortEffort & Cost Schedules Generic Schedule Effort Schedule Labor Schedule Cost Schedule

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Compare Results and Judge

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Cost Estimating

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version There are Many Costs Other Than Software Development WBS Estimate Size and Then Effort Estimate Costs Directly or as % of Development Costs Software Development Tasks requirements design code... Other Tasks and Costs management travel training overhead facilities equipment software … Convert to $ Total Cost Estimate Total Cost Estimate

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Turning Effort into Cost  Turning effort estimates into cost estimates depends on many factors that depend on your specific company –Overhead rates –Cost of borrowing money –Methods of calculating profit margin –Allocations of management and support expenses –Costs of capital equipment –etc.

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version One Way to Convert Effort to $ Category% of TotalSalary Rate # Requirements10%$65/hour Design10%$50/hour Code30%$40/hour Test30%$30/hour Other5%$15/houretc. # use rate per hour if effort is measured in staff-hours use rate per day if effort is measured in staff-days etc.

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Multiply the Effort by the Percentages to get the Labor Distribution and $ 10,000 hours: 1000 hours - requirements x $65 = $65, hours - design x $50 = $50, hours - code x $40 = $120, hours - test x $30 = $90,000 etc. Total: $xxx,xxx

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version A Note About the Labor Rate Chart  Be sure to correlate the percentages with the “experience level” factors assumed in your effort estimate >> It is tempting to cut costs estimates by boosting the percentage of lower cost staff -- check what this does to the cost drivers first!!! <<

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Supplement - Cocomo II (1)  Barry Boehm and his colleagues at the University of Southern California are working on a new version of Cocomo that better represents modern programming practices and such  An initial version of the model has been released  The next few slides will review some of the important concepts in the new model (1) Boehm, et. al., USC Center for Software Engineering

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Cocomo Versions and Limitations Original (1981) - custom, “build to specs” software development projects Ada (1989) - custom, written in Ada These models were not calibrated to:  Business software  Object-oriented software  Commercial, off-the-shelf application composition  Evolutionary development

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Cocomo II Objectives  Fit lifecycle practices of the 21st century  Support continuous improvement of the model  Support evaluating the effects of software technology improvements on life cycle costs and schedules

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Future Software Practices Marketplace Model (1) (1) extrapolated from Silvestri and Likasieicz, “Occupational Employment Projections,” [Bureau of Labor Statistics moderate- growth labor distribution scenario for the year 2005] Monthly Labor Review 114 (11), November 1991, pp Infrastructure (operating systems, networks, major products) (0.75 Million Performers in the U.S.) End-User Programming (55 Million Performers in the U.S.) System Integration (0.7 Million) Application Composition (0.7 Million) Application Generators & Composition Aids (0.6 Million)

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Duration of Typical SW Development Effort Infrastructure (operating systems, networks, major products) 1-6 years System Integration Application Composition 1-6 months Application Generators & Composition Aids End-User Programming 1-6 hours

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version The Middle Layers  Application Generators -- creation of prepackaged capabilities for end users System Integration (0.7 Million) Application Generators and Composition Aids (0.6 Million) Application Composition (0.7 Million)

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version The Middle Layers (continued) System Integration (0.7 Million) Application Generators and Composition Aids (0.6 Million) Application Composition (0.7 Million) Application Composition -- from interoperable components such as GUI builders, database systems, object managers (middleware)

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version The Middle Layers (continued)  System Integration -- similar to custom applications but with heavy use of prepackaged tools and application composition System Integration (0.7 Million) Application Generators and Composition Aids (0.6 Million) Application Composition (0.7 Million)

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Cocomo II Strategy  Several submodels for the various sectors described above  Tailoring of submodels to project details  Combination of submodels for each situation, as required

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Additional Cocomo II Information Under development at University of Southern California, Cocomo II project. For More Information on Cocomo II: research/COCOMOII/index.html

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Matching Models to Sectors End User Programming –No Need for a Cocomo Model –Relatively short development Application Composition –Based on Object Points (1) Application Generator & System Integration –Tailored mix of Application Composition (for prototyping) and more detailed models (1) Banker, Kauffman, Kumar, “An Empirical Test of Object-Based Output Measurement Metrics in a Computer Aided Software Engineering Environment,” Journal of Management Information Systems, 1994.

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Three-Stage Series of Models 1) (prototyping / application composition) Application composition model based on object points 2) (exploration of alternatives, incremental development) Early Design model based on function points and five cost drivers (one for each major category in original Cocomo)

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Three-Stage Series of Models (continued) 3) (final development of fielded system) Post-Architecture model, similar to current Cocomo model. Uses SLOC or function points.

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Each Stage Produces Three Values  Optimistic Estimate  Expected Value  Pessimistic Estimate These correspond to the two outer curves and the “dots” shown on the next slide

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Estimating Accuracy vs. Phase Typical Estimate Application Composition Model Early Design Model Post Architecture Model

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version Module Summary  Bottom-up estimating can be costly and slow, but generates strong “buy-in”  Cocomo II is an emerging approach that applies Cocomo and other models to newer methods of software development  Cocomo II also recognizes that estimates must be refined and updated as a project progresses

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version General References on Estimating Cost Boehm, Software Engineering Economics (Prentice- Hall, 1981); Software Cost Estimation With COCOMO II (Prentice Hall, July 2000) Boehm, et. al., Cost Models for Future Software Life Cycle Processes: Cocomo 2.0, Technical Report, USC Center for Software Engineering, Draft 2.0, September 6, Brooks, Fred, The Mythical Man-Month, 1975 / Tausworthe, R.C. Software Specifications Document, DSN Software Cost Model, Jet Propulsion Laboratory, JPL Publication 81-7 (1981).

Copyright , Dennis J. Frailey CSE7315- Software Project Management CSE7315 M20 - Version END OF MODULE 20