Download presentation
Presentation is loading. Please wait.
Published byEzra McLaughlin Modified over 8 years ago
1
Software cost and effort estimation will never be an exact science. Estimation is very difficult to do, but is often needed Too many variables can affect the ultimate cost of software and effort applied to develop it. Human, Technical, Environmental Political Estimation
2
To achieve reliable cost and effort estimates, a number of options arise:. Delay estimation until late in the project (obviously, we can achieve 100% accurate estimates after the project is complete!).. Base estimates on similar projects that have already been completed.. Use relatively simple decomposition techniques to generate project cost and effort estimates.. Use one or more empirical models for software cost and effort estimation.
3
Basic process involves: Estimate the size of the product Estimate the effort (man-months) Estimate the schedule NOTE: Not all of these steps are always explicitly performed
4
Estimation – A Critical factor In a software project, unless you are sure that your estimation is accurate, you cannot make much progress. Estimation of following factors are essential: – Cost, – Effort, – Risks – Resources Estimation of resources, cost, and schedule for a software engineering effort requires: – Experience, – Access to good historical information – Courage to commit to quantitative predictions when qualitative information is all that exists.
5
Estimation carries inherent risk and this risk leads to uncertainty. Project complexity – Project complexity has a strong effect on the uncertainty, inherent in planning. Project size – Project size is another important factor that can affect the accuracy and efficacy of estimates. As size increases, the interdependency among various elements of the software grows rapidly.
6
The availability of historical information: – The availability of historical information has a strong influence on estimation risk. By looking back, we can emulate things that worked and improve areas where problems arose. Risk – Risk is measured by the degree of uncertainty in the quantitative estimates established for resources, cost, and schedule. If project scope is poorly understood or project requirements are subject to change, uncertainty and risk become dangerously high.
7
Decomposition Techniques: Software project estimation is a form of problem solving, and in most cases, the problem to be solved (i.e., developing a cost and effort estimate for a software project) is too complex to be considered in one piece. For this reason, we decompose the problem, re- characterizing it as a set of smaller (and hopefully, more manageable) problems. Before an estimate can be made, the project planner must understand the scope of the software to be built and generate an estimate of its "size."
8
Software Sizing: The accuracy of a software project estimate is predicated on a number of things. – The degree to which the planner has properly estimated the size of the product to be built. – The ability to translate the size estimate into human effort, calendar time, and dollars (a function of the availability of reliable software metrics from past projects). – The degree to which the project plan reflects the abilities of the software team. – The stability of product requirements and the environment that supports the software engineering effort.
9
Estimation – Tools: Work Breakdown Structure (WBS) – Dividing into Logical Units/Tasks. To correctly estimate the effort, size, or cost of completing a project, it is important to be aware of the multiple tasks that comprise a project. You can divide a project into logical units or tasks by using the WBS technique. Creating a WBS is a prerequisite for any estimation activity. It enables you to conceptualize an abstract entity, such as a project, into distinct, independent units.
10
Benefits of Using a WBS: First, it gives the management an idea about the size and complexity of the project. Second, it helps in planning, scheduling, and monitoring a project realistically. This is possible because all the tasks in the project can be preformed measurable targets for each task.
11
To aid planning, scheduling, and monitoring a project, you can use tools such as: – Program Evaluation and Review Techniques (PERT) – Critical Path Method (CPM) – Timeline charts – Gantt charts. Measuring Effort for a Project: a)Source lines of Code (SLOC) b) Function Point (FP) c)Constructive Cost Model (COCOMO) d)d) Delphi technique
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.