The Comparison of the Software Cost Estimating Methods

Slides:



Advertisements
Similar presentations
Design of Experiments Lecture I
Advertisements

SOFTWARE TESTING. INTRODUCTION  Software Testing is the process of executing a program or system with the intent of finding errors.  It involves any.
Systems Analysis, Prototyping and Iteration Systems Analysis.
Case Tools Trisha Cummings. Our Definition of CASE  CASE is the use of computer-based support in the software development process.  A CASE tool is a.
An Approach to Evaluate Data Trustworthiness Based on Data Provenance Department of Computer Science Purdue University.
Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page: Software.
CS351 © 2003 Ray S. Babcock Cost Estimation ● I've got Bad News and Bad News!
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 23Slide 1 Software Cost Estimation.
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.
Overview of Software Requirements
Chapter 1 Program Design
Applied Business Forecasting and Planning
Software Cost Estimation Hoang Huu Hanh, Hue University hanh-at-hueuni.edu.vn.
6-1 Copyright © 2013 McGraw-Hill Education (Australia) Pty Ltd Pearson, Larson, Gray, Project Management in Practice, 1e CHAPTER 6 Estimating Project,
Estimating Software Size Part I. This chapter first discuss the size estimating problem and then describes the PROBE estimating method used in this book.
Introduction to Monte Carlo Methods D.J.C. Mackay.
Introduction to Systems Analysis and Design Trisha Cummings.
Demand Management and Forecasting
Forecasting Copyright © 2015 McGraw-Hill Education. All rights reserved. No reproduction or distribution without the prior written consent of McGraw-Hill.
1 Shawlands Academy Higher Computing Software Development Unit.
N By: Md Rezaul Huda Reza n
1 Validation & Verification Chapter VALIDATION & VERIFICATION Very Difficult Very Important Conceptually distinct, but performed simultaneously.
Software Estimation and Function Point Analysis Presented by Craig Myers MBA 731 November 12, 2007.
Chapter 6 : Software Metrics
©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.
Centro de Estudos e Sistemas Avançados do Recife PMBOK - Chapter 4 Project Integration Management.
Section 8.1 Estimating  When  is Known In this section, we develop techniques for estimating the population mean μ using sample data. We assume that.
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.
SE: CHAPTER 7 Writing The Program
소프트웨어공학 강좌 1 Chap 7. Software Prototyping - Rapid software development to validate requirements -
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
10/27/20151Ian Sommerville.  Fundamentals of software measurement, costing and pricing  Software productivity assessment  The principles of the COCOMO.
Copyright © 1994 Carnegie Mellon University Disciplined Software Engineering - Lecture 3 1 Software Size Estimation I Material adapted from: Disciplined.
Quality Software Project Management Software Size and Reuse Estimating.
Chapter 1 Program design Objectives To describe the steps in the program development process To introduce the current program design methodology To introduce.
Disciplined Software Engineering Lecture #3 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department.
1 Chapter 3 1.Quality Management, 2.Software Cost Estimation 3.Process Improvement.
Effort Estimation ( 估计 ) And Scheduling ( 时序安排 ) Presented by Basker George.
BSBPMG504A Manage Project Costs 7.1 Estimate Costs Adapted from PMBOK 4 th Edition InitiationPlanning ExecutionClose Monitor Control The process of developing.
Project Estimation techniques Estimation of various project parameters is a basic project planning activity. The important project parameters that are.
1 3. M ODELING U NCERTAINTY IN C ONSTRUCTION Objective: To develop an understanding of the impact of uncertainty on the performance of a project, and to.
©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.
The Software Development Process
CSc 461/561 Information Systems Engineering Lecture 5 – Software Metrics.
Chapter 6 CASE Tools Software Engineering Chapter 6-- CASE TOOLS
Software Prototyping Rapid software development to validate requirements.
© 2006 John Wiley and Sons, Inc. Project Management: A Managerial Approach Chapter 7 – Budgeting and Cost Estimation.
Software cost estimation. Fundamental estimation questions How much effort is required to complete an activity? How much calendar time is needed to complete.
April 29th, Chapter 6 Decision Making 6.1 The Nature of Management decisions 6.1 The Nature of Management decisions 6.2The decision making process.
Click to add text Systems Analysis, Prototyping and Iteration.
McGraw-Hill/Irwin Copyright © 2008 by The McGraw-Hill Companies, Inc. All rights reserved. Demand Management and Forecasting CHAPTER 10.
Requirements Engineering Requirements Management Lecture-25.
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.
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
Copyright , Dennis J. Frailey CSE7315 – Software Project Management CSE7315 M15 - Version 9.01 SMU CSE 7315 Planning and Managing a Software Project.
(6) Estimating Computer’s efficiency Software Estimation The objective of Software Estimation is to provide the skills needed to accurately predict the.
Lecture 6 Title: Project Cost Management MIS 434.
Program Design. Simple Program Design, Fourth Edition Chapter 1 2 Objectives In this chapter you will be able to: Describe the steps in the program development.
Forecas ting Copyright © 2015 McGraw-Hill Education. All rights reserved. No reproduction or distribution without the prior written consent of McGraw-Hill.
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.
Project Cost Management
Software Development & Project Management
Objective of This Course
COCOMO Models.
Software Cost Estimation
Presentation transcript:

The Comparison of the Software Cost Estimating Methods Comparison Estimation Methods - RV

1. Expert Judgment Method The estimating steps using this method: Coordinator presents each expert with a specification and an estimation form. Coordinator calls a group meeting in which the experts discuss estimation issues with the coordinator and each other. Experts fill out forms anonymously Coordinator prepares and distributes a summary of the estimation on an iteration form. Coordinator calls a group meeting, specially focusing on having the experts discuss points where their estimates varied widely. Experts fill out forms, again anonymously, and steps 4 and 6 are iterated for as many rounds as appropriate. Comparison Estimation Methods - RV

