بشرا رجائی برآورد هزینه نرم افزار.

Slides:



Advertisements
Similar presentations
Estimation for Software Projects
Advertisements

Estimation using COCOMO More Science, Less Art. COCOMO History COCOMO History Constructive Cost Model Dr. Barry Boehm TRW in 1970s COCOMO
Project Estimation: Metrics and Measurement
Metrics. A Good Manager Measures measurement What do we use as a basis? size? size? function? function? project metrics process metrics process product.
Chapter 26 Estimation for Software Projects
Copyright 2000, Stephan Kelley1 Estimating User Interface Effort Using A Formal Method By Stephan Kelley 16 November 2000.
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)
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 Cost Estimation CIS 375 Bruce R. Maxim UM-Dearborn.
Project Planning Instructor: Dr. Jerry Gao. Project Planning Jerry Gao, Ph.D. Jan Software Scope - Obtaining Information Necessary for Scope -
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.
Project Management Estimation. LOC and FP Estimation –Lines of code and function points were described as basic data from which productivity metrics can.
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.
Group Members: Ayush Newatia, Barry Foye, Billy Felton, Kevin Anderson, Shahnaz Begum and Adam Jasinski Constructive Cost Model is a technique used to.
Quality Assurance vs. Quality Control Quality Assurance An overall management plan to guarantee the integrity of data (The “system”) Quality Control A.
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.
1 Chapter 23 Estimation for Software Projects. 2 Software Project Planning The overall goal of project planning is to establish a pragmatic strategy for.
Cost13 1 Cost Estimation Estimates based on LOC. cost13 2 Boehm's COCOMO u Software Engineering Economics u Prentice-Hall c1981 u type COCOMO in a search.
T. E. Potok - University of Tennessee CS 594 Software Engineering Lecture 3 Dr. Thomas E. Potok
Cost Estimation. Problem Our ability to realistically plan and schedule projects depends on our ability to estimate project costs and development efforts.
1 Chapter 5 Software Project Planning. 2 Software Project Planning The overall goal of project planning is to establish a pragmatic strategy for controlling,
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.
Software Project Planning Part II. Troutman's Postulates Profanity is the one language understood by all programmers. Not until a program has been in.
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.
Estimation for Software Projects 1. Software Project Planning 2 The overall goal of project planning is to establish a pragmatic strategy for controlling,
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.
Software Engineering Lecture 5: Project Planning.
Rating Very Very Extra Cost Drivers Low Low Nominal High High High Product Attributes Required software reliability Database size.
INFSY 570 DR. R. OCKER Software Project Planning.
Cost Estimation Software Quality Assurance and Testing.
1 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.
Chapter-7 ESTIMATION FOR SOFTWARE PROJECTS
Chapter 33 Estimation for Software Projects
Software Estimating Technology: A Survey
Software Project Sizing and Cost Estimation
Why Do We Measure? assess the status of an ongoing project
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
Software Project Estimation
Constructive Cost Model
Chapter 26 Estimation for Software Projects
COCOMO Model Basic.
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 Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
Software Cost Estimation
Why Do We Measure? assess the status of an ongoing project
COnstructive COst MOdel
Chapter 26 Estimation for Software Projects.
COCOMO MODEL.
Presentation transcript:

بشرا رجائی برآورد هزینه نرم افزار

An Observation Estimation of resources, cost, and schedule for a software development effort requires experience, access to good historical information, and the courage to commit to quantitative measures when qualitative data are all that exist.

Another Observation Estimation for software project carries inherent risk because of uncertainty in project complexity, project size, and structure (of requirements and problem to be solved).

Major Factors Major factors that influence software cost: product size and complexity programmer ability available time required reliability level of technology

Three Approaches Estimation can be done by using experience and historical data decomposition techniques empirical models

Decomposition Techniques To obtain an estimation, we can decompose the problem to be solved, or decompose the process.

Process-Based Estimation 1. Decompose the process into a set of tasks or activities. 2. Estimate the cost or effort required for each.

Problem-Based Estimation 1.Based on the software scope, decompose the software into problem functions that can be estimated individually. 2.Estimate LOC or FP of each function. 3.Make optimistic (s opt ), most likely (s m ), and pessimistic (s pess ) estimates for each item. Then compute the expected value: EV = (s opt + 4 s m + s pess )/6 4.Apply baseline productivity metrics to compute estimated cost or effort.

