Effort Estimation Review Class 11 Effort estimation General Estimation Model COCOMO Model CEN 4021 Class 12 – 02/21.

Slides:



Advertisements
Similar presentations
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Advertisements

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Metrics for Process and Projects
Metrics for Process and Projects
Chapter 26 Estimation for Software Projects
Software Cost Estimation Main issues:  What factors determine cost/effort?  How to relate effort to development time?
The Comparison of the Software Cost Estimating Methods
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)
CSC 395 – Software Engineering
1 Cost Estimation CIS 375 Bruce R. Maxim UM-Dearborn.
Information System Economics Software Project Cost Estimation.
University of Toronto Department of Computer Science © 2001, Steve Easterbrook CSC444 Lec22 1 Lecture 22: Software Measurement Basics of software measurement.
CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Software Project Planning.
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.
After Lesson 6 next is Lesson 13 to fit topic on Software Development SOFTWARE PROJECT MANAGEMENT.
Chapter 6 : Software Metrics
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.
CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Effort estimation.
A Brief Introduction to COCOMO Hossein Saiedian EECS810: Software Engineering.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
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.
Software cost estimation Predicting the resources required for a software development process 1.
1 Chapter 23 Estimation for Software Projects. 2 Software Project Planning The overall goal of project planning is to establish a pragmatic strategy for.
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.
Estimation - Software Metrics Managers frequently have to measure the productivity of software engineers.
SEG3300 A&B W2004R.L. Probert1 COCOMO Models Ognian Kabranov.
Project Management All projects need to be “managed” –Cost (people-effort, tools, education, etc.) –schedule –deliverables and “associated” characteristics.
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
©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.
Empirical Estimation Models Based upon historic data Basic Structure E = A + B * (ev) C where A, B, c are empirical constants ‘ev’ is the effort in terms.
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.
Advanced Software Engineering Lecture 4: Process & Project Metrics.
Cost Estimation Cost Estimation “The most unsuccessful three years in the education of cost estimators appears to be fifth-grade arithmetic. »Norman.
1 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.
1 Week 11 Software Engineering Fall Term 2015 Marymount University School of Business Administration Professor Suydam.
INFSY 570 DR. R. OCKER Software Project Planning.
بشرا رجائی برآورد هزینه نرم افزار.
Chapter 33 Estimation for Software Projects
Project Cost Management
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
Constructive Cost Model
COCOMO Model Basic.
Personal Software Process Software Estimation
Chapter 5: Software effort estimation- part 2
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.
Chapter 33 Estimation for Software Projects
Software metrics.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
Software Cost Estimation
Software Cost Estimation
Chapter 26 Estimation for Software Projects.
COCOMO MODEL.
Presentation transcript:

Effort Estimation Review Class 11 Effort estimation General Estimation Model COCOMO Model CEN 4021 Class 12 – 02/21

CEN 4021 Class /212 Risk Analysis and Planning Defn: Risk – A problem that has a greater then 0% but less than 100% probability of occurrence. A problem is an event that has a negative value associated with it. Risk can be listed, categorized, and potentially managed. The earlier risk are handled the better the chance of project success.

CEN 4021 Class /213 Risk Analysis and Planning cont Sources of Risk: Schedule overrun Quality Misunderstanding of customer requirements Uncontrolled continuous changes of customer requirements Unrealistic promises to customers made by overzealous sales people or company execs.

CEN 4021 Class /214 Risk Prioritization Defn: Risk prioritization - The activity of ordering risks based on some criterion or set of criteria. Recovery cost – The cost in terms of effort or financial expense to solve a problem should a risk materialize. We can define the risk value ( RV ) as follows: RV(j) = P(j) X RC(j) P(j) – the probability of risk item j becoming a real problem RC(j) – is the recovery cost for the risk item j when it turns into a real problem.

CEN 4021 Class /215 Risk Prioritization cont Defn: Risk Value - A recovery cost that is influenced and modified by another criterion or set of criteria. The probability of the risk turning into a problem is such an influencing factor, and when such a factor is taken into account in modifying the recovery cost, the result is the risk value. Defn: Risk mitigation – An activity that may reduce minimize, or totally avoid a risk.