The advantages of this method are: The experts can factor in differences between past project experience and requirements of the proposed project. The experts can factor in project impacts caused by new technologies, architectures, applications and languages involved in the future project and can also factor in exceptional personnel characteristics and interactions, etc. Comparison Estimation Methods - RV

The disadvantages include: This method can not be quantified. It is hard to document the factors used by the experts or expert-group. Expert may be biased, optimistic, or pessimistic, even though they have been decreased by the group consensus. The expert judgment method always complements the other cost estimating methods such as algorithmic method. Comparison Estimation Methods - RV

Comparison Estimation Methods - RV Estimating by Analogy The steps using estimating by analogy are: Characterising the proposed project. Selecting the most similar completed projects whose characteristics have been stored in the historical data base. Deriving the estimate for the proposed project from the most similar completed projects by analogy. Comparison Estimation Methods - RV

The main advantages of this method are: The estimates are based on actual project characteristic data. The estimator's past experience and knowledge can be used which is not easy to be quantified. The differences between the completed and the proposed project can be identified and impacts estimated. Comparison Estimation Methods - RV

However there are also some problems with this method, Using this method, we have to determine how best to describe projects. The choice of variables must be restricted to information that is available at the point that the prediction required. Possibilities include the type of application domain, the number of inputs, the number of distinct entities referenced, the number of screens and so forth. Comparison Estimation Methods - RV

Comparison Estimation Methods - RV Analogy problems Once we have characterized the project, we have to determine the similarity and how much confidence we can place in the analogies. Too few analogies might lead to maverick projects being used; too many might lead to the dilution of the effect of the closest analogies. Martin Shepperd etc. introduced the method of finding the analogies by measuring Euclidean distance in n-dimensional space where each dimension corresponds to a variable. Values are standardized so that each dimension contributes equal weight to the process of finding analogies. Generally speaking, two analogies are the most effective. Comparison Estimation Methods - RV

Comparison Estimation Methods - RV Analogy problems Finally, we have to derive an estimate for the new project by using known effort values from the analogous projects. Possibilities include means and weighted means which will give more influence to the closer analogies. Comparison Estimation Methods - RV

Comparison Estimation Methods - RV Top-Down Estimating It focuses on system-level activities such as integration, documentation, configuration management, etc., many of which may be ignored in other estimating methods and it will not miss the cost of system-level functions. It requires minimal project detail, and it is usually faster, easier to implement. Comparison Estimation Methods - RV

The disadvantages are: It often does not identify difficult low-level problems that are likely to escalate costs and sometime tends to overlook low-level components. It provides no detailed basis for justifying decisions or estimates. Comparison Estimation Methods - RV

Comparison Estimation Methods - RV Bottom-up Estimating The advantages: It permits the software group to handle an estimate in an almost traditional fashion and to handle estimate components for which the group has a feel. It is more stable because the estimation errors in the various components have a chance to balance out. Comparison Estimation Methods - RV

Comparison Estimation Methods - RV The disadvantages: It may overlook many of the system-level costs (integration, configuration management, quality assurance, etc.) associated with software development. It may be inaccurate because the necessary information may not be available in the early phase. It tends to be more time-consuming. It may not be feasible when either time and personnel are limited. Comparison Estimation Methods - RV

Comparison Estimation Methods - RV Algorithmic Method General advantages: It is able to generate repeatable estimations. It is easy to modify input data, refine and customise formulas. It is efficient and able to support a family of estimations or a sensitivity analysis. It is objectively calibrated to previous experience. Comparison Estimation Methods - RV

General disadvantages: It is unable to deal with exceptional conditions, such as exceptional personnel in any software cost estimating exercises, exceptional teamwork, and an exceptional match between skill-levels and tasks. Poor sizing inputs and inaccurate cost driver rating will result in inaccurate estimation. Some experience and factors can not be easily quantified. Comparison Estimation Methods - RV

Comparison Estimation Methods - RV Model Calibration The act of calibration standardises a model. Many models are developed for specific situations and are, by definition, calibrated to that situation. Such models usually are not useful outside of their particular environment. So, the act of calibration is needed to increase the accuracy of one of these general models by making it temporarily a specific model for whatever product it has been calibrated for. Calibration is in a sense customising a generic model. Items which can be calibrated in a model include: product types, operating environments, labor rates and factors, various relationships between functional cost items, and even the method of accounting used by a contractor. All general models should be standardised (i.e. calibrated), unless used by an experienced modeler with the appropriate education, skills and tools, and experience in the technology being modeled. Comparison Estimation Methods - RV

Comparison Estimation Methods - RV Calibration Calibration is the process of determining the deviation from a standard in order to compute the correction factors. For cost estimating models, the standard is considered historical actual costs. The calibration procedure is theoretically very simple. It is simply running the model with normal inputs (known parameters such as software lines of code) against items for which the actual cost are known. These estimates are then compared with the actual costs and the average deviation becomes a correction factor for the model. In essence, the calibration factor obtained is really good only for the type of inputs that were used in the calibration runs. For a general total model calibration, a wide range of components with actual costs need to be used. Better yet, numerous calibrations should be performed with different types of components in order to obtain a set of calibration factors for the various possible expected estimating situations. Comparison Estimation Methods - RV

Some recommendations: Do not depend on a single cost or schedule estimate. Use several estimating techniques or cost models, compare the results, and determine the reasons for any large variations. Document the assumptions made when making the estimates. Monitor the project to detect when assumptions that turn out to be wrong jeopardize the accuracy of the estimate. Improve software process: An effective software process can be used to increase accuracy in cost estimation in a number of ways. Maintaining a historical database Comparison Estimation Methods - RV