In The Name Of God Software Development Management Presentors: Mostafa Abdollahi Ehsan Khodarahmi Fall-2010.

Slides:



Advertisements
Similar presentations
COST ESTIMATION TECHNIQUES AND COCOMO. Cost Estimation Techniques 1-)Algorithmic cost modelling 2-)Expert judgement 3-)Estimation by analogy 4)-Parkinsons.
Advertisements

Estimation using COCOMO More Science, Less Art. COCOMO History COCOMO History Constructive Cost Model Dr. Barry Boehm TRW in 1970s COCOMO
Software Cost Estimation
The Comparison of the Software Cost Estimating Methods
Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page: Software.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 23Slide 1 Software Cost Estimation.
Software project management (intro)
1 COST ESTIMATION Basics, COCOMO, FP. 2 What is estimated? TIME MONEY TIME: –duration, chronological weeks, months, years –effort, person-month (man-month)
GPII-2A Planning a software project: Estimation & Measurement.
Software Project Planning CS 414 – Software Engineering I Donald J. Bagert Rose-Hulman Institute of Technology December 12, 2002.
Measuring process attributes. Good Estimates Predictions are needed for software development decision-making (figure 12.1) A prediction is useful only.
SOFTWARE PROJECT MANAGEMENT AND COST ESTIMATION © University of LiverpoolCOMP 319slide 1.
Chapter 23 – Project planning Part 2. Estimation techniques  Organizations need to make software effort and cost estimates. There are two types of technique.
Software Cost Estimation Hoang Huu Hanh, Hue University hanh-at-hueuni.edu.vn.
Estimating Software Size Part I. This chapter first discuss the size estimating problem and then describes the PROBE estimating method used in this book.
Information System Economics Software Project Cost Estimation.
© The McGraw-Hill Companies, Software Project Management 4th Edition Software effort estimation Chapter 5.
1 ECE 453 – CS 447 – SE 465 Software Testing & Quality Assurance Lecture 22 Instructor Paulo Alencar.
COCOMO Models Ognian Kabranov SEG3300 A&B W2004 R.L. Probert.
This document is proprietary to Project Consulting Group, Inc. and contains confidential information which is solely the property of Project Consulting.
Estimation Why estimate? What to estimate? When to estimate?
Project Management Estimation. LOC and FP Estimation –Lines of code and function points were described as basic data from which productivity metrics can.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 26 Slide 1 Software cost estimation 1.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 23Slide 1 Chapter 23 Software Cost Estimation.
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.
A Brief Introduction to COCOMO Hossein Saiedian EECS810: Software Engineering.
1 Software Cost Estimation. Outline  Introduction  Inputs and Outputs  Methods of Estimation  COCOMO  Conclusion 2.
Software cost estimation Predicting the resources required for a software development process 1.
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.
Project Estimation Model By Deepika Chaudhary. Factors for estimation Initial estimates may have to be made on the basis of a high level user requirements.
Quality Software Project Management Software Size and Reuse Estimating.
1 Chapter 3 1.Quality Management, 2.Software Cost Estimation 3.Process Improvement.
Project Estimation techniques Estimation of various project parameters is a basic project planning activity. The important project parameters that are.
©Ian Sommerville 2000Software Engineering, 7th edition. Chapter 26Slide 1 Software cost estimation l Predicting the resources required for a software development.
SFWR ENG 3KO4 Slide 1 Management of Software Engineering Chapter 8: Fundamentals of Software Engineering C. Ghezzi, M. Jazayeri, D. Mandrioli.
Software Project Estimation IMRAN ASHRAF
Overview of COCOMO Reporter:Hui Zhang
1 Planning a Software Project. 2 Defining the Problem Defining the problem 1.Develop a definitive statement of the problem to be solved. Include a description.
©Ian Sommerville, adapted by Werner Wild 2004Project Management Slide 1 Software cost estimation u Predicting the resources required for a software development.
Software cost estimation. Fundamental estimation questions How much effort is required to complete an activity? How much calendar time is needed to complete.
Estimation using COCOMO
Function Points Synthetic measure of program size used to estimate size early in the project Easier (than lines of code) to calculate from requirements.
Guide to Computer Forensics and Investigations, 2e CC20O7N Software Engineering 1 Guide to Computer Forensics and Investigations, 2e CC20O7N Software.
Estimating “Size” of Software There are many ways to estimate the volume or size of software. ( understanding requirements is key to this activity ) –We.
Software Engineering (CSI 321) Project Planning & Estimation 1.
The COCOMO model An empirical model based on project experience. Well-documented, ‘independent’ model which is not tied to a specific software vendor.
Chapter 7: Project Cost Management
(6) Estimating Computer’s efficiency Software Estimation The objective of Software Estimation is to provide the skills needed to accurately predict the.
Chapter 5: Software effort estimation
بشرا رجائی برآورد هزینه نرم افزار.
(8) Potential required for planning with management Top-Down Estimating Method: Top-down estimating method is also called Macro Model. Using it, estimation.
Software Engineering, COMP201 Slide 1 Software Engineering CSE470.
Software Engineering, COMP201 Slide 1 Software Engineering CSE470.
Cost Estimation Software Quality Assurance and Testing.
Estimation Questions How do you estimate? What are you going to estimate? Where do you start?
Project Cost Management
Cost Estimation Models
Software Cost Estimation
Constructive Cost Model
Software Development & Project Management
COCOMO Model Basic.
Chapter 5: Software effort estimation- part 2
Chapter 5: Software effort estimation
Activities During SPP Size Estimation
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.
COCOMO Models.
Software Development Cost Estimation Chapter 5 in Software Engineering by Ian Summerville (7th edition) 4/7/2019.
Software Cost Estimation
Presentation transcript:

In The Name Of God Software Development Management Presentors: Mostafa Abdollahi Ehsan Khodarahmi Fall-2010

Mazandaran University of Science & Technology SDM-Software Cost Estimation Introduction Inputs and Outputs Methods of Estimation COCOMO Conclusion 2 Outline

Mazandaran University of Science & Technology SDM-Software Cost Estimation 55% of projects over budget 24 companies that developed large distributed systems 53% of projects cost 189% more than initial estimates Based on 8,380 projects(1994) 3 Why Cost Estimation?

Mazandaran University of Science & Technology SDM-Software Cost Estimation Hardware and software costs Travel and training costs Effort costs (the dominant factor in most projects) Salaries of engineers involved in the project Social and insurance costs Effort costs must take overheads into account costs of building, heating, lighting costs of networking and communications costs of shared facilities (e.g library, staff restaurant, etc.) 4 Software cost components

Mazandaran University of Science & Technology SDM-Software Cost Estimation Estimates are made to discover the cost, to the developer, of producing a software system There is not a simple relationship between the development cost and the price charged to the customer Broader organisational, economic, political and business considerations influence the price charged 5 Costing and pricing

Mazandaran University of Science & Technology SDM-Software Cost Estimation Someone responsible for the implementation Can compare previous projects in organization to current project Usually experienced Someone from outside of organization Can provide unbiased estimate Tend to use empirical methods of estimation 6 Who is Estimator?

Mazandaran University of Science & Technology SDM-Software Cost Estimation Establish Plan What data should we gather Why are we gathering this data What do we hope to accomplish Do cost estimation for initial requirement Decomposition Use several Methods There is no perfect technique If get wide variances in methods, then should reevaluate the information used to make estimates 7 General Steps

Mazandaran University of Science & Technology SDM-Software Cost Estimation Do re-estimates during life cycle Make any require changes to development Do a final assessment of cost estimation at the end of the project 8 General Steps(cont.)

Mazandaran University of Science & Technology SDM-Software Cost Estimation Definition A set of techniques and procedures that is used to derive the cost estimate Set of inputs to the process and then process will use these inputs to generate the output 9 Software Cost Estimation Process Classical view of software estimation process

Mazandaran University of Science & Technology SDM-Software Cost Estimation To determine how well a cost estimation model predicts Assessing model performance Absolute Error = (E pred – E act ) Percentage Error = (E pred – E act ) / E act 10 Cost Estimation Accuracy

Mazandaran University of Science & Technology SDM-Software Cost Estimation 11 Cost Estimation Methods Methods Algorithmic (Parametric) Algorithmic (Parametric) Expert Judgment Top-Down Estimation by Analogy Bottom-Up Price to Win Estimation

Mazandaran University of Science & Technology SDM-Software Cost Estimation Use of mathematical equations to perform software estimation Equations are based on theory or historical data Use input such as SLOC, number of functions to perform and other cost drivers 12 Algorithmic (Parametric) Model

Mazandaran University of Science & Technology SDM-Software Cost Estimation Advantages Generate repeatable estimations Easy to modify input data Easy to refine and customize formulas Disadvantages Unable to deal with exceptional conditions Some experience and factors can not be quantified Sometimes algorithms may be proprietary 13 Algorithmic (Parametric) Model (Cont.)

Mazandaran University of Science & Technology SDM-Software Cost Estimation Capture the knowledge and experience of the practitioners and providing estimates based upon all the projects to which the expert participated. Examples Delphi Developed by Rand Corporation in 1940 where participants are involved in two assessment rounds. Work Breakdown Structure (WBS) A way of organizing project element into a hierarchy that simplifies the task of budget estimation and control 14 Expert Judgment

Mazandaran University of Science & Technology SDM-Software Cost Estimation Advantages Useful in the absence of quantified, empirical data. Can factor in differences between past project experiences and requirements of the proposed project Can factor in impacts caused by new technologies, applications and languages. Disadvantages Estimate is only as good expert’s opinion Hard to document the factors used by the experts 15 Expert Judgment (Cont.)

Mazandaran University of Science & Technology SDM-Software Cost Estimation Also called Macro Model Derived from the global properties of the product and then partitioned into various low level components 16 Top - Down

Mazandaran University of Science & Technology SDM-Software Cost Estimation Advantages – Requires minimal project detail – Usually faster and easier to implement – Focus on system level activities Disadvantages – Tend to overlook low level components – No detailed basis 17 Top – Down (Cont.)

