Nextgeneration Cost Models

candidate solution. If none of the value propositions is an acceptable solution to the problem, further candidate solutions need to be pursued or the problem statement needs to change.

The debate between function point zealots and source line zealots is a good indicator of the need for measures of both scale and size. I think function points are more accurate at quantifying the scale of the architecture required, while SLOC more accurately depicts the size of the components that make up the total implementation. The beauty of using SLOC is that collection can be easily automated and precision can be easily achieved. However, the accuracy of SLOC as a measure of size is ambiguous and can lead to misinterpretation when SLOC is used in absolute comparisons among different projects and organizations. This is particularly true in the early phases of projects if SLOC is used to represent scale. Many projects have used SLOC as a successful measure of size in the later phases of the life cycle, when the most important measures are the relative changes from month to month as the project converges on releasable versions.

The value of function points is that they are better at depicting the overall scale of the solution, independently of the actual size and implementation language of the final realization. Function points are not easily extracted from any rigorous representation format, however, so automation and change tracking are difficult or ambiguous.

A rigorous notation for design artifacts is a necessary prerequisite to improvements in the fidelity with which the scale of a design can be estimated. In the future, I expect there will be an opportunity to automate a new measure of scale derived directly from design representations in UML.

I expect two major improvements in next-generation software cost estimation models:

1. Separation of the engineering stage from the production stage will force estimators to differentiate between architectural scale and implementation size. This will permit greater accuracy and more-honest precision in life-cycle estimates.

2. Rigorous design notations such as UML will offer an opportunity to define units of measure for scale that are more standardized and therefore can be automated and tracked. These measures can also be traced more straightforwardly into the costs of production.

Quantifying the scale of the software architecture in the engineering stage is an area ripe for research. Over the next decade, two breakthroughs in the software process seem possible, both of them realized through technology advances in the supporting environment. The first breakthrough would be the availability of integrated tools that automate the transition of information between requirements, design, implementation, and deployment elements. These tools would allow more comprehensive

All Engineering Engineering Separate Engineering with from Production Automated Production

Figure 16-3. Automation of the construction process in next-generation environments

All Engineering Engineering Separate Engineering with from Production Automated Production

Figure 16-3. Automation of the construction process in next-generation environments round-trip engineering among the engineering artifacts. The second breakthrough would focus on collapsing today's four sets of fundamental technical artifacts into three sets by automating the activities associated with human-generated source code, thereby eliminating the need for a separate implementation set. This technology advance, illustrated in Figure 16-3, would allow executable programs to be produced directly from UML representations without human intervention. Visual modeling tools can already produce code subsets from UML models, but producing complete subsets is still in the future.

While the first breakthrough would be risky but straightforward, the second one would be a major paradigm shift. When a software engineering team can produce implementation and deployment artifacts in an error-free, automated environment, the software development process can change dramatically, as it did when chip production transitioned to an automated "printing" process.

Project Management Made Easy

Project Management Made Easy

What you need to know about… Project Management Made Easy! Project management consists of more than just a large building project and can encompass small projects as well. No matter what the size of your project, you need to have some sort of project management. How you manage your project has everything to do with its outcome.

Get My Free Ebook


Responses

  • jens
    How next generation cost models are different from conventional cost model?
    2 years ago
  • Maik
    What is meant by next generation cost models?
    1 year ago

Post a comment