CEN 4021 Class /216 Risk Mitigation cont Mitigation Value Cost The mitigation cost value is defined as follows: MVC(k) = P(k) X MC(k) MVC(K) – mitigation cost value of alternative k P(k) – probability of failure for alternative k MC(k) – raw cost of mitigation for alternative k Mitigation value cost – the cost of risk mitigation after taking into account another criterion or a set of criteria, such as probability of mitigation success

CEN 4021 Class /217 Effort Estimation Software cost and effort estimation will never be an exact science [Pressman 2005] There are too many parameters, e.g., human, technical, environmental, and political parameters, that affect the actual estimation making it almost impossible to have considered all cases. Even if all parameters are considered, the following questions still need to be answered:

CEN 4021 Class /218 Effort Estimation cont 1.How much does each parameter contribute to the total effort estimation? 2.How can the amount of each parameter’s contribution be converted into some numerical form? 3.How do the parameters affect each another? 4.How would these effects be combined? The above point to the fact that there is a lack of good metric definitions related to estimations.

CEN 4021 Class /219 Effort Estimation cont Historically, spmrs have based many of their estimates on some form of “consulting the expert”: –Consult other peer managers with experience –Engage consultants with experience –Draw analogies to past projects that seem to have similar characteristics –Divide and conquer – break project into components and get estimates for each component based on experience, then combine the estimates The practice of consulting the experts and using past experience has worked well in the past

CEN 4021 Class /2110 General Estimation Model It is important to have as accurate an estimation as possible, since this estimate is used in planning the schedule and resources. Several researchers have constructed effort and cost estimation models. To date these models have produced mixed results. Software effort estimation model: A set of information and relationships organized for the purpose of estimating the effort needed to complete a s/w project. The information and the values assigned to the information may vary from project to project.

CEN 4021 Class /2111 General Estimation Model Software effort estimation model cont: Similarly, the relationships may be organized into a mathematical equation, which may vary from project to project. Most models use the following general form, or its derivative, to estimate effort: Effort = (a + [b x (Size c )]) x PROD(f’s) where a, b, c = statistically derived coefficients or best approxs. Size = estimated size of the project f’s = factors that influence the project estimates PROD(f’s) = the product of arithmetically multiplying those factors

CEN 4021 Class /2112 General Estimation Model cont The coefficients a, b, c were derived by fitting the best curve against known data for the Effort and Size parameters for previous projects. Effort is usually measured in terms of person- months expended on the project. Size is usually the number of lines of code created as part of the project. The Size metric is itself a problem! If it is measured in terms of “lines of code” (LOC), then there must be clear definition and agreement on LOC.

CEN 4021 Class /2113 General Estimation Model cont How do you define LOC? –Should LOC include only executable code? –What about documentation of code? –Is an LOC written in assembler the same an LOC in C++ or JavaScript? –How do we account for the difference between an LOC in assembler language code and an LOC in an HLL? More recently function points have been introduced as a possible alternative for the Size parameter.

CEN 4021 Class /2114 General Estimation Model cont Estimates the amount of functionality. How do you define a function point (FP)? 1.A value is assigned to each of five attributes: inputs, outputs, inquires, master files, and interfaces. Represents five functional components of a s/w product and each is assigned a weight. The weighed attributes are summed to give an initial estimate of function points called the unadjusted function point. 2.Fourteen factors related to the s/w are used to adjust the initial estimate. These factors include considerations such as portability, reusability, performance criteria, and distributed data needs.

CEN 4021 Class /2115 General Estimation Model cont How do you define a function point (FP) cont? 2 cont: Each factor is assigned a value ranging from 0 to 5. The sum of the values of these factors is multiplied by 0.01 plus a constant value of (?) The sum, which is called the total complexity factor, may range from 0.65 to The function point is computed by multiplying the adjusted function point and the total complexity factors. One may view the function point estimate of s/w as the adjusted function point estimate that has experienced a 14-factor adjustment. See example on handout.

