software cost estimates are based k past performance.
● cost estimates can be made either
(i) top down
(ii) bottom up
TOP-DOWN
Focus on system level cost such as computer resources. Personnel level
Required to ...
software cost estimates are based k past performance.
● cost estimates can be made either
(i) top down
(ii) bottom up
TOP-DOWN
Focus on system level cost such as computer resources. Personnel level
Required to develop the system. It has the advantage of focusing on system level costs.
BOTTOM UP
The cost to develop each module or subsystem. Then combined to arrive at
an overall estimate. It emphasize the cost associated with developing individual
system components.
Size: 1.68 MB
Language: en
Added: Oct 03, 2024
Slides: 13 pages
Slide Content
Software cost Estimation Techniques Mrs. G. Chandraprabha Assistant Professor of IT V.V.Vanniaperumal College for Women Virudhunagar
SOFTWARE COST ESTAMATION TECHNIQUES: ● software cost estimates are based k past performance. ● cost estimates can be made either ( i ) top down (ii) bottom up TOP-DOWN Focus on system level cost such as computer resources. Personnel level Required to develop the system. It has the advantage of focusing on system level costs. BOTTOM UP The cost to develop each module or subsystem. Then combined to arrive at an overall estimate. It emphasize the cost associated with developing individual system components.
1)Expert judgement ► Most widely used cost estimation techniques(top down) ► Expert judgement relies on the experience background and business sense of one or more key people in an organization mode. Ex: an expert might arrive at a cost estimate in a following manner. ● To develop a process control system. ● It is similar to one that was developed last year in 10 months at a cost of one million dollar. ● It was not a respectable profit. ● The new system has same control functions as the previous but 25% more control activities So the time a ● The previous system developed was the same as new system.
● Use the same computer and controlling devices and many of the same people are available to develop the new system therefore 20% of the estimate is reduced. ● Resume of the low level code from the previous reduces the time and cost estimates by 25%. ● advantage : Experience can also be liability ● In some times group of experts prepare a estimate, it leads to minimize the individual oversights and lack of familiarity with particular projects. ● Major disadvantage of group estimation is the effect of interpersonal group dynamics.
2)DELPHI COST TECHNIQUES (ESTIMATION) ► This technique was developed at the rand corporation in 1948 ► This technique can be adapted to software estimation in the following manner. ● A coordinator provides each estimator with system definition document and form a recording a cost estimate. ● Estimators study the document and complete their estimates anonymously. ● They ask questions to the coordinator but they don't discuss with one another. ● The coordinator prepares and distributes a summary of the estimators response and unusual rationale noted by the estimators. ● The estimators complete another estimate from the previous estimate. ● The process is iterated for as many as required. No group discussion is allowed for entire process.
A Delphi cost estimation form is as follows.
The following approach is a variation on Standard Delphi technique that increases the communications, 1. A coordinator provides each estimator with system definition and an estimation form. 2. Estimators study the definition and the coordinator calls a group meeting so that estimators can discuss estimation issues with the coordinator and one another. 3. Estimators complete their estimates anonymously. 4.The coordinator a summary of the estimates but does not record any rationales 5. The coordinator calls a group meeting to focus on issues where the estimate vary widely. 6. The estimator complete another estimate again anonymously. The process is iterated for as many as require
3) WORK DOWN BREAK STRUCTURE ● A bottom-up estimation tool ● WBS is a hierarchical chart that accounts for the individual parts of the system ● WBS chart can indicate either product hierarchy or process hierarchy. ● Product Hierarchy identifies the product components and indicates the manner in which the components are interconnected. ● Process Hierarchy identifies the work activity and relationship among those activities Product Work Breakdown Structure
A Process Work Breakdown Structure A Process Work Breakdown Structure ● Using WBS cost are estimated by assigning cost to each individual component in the Char and summing the cost ● WBS are the most widely used cost estimation techniques Some planners use both product and process work breakdown structure charts for cost estimation. ● Advantage : This technique are in identifying and accounting for various process and product factors and in making explicit exactly which costs are included in the estimate.
ALGORITHMIC COST MODEL ● Constructive cost model(COCOMO) ● Algorithmic cost estimators compute the estimated cost of software system as the some of the cost of the module this model is bottom up estimators. ● In COCOMO model the equation calculates the programmmar month and development schedule are used for the program unit based on the number of Deliver Source Instruction (DSI). ● The key parameters that define the quality of any software product, which are also an outcome of COCOMO, are primarily effort and schedule: ● Effort: Amount of labor that will be required to complete a task. It is measured in person-months units. ● Schedule: This simply means the amount of time required for the completion of the job, which is, of course, proportional to the effort put in. It is measured in the units of time such as weeks, and months. Effort multipliers are used to adjacent the estimate for product attribute, computer, personnel, and project attributes
Multiplier Range of values Product attributes: Required reliability Database size Product complexity Computer attributes: Execution time constraint Main storage constraint Virtual machine volatility Computer turnaround time Personnel attributes: Analyst capability Programmer capability Applications experience Virtual machine experience Programming language experience Project attributes Use of modern programming practices Use of software tools Required development schedule 0.75to1.40 0.94to1.16 0.70to1.65 1.00to1.66 1.00to1.56 0.87to1.30 0.87to1.15 1.46to0.71 1.42to0.70 1.29to0.82 1.21to0.90 1.14to0.95 1.24to0.82 1.24to0.83 1.23to1.10
● The effort multipliers examines the data from 63 software development projects and by using Delphi technique among a group of software experts. Types of Projects in the COCOMO Model In the COCOMO model, software projects are categorized into three types based on their complexity, size, and the development environment. These types are: 1.Organic: A software project is said to be an organic type if the team size required is adequately small, the problem is well understood and has been solved in the past and also the team members have a nominal experience regarding the problem. The organic mode (application program) equation applied in the following type of situations ● small to medium size project ● familiar application area ● stable, well understood virtual machine ● in house development effort ● effort multipliers are used to modify these assumptions
2. Semi-detached : A software project is said to be a Semi-detached type if the vital characteristics such as team size, experience, and knowledge of the various programming environments lie in between organic and embedded. The projects classified as Semi-Detached are comparatively less familiar and difficult to develop compared to the organic ones and require more experience better guidance and creativity. Eg : Compilers or different Embedded Systems can be considered Semi-Detached types. 3. Embedded: A software project requiring the highest level of complexity, creativity, and experience requirement falls under this category. Such software requires a larger team size than the other two models and also the developers need to be sufficiently experienced and creative to develop such complex models.