Explore BrainMass

Accurate Cost Estimates for Software Development

What is the biggest problem in developing accurate cost estimates? Why?

Solution Preview

The biggest problem in developing accurate cost estimates is inability to make accurate estimates of system/software size in the earliest stages of the life cycle.

Cost estimating methodologies essentially fall into two categories:
1) Parametric (formal modeling) and
2) Non-parametric estimating;

The latter includes analogy, expert judgment, top-down and bottom-up methods [1]. Non-parametric approaches rely on the experience and knowledge of the estimators in lieu of actual project data.

Formal (parametric) models attempt to quantify all input to the cost estimation process, and then apply a set of equations that describe the relationships between the inputs and outputs of the cost estimation process. The equations are developed through analysis of historical data and must be calibrated to each individual development environment [2]. There are many such models with varying algorithms that attempt to reflect the most accurate relationships among metrics that drive cost.

There is consensus among the research community (formalized by the publications of the SEI) that a minimum set of core metrics needs to be collected for every project and used in the cost estimating process. They are size, effort, schedule (time) and defects (quality). Putnam and Myers [3] regard productivity as an additional core metric. Most parametric models use these metrics in some way. For example, the Constructive Cost Model (COCOMO), developed by Barry Boehm, originally established the following relationship of effort to size [4]:

Effort = C x size^M

where C and M are always greater than one, but their exact values vary depending on the organization and type of project.

Boehm's work revealed that poor practices can push the value of M above 1.5, and that M is also influenced by application experience, leadership capability, new environment and tools, requirements uncertainty, and software reuse.

The value of parametric modeling lies in the organization's ability to provide the data that enables fine-tuning of the C and M values (or variations of the equation) to reflect the reality of the development organization. This can result in accurate estimates over time, but requires time and commitment to develop the repository of valid project data.

How does an organization migrate from a minimum value estimating process, riddled with uncertainty and often viewed as bureaucratic exercise extraneous to the real issues, to a process that provides maximum value to the organization?

Literature indicates thay adhering to these four principles, can help an organization begin the journey from playing estimation games to achieving real value from software estimation.

1. Recognize and address the people issues relating to estimating.
2. Develop a metric mindset.
3. Manage the estimation process at the organizational level.
4. Establish the appropriate infrastructure to support collection and analysis of data needed for sound estimation.

I. Recognize and address the people issues related to estimating
The perceptions that developers (both managers and technical people) have regarding software estimation is perhaps the greatest barrier to implementing a successful metric-based estimating process. People provide initial estimates of effort and time even though the data may, ultimately, be fed into a cost estimating tool. People are aware of actual hours worked (effort) versus what may have been recorded. People make decisions that are often based on estimates provided by staff. People can also elect to ignore estimating data in their decision making. Regardless of the tool used, estimating accuracy ultimately depends on people related issues. The organization needs to do a realistic assessment of its current practices, paying particular attention to the cultural aspects and the dominant perceptions regarding estimation. It must be willing to look beyond the paper trail of project reports and get to the heart of what each person thinks and does. This may be very difficult unless there is an environment of mutual trust and ...

Solution Summary

The solution looks at the many obstacles to the developper when developing accurate cost estimates in 2460 words of detail with references.