Empirical Estimation Models An estimation model provides empirically derived formulas to predict effort as a function of LOC or FP. The data used to support these models are derived from a limited sample. Thus no model is appropriate for all classes of software.

Structure of Estimation Model E = A + BX C where A, B, and C are empirically derived constants, E is the effort in person months, and X is the estimation variable, either in LOC or FP.

LOC-based Model Walston-Felix ModelE = 5.2(KLOC) 0.91 Bailey-Basili ModelE = (KLOC) 1.16 Boehm Model (simple)E = 3.2(KLOC) 1.05 Doty Model for KLOC > 9E = 5.288(KLOC) 1.047

Example: LOC Approach

COCOMO Model The COnstructive COst MOdel Model It is LOC-based. There are three models: basic intermediate detailed.

Three Classes of Software Project Organic -- a relatively small simple project in which small teams with good application experience work to a set of less than rigid requirements. Semi-detached -- an intermediate project in which teams with mixed experience must meet a mix of rigid and less than rigid requirements. Embedded -- a project that must meet tight hardware, software, and operational constraints.

Basic COCOMO Model The basic equations E = a(KLOC) b T = cE d where E is the effort required in person-months, T is the required development time in chronological months, KLOC is the estimated size of software in thousand lines of delivered source code. The constants a, b, c, and d are listed below:

type of project a b c d organic semi-detached embedded Basic COCOMO Model (continued)

Basic COCOMO Model: Equations

Basic COCOMO Model: An Example We have determined our project fits the characteristics of Semi-Detached mode We estimate our project will have 32,000 Delivered Source Instructions. Using the formulas, we can estimate: Effort = 3.0*(32) 1.12 = 146 person-months Schedule = 2.5*(146) 0.35 = 14 months Productivity = 32,000 DSI / 146 PM = 219 DSI/PM Average Staffing = 146 PM /14 months = 10 FSP

Intermediate COCOMO Model Effort equation for the intermediate model: E = a(KLOC) b (EAF) where EAF is the effort adjustment factor, and constants a and b are type of project a b organic semi-detached embedded

Intermediate Model: Equations

COCOMO Effort Multipliers Product attributes Required reliability0.75 to 1.40 Data-base size0.94 to 1.16 Product complexity0.70 to 1.65

COCOMO Effort Multipliers (continued) Computer attributes Execution time constraint1.00 to 1.66 Main storage constraint1.00 to 1.56 Virtual machine volatility0.87 to 1.30 Computer turn-around time0.87 to 1.15

COCOMO Effort Multipliers (continued) Personnel attributes Analyst capability1.46 to 0.71 Programmer capability1.42 to 0.70 Applications experience1.29 to 0.82 Virtual machine experience1.21 to 0.90 Programming language experience1.14 to 0.95

COCOMO Effort Multipliers (continued) Project attributes Use of modern programming practices1.24 to 0.82 Use of software tools1.24 to 0.83 Required development schedule1.23 to 1.00

Staffing Level Estimation A software project typically starts with a small group of capable people to do planning and analysis, a larger, but still small group to do architectural design. The size of required personnel increases in each successive phase, peaks at the implementation and system testing phase, and decreases in the maintenance phase.

Staffing-Level Estimation The personnel level of effort required throughout the life cycle of a software product can be approximated by the following equation, which describes a Rayleigh curve:

Staffing-Level Estimation (continued) FSP = PM( 0.15T dev +0.7t 0.25(T dev ) 2 )e - (0.15T dev +0.7t) 2 0.5(T dev ) 2 where FSP is the no. of full-time software personnel required at time t, PM is the estimated programmer-months for product development, excluding planning and analysis, and T dev is the estimated development time.

Staffing-Level Estimation (continued)

Intermediate Model: An Example Project A is to be a 32,000 DSI semi-detached software. It is in a mission critical area, so the reliability is high (RELY=high=1.15). Then we can estimate: Effort = 1.15*3.0*(32) 1.12 = 167 Person-months Schedule = 2.5*(167) 0.35 = 15 months Productivity = 32,000 DSI/167 PM = 192 DSI/PM Average Staffing = 167 PM/15 months = 11 FSP