CEN 4021 Class /2116 General Estimation Model cont Other Factors affecting Project Effort The effort required for a project also depends on the conditions under which the project is being undertaken. These conditions include among others: –Programmer productivity –S/w support services e.g., levels of testing e.g., 3 levels (functional, component, system) vs. 2 levels (functional, system) –Maturity of the organization, working with an established process. –Type and amount of tool support

CEN 4021 Class /2117 General Estimation Model cont All the preceding factors, the f’s in the general estimation equation, affect the project. It is a good idea to have a standard list of factors to be considered during estimation. This list will: –serve as a reminder –bring some consistency to what the spmrs consider The list of factors (f’s) may also be interrelated. The question of how to account for the combined effects of all these factors continues to be a perplexing challenge.

CEN 4021 Class /2118 The COCOMO Effort Estimation Model The COnstructive COst Model (COCOMO) is a specific example of the general estimation equation developed by Boehm in the 1980’s. COCOMO includes 3 levels of models: 1.A macro estimation model 2.An intermediate-level model 3.A more detailed micro estimation model The intermediate model is used in the example in the text.

CEN 4021 Class /2119 The COCOMO Model cont General process of using the COCOMO is: 1.Choose an estimate of what would be considered the “nominal” (typical) development of the project. Three nominal project modes are defined: Organic, Semidetached, and Embedded. 2.Choose an estimate of the size of the project to use the Size parameter. 3.Review the factors that influence the project, the cost drivers, and estimate the influence that each factor will have on the chosen “nominal” case.

CEN 4021 Class /2120 The COCOMO Model cont General process of using the COCOMO is cont: 4.Determine the effort for the s/w project by inserting the estimated values into the Effort Formula. Nominal Mode of Development The following key project characteristics are used to identify one of the three nominal models: A.The teams understanding of the project objective B.The teams experience with similar or related projects C.The project’s need to conform with the est. reqs.

CEN 4021 Class /2121 The COCOMO Model cont D.The project’s need to conform with the established external interfaces E. The need to develop the project concurrently with new systems and new operational procedures F.The project’s need for new and innovative technology, architecture, or other constraints G.The project’s need to meet or beat the schedule H.The project’s size range Organic mode – projects are fairly easy and familiar to the s/w development team.

CEN 4021 Class /2122 The COCOMO Model cont Semidetached mode – projects are medium sized and some what familiar to the s/w development team. Embedded mode – complex projects that may be unfamiliar to the project team. The above summary statements should be used as a starting point in the decision process when choosing the most appropriate mode for the project estimate. See Table on next page (Table 17.1 in text)

CEN 4021 Class /2123 Key project charac. Organic modeSemidetached modeEmbedded mode ADetail degreeConsiderable degree Only general degree BExtensive amountSome amountNone to modest amount COnly the basic onesConsiderably more than the basic ones All and full conformance DOnly the basic onesConsiderably more than the basic ones All and full conformance ELittle to someModerate amountExtensive amount FNone to minimalSomeConsiderable GLowMediumMust H< 50,000 delivered LOC 50,000 to 30,000 delivered LOC All sizes Table 17.1 Mode of the Development Use in COCOMO

CEN 4021 Class /2124 The COCOMO Model cont An untrained spmr might not be able to easily choose the correct mode. Very few projects have characteristics that fall neatly within any one of the mode categories. For each of the three modes, a different formula is used for estimating the Effort: Organic: Effort (in person-months) = 3.2 x (Size) 1.05 Semidetached: Effort (in person-months) = 3.2 x (Size) 1.12 Embedded: Effort (in person-months) = 3.2 x (Size) 1.20 Size is expressed as LOC.

CEN 4021 Class /2125 The COCOMO Model cont Estimating lines of code early in the project may be difficult. Therefore some estimation techniques use function points. The new COCOMO II offers the following estimation model: Effort = 2.45 x (Size) m x PROD(f’s) Here Size may be either function points or LOC. PROD(f’s) is a product of several factors that influence the project m varies in value depending on the project situtation

CEN 4021 Class /2126 The COCOMO Model cont If the project is large and there is a lot of communication and integration overhead, then m > 1. If the project has a high potential for savings due to better tools, better processes, or better people, then m < 1 If the project has neither great overhead or great savings then m = 1. A set of 15 factors, cost drivers, influence the project.