Mazandaran University of Science & Technology SDM-Software Cost Estimation Cost of each software components is estimated and then combine the results to arrive the total cost for the project The goal is to construct the estimate of the system from the knowledge accumulated about the small software components and their interactions 18 Bottom - Up

Mazandaran University of Science & Technology SDM-Software Cost Estimation Advantages More stable More detailed Allow each software group to hand an estimate Disadvantages May overlook system level costs More time consuming 19 Bottom – Up (Cont.)

Mazandaran University of Science & Technology SDM-Software Cost Estimation Comparing the proposed project to previously completed similar project in the same application domain Actual data from the completed projects are extrapolated Can be used either at system or component level 20 Estimation by Analogy

Mazandaran University of Science & Technology SDM-Software Cost Estimation Advantages Based on actual project data Disadvantages Impossible if no comparable project had been tackled in the past. How well does the previous project represent this one 21 Estimation by Analogy (Cont.)

Mazandaran University of Science & Technology SDM-Software Cost Estimation Price believed necessary to win the contract Advantages Often rewarded with the contract Disadvantages Time and money run out before the job is done 22 Price to Win Estimation

Mazandaran University of Science & Technology SDM-Software Cost Estimation COCOMO stands for COnstructive COst MOdel It is an open system First published by Dr Barry Bohem in 1981 Worked quite well for projects in the 80’s and early 90’s Could estimate results within ~20% of the actual values 68% of the time 23 COCOMO 81

Mazandaran University of Science & Technology SDM-Software Cost Estimation COCOMO has three different models (each one increasing with detail and accuracy): Basic, applied early in a project Intermediate, applied after requirements are specified. Advanced, applied after design is complete COCOMO has three different modes: Organic – relatively small software teams develop software in a highly familiar, in-house environment Embedded – operate within tight constraints, product is strongly tied to complex of hardware, software, regulations, and operational procedures Semi-detached – intermediate stage somewhere between organic and embedded. 24 COCOMO 81

Mazandaran University of Science & Technology SDM-Software Cost Estimation MM = a * (KLOC) b *EAF TDEV = c * (MM) d People required = MM / TDEV MM is Effort Applied (in man-months) TDEV is Time Duration Estimated Value (in months) EAF is the Effort Adjustment Factor derived from the Cost Drivers, EAF for the basic model is 1 The values for a, b, c, and d differ depending on which mode you are using 25 COCOMO Equations Modeabcd Organic Semi Detached Embedded

Mazandaran University of Science & Technology SDM-Software Cost Estimation 26 COCOMO Scaling Factors

Mazandaran University of Science & Technology SDM-Software Cost Estimation A simple example: Project is a flight control system (mission critical) with 310 KLOC in embedded mode Reliability must be very high (RELY=1.40). So we can calculate: MM = a * (KLOC) b *EAF – Effort = 1.40*3.6*(310) 1.20 = 4921 MM TDEV = c * (MM) d – Schedule = 2.5*(4921) 0.32 = months People required = MM / TDEV – Average Staffing = 4921 MM/37.96 months = An Example

Mazandaran University of Science & Technology SDM-Software Cost Estimation The exponent value b in the effort equation is replaced with a variable value based on five scale factors rather then constants Size of project can be listed as object points, function points or source lines of code (SLOC). EAF is calculated from seventeen cost drivers better suited for today's methods, COCOMO81 has fifteen 28 COCOMO II Differences

Mazandaran University of Science & Technology SDM-Software Cost Estimation COCOMO is the most popular method however for any software cost estimation you should really use more then one method Best to use another method that differs significantly from COCOMO so your project is examined from more then one angle Even companies that sell COCOMO based products recommend using more then one method. 29 Is COCOMO the Best?

Mazandaran University of Science & Technology SDM-Software Cost Estimation Project costs are being poorly estimated The accuracy of cost estimation has to be improved Use several methods of estimation 30 Conclusions

Mazandaran University of Science & Technology SDM-Software Cost Estimation Boehm B., Clark B., Horowitz E., Madachy R., Shelby R., Westland C. (1995). Cost Models for Future Software Life Cycle Processes: COCOMO 2.0, Annals of Software Engineering. Boehm B., Clark B., Horowitz E., Madachy R., Shelby R., Westland C. (1995). An Overview of the COCOMO 2.0 Software Cost Model. Boehm B., Chulani S., Clark B. (1997). Calibration Results of COCOMO II /CalPostArch.pdf. 502/CalPostArch.pdf Boehm B., Chulani S., Clark B. (1997). Calibrating the COCOMO II Post Architecture Model. Boehm B., Chulani S., Reifer D., The Rosetta Stone: Making COCOMO 81 Files Work With COCOMO II /usccse pdf /usccse pdf Chulani, S. (1998). Software Development Cost Estimation Approaches – A Survey. IBM Research. Humphrey, W.S. (1990). Managing the Software Process. Addison- Wesley Publishing Company, New York, NY. 31 References

Mazandaran University of Science & Technology SDM-Software Cost Estimation Questions and Discussion 32