TCS2411 Software Engineering1 Software Cost Estimation “What do you need for the project?”

Slides:



Advertisements
Similar presentations
A SEMINAR ON COCOMO Presentation by, Kongkon Mahanta MCA 4 th sem Roll no- 8.
Advertisements

Estimation using COCOMO More Science, Less Art. COCOMO History COCOMO History Constructive Cost Model Dr. Barry Boehm TRW in 1970s COCOMO
Chapter 26 Estimation for Software Projects
Copyright 2000, Stephan Kelley1 Estimating User Interface Effort Using A Formal Method By Stephan Kelley 16 November 2000.
TCS2411 Software Engineering1 Project Plan “What are you going to do in the project?”
Project Risks and Feasibility Assessment Advanced Systems Analysis and Design.
Ch8: Management of Software Engineering. 1 Management of software engineering  Traditional engineering practice is to define a project around the product.
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.
TCS2411 Software Engineering1 Monitoring & Controlling Projects “Do you know what’s happening in the project?”
Measuring process attributes. Good Estimates Predictions are needed for software development decision-making (figure 12.1) A prediction is useful only.
CSC 395 – Software Engineering
TCS2411 Software Engineering1 Software Requirements Specification “Writing down the requirements”
Chapter 23 – Project planning Part 2. Estimation techniques  Organizations need to make software effort and cost estimates. There are two types of technique.
1 Cost Estimation CIS 375 Bruce R. Maxim UM-Dearborn.
Information System Economics Software Project Cost Estimation.
© The McGraw-Hill Companies, Software Project Management 4th Edition Software effort estimation Chapter 5.
SOFTWARE COST ESTIMATION
Cost22 1 Question of the day u If you were the boss, what would you do for cost estimation?
ECE 355: Software Engineering
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.
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 2000Software Engineering, 6th edition. Chapter 23Slide 1 Chapter 23 Software Cost Estimation.
CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Effort 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.
CS /39 Illinois Institute of Technology CS487 Software Engineering David A. Lash.
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.
Group Members: Ayush Newatia, Barry Foye, Billy Felton, Kevin Anderson, Shahnaz Begum and Adam Jasinski Constructive Cost Model is a technique used to.
1 Lecture 17: Chapter 26 Estimation for Software Projects Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman.
Introduction to Software Engineering ECSE-321 Unit 4 – Project Management 10/19/2015Introduction to Software Engineering – ECSE321Unit 4 – Project Management/1.
T. E. Potok - University of Tennessee CS 594 Software Engineering Lecture 3 Dr. Thomas E. Potok
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.
Estimating Software Projects & Activity Scheduling in the Dynamic, Multi-Project Setting: Choosing Heuristics Through Deterministic Simulation.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 26 Slide 1 Software cost estimation 2.
©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
Cost9a 1 Software Estimating Technology: A Survey Richard Stutzke Crosstalk, May96 text pp
©Ian Sommerville, adapted by Werner Wild 2004Project Management Slide 1 Software cost estimation u Predicting the resources required for a software development.
Lecture 4: Software Process Management Dr Valentina Plekhanova University of Sunderland, UK
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.
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.
Software Engineering (CSI 321) Project Planning & Estimation 1.
Rating Very Very Extra Cost Drivers Low Low Nominal High High High Product Attributes Required software reliability Database size.
(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
بشرا رجائی برآورد هزینه نرم افزار.
COCOMO Software Cost Estimating Model Lab 4 Demonstrator : Bandar Al Khalil.
Chapter 33 Estimation for Software Projects
Project Cost Management
Software Estimating Technology: A Survey
Software Project Management
Software Project Management
Software Planning
Constructive Cost Model
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.
COCOMO Models.
Chapter 33 Estimation for Software Projects
Software Cost Estimation
COnstructive COst MOdel
COCOMO MODEL.
Presentation transcript:

TCS2411 Software Engineering1 Software Cost Estimation “What do you need for the project?”

TCS2411 Software Engineering2 Lecture Objectives zTo describe different methods of estimation for a software project zTo understand the factors that affects the estimation of a software development project

TCS2411 Software Engineering3 What Do You Estimate? zTime (schedule) zResources zCost

TCS2411 Software Engineering4 Three-point Estimation Technique zEstimate 3 values For each function or count for each information domain value yOptimistic value (s opt ) yMost likely value (s m ) yPessimistic value (s pess ) zCompute the expected value (EV) for the estimation variable (size), S is:

TCS2411 Software Engineering5 Time Estimates Example

TCS2411 Software Engineering6 Project Schedule Calculation of the project duration and critical path uses the following times: zEarliest Start Time (EST) yEarliest possible time an activity can begin without interfering with the completion of preceding activity zLatest Finish Time (LFT) yLatest time an activity can be completed without delaying the end of the project

TCS2411 Software Engineering7 Calculating Earliest Start Times zStart with the first node, which has time 0 zIf only one arrow leads into a node, EST at that node is EST for previous node + time estimate AB EST=0 EST=5EST=7 5 2

TCS2411 Software Engineering8 Calculating Earliest Start Times (Continued) zIf more than one arrow leads to a node, the EST of the node is the largest time value of the separate paths C D EST=3 EST=7 EST=5 2 3

TCS2411 Software Engineering9 Project Duration zWhen all the ESTs have been calculated, the EST at the last node is the project duration zThe project duration is also the LFT of the last node zThe calculation is then ‘reversed’ to previous nodes for the LFT values

TCS2411 Software Engineering10 Calculating Latest Finish Times zStart with the last node, which has LFT = project duration zIf only one arrow originates from a node, LFT at that node is LFT for next node - time estimate EF LFT=6 LFT=9LFT=10 3 1

TCS2411 Software Engineering11 Calculating Latest Finish Times (Continued) zIf more than one arrow originates at a node, the LST of the node is the smallest time value of the separate paths G H LFT=12 LFT=5 LFT=10 5 3

TCS2411 Software Engineering12 Activity Times zAvailable time = LFT - EST yExample, Available time for X = = 7 zTotal float = Available time - time estimate yExample, Float for X = = 3 zThis means that activity X has a ‘slack’ of 3 ycan start late, within 3 days/weeks X LFT=12 EST=5 4

TCS2411 Software Engineering13 Critical Path zAll activities with 0 float time form the critical path of the project zAny delay on these activities will directly affect the project duration

TCS2411 Software Engineering14 Critical Path Example 2 1 G A F E D C B H EST LFT

TCS2411 Software Engineering15 Software Cost Factors zProgrammer Ability zProduct Complexity zProduct Size zAvailable Time zRequired Level of Reliability zLevel of Technology

TCS2411 Software Engineering16 Estimation Options zExpert Judgment yEstimation done by panel of experts zBottom-Up Approach yProject separated into components yEstimate components, then combined zAlgorithmic Models yUse of software metrics, formulas yHistorical models

TCS2411 Software Engineering17 Expert Judgment zOne or more experts are consulted to provide estimates, given information on the software project zInherently top-down approach zCommon approach is to have a panel of experts, who will agree on estimates by consensus zMay be affected by group dynamics zInteresting variation: Delphi technique

TCS2411 Software Engineering18 Delphi Technique zDeveloped by Rand Corporation zCoordinator provide estimator information zEstimator provides estimation individually, without discussion with each other zCoordinator summarises estimations and other responses, distributes for another round of estimation zEstimation repeated as much as required

TCS2411 Software Engineering19 Bottom-Up Approach zProduct or requirements broken down into smaller components zEstimates done for components, then combined for overall estimate zApplies to Work Breakdown Structure, or other similar methods of decomposing the project

TCS2411 Software Engineering20 Bottom-Up Approach (Continued) zEasier to estimate, more accurate and detailed estimate can be done zHowever, the product may be more than the total of the components zAdditional cost may be required to consolidate the components

TCS2411 Software Engineering21 Algorithmic Models zCosts are analyzed using mathematical formulae linking costs with metrics zCommon methods use kLOC zExample: 3-point estimation zDetailed studies of software project provides empirical estimation models zExample: COCOMO

TCS2411 Software Engineering22 Constructive Cost Model (COCOMO) zIntroduced by Barry Boehm zWidely used for effort and cost estimation z3 models: yBasic COCOMO yIntermediate COCOMO yAdvanced COCOMO zSelect a model for estimation, identify ‘mode’ and estimate kLOC, and effort (and cost) is calculated from the model

TCS2411 Software Engineering23 Project Categories

TCS2411 Software Engineering24 Basic COCOMO zComputes software development effort (and cost) as function of program size expressed in estimated lines of code zModel:

TCS2411 Software Engineering25 Basic COCOMO Equations where zE is effort in person-months zD is development time in months zkLOC is estimated number of lines of code

TCS2411 Software Engineering26 Intermediate COCOMO zcomputes software development effort as a function of program size and a set of “cost drivers” that include subjective assessments of product, hardware, personnel, and project attributes zGive rating to 15 attributes, from “very low” to “extra high”, find effort multipllier (from table) and product of all effort multipliers gives an effort adjustment factor (EAF)

TCS2411 Software Engineering27 Cost Driver Attributes zProduct attributes yRequired reliability yDatabase size yProduct complexity zComputer attributes yExecution time constraint yMain storage constraint yVirtual machine volatility yComputer turnaround time

TCS2411 Software Engineering28 Cost Driver Attributes (Continued) zPersonnel attributes yAnalyst capability, Programmer capability yApplications experience yVirtual machine experience yProgramming language experience zProject attributes yUse of modern programming practices yUse of software tools yRequired development schedule

TCS2411 Software Engineering29 Intermediate COCOMO Equation zwhere zE is effort in person-months, zkLOC is estimated number of lines of code

TCS2411 Software Engineering30 Advanced COCOMO zIncorporates all characteristics of intermediate COCOMOwith an assessment of the cost driver’s impact on each step of software engineering process

TCS2411 Software Engineering31 Estimation Issues zHistorical Data zAccuracy zEstimation Technique zAutomation zImproving the Estimate

TCS2411 Software Engineering32 References z“Software Engineering: A Practitioner’s Approach” 5th Ed. by Roger S. Pressman, Mc-Graw-Hill, 2001 z“Software Engineering” by Ian Sommerville, Addison-Wesley, 2001