Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
On the estimation of the functional size of software from requirements specifications
Condori-Fernández N., Abrahão S., Pastor O. Journal of Computer Science and Technology22 (3):358-370,2007.Type:Article
Date Reviewed: May 19 2008

Estimating the size of a software project to be implemented is an important task in software project management. Far too often, the approach to estimation is some ad hoc breakdown of the software to be built into a set of functionalities that are small enough that, with some experience, a work estimation can be attached to them. Usually the estimation is done by several people, and the results obviously differ. The estimators, in tedious discussions, try to discuss the reasons for the differences, and try to agree on one value for the estimation. A set of guidelines for creating a somewhat reproducible estimation would therefore save time and money, and might also produce better results.

The first such method proposed was the function point method. A second generation method is the Common Software Measurement International Consortium - Full Function Points (COSMIC-FFP) method analyzed in this paper, in connection with an object-oriented development method called the OO-Method.

The introduction motivates the study undertaken for the paper, namely defining an instantiation of the COSMIC-FFP method for estimating the functional size of a software application from its requirement specification in the OO-Method.

The second part introduces the OO-Method process, consisting of the creation of a requirements model, a conceptual model, and an execution model. Since the estimation technique of the paper uses the requirements model as its input, only the creation of the requirements model is further detailed. A requirements model in the OO-Method starts with a mission statement, a high-level description of the software application. The next step is the construction of a functional refinement tree, followed by a use case model. This model is then refined via a defined analysis process into sequence diagrams with predefined message types.

The third part presents the metamodel underlying the estimation process, which revolves around the concepts of layers, functional processes, data attributes, and data movements. Rules are given for identifying the software layers, users, boundaries, and functional processes from the use case model, and the data groups and data movements from the sequence diagrams. A back-end processing step removes unintended duplications from the collected items. Next, a rule is stated for recursively assigning a size to each identified item. The size of the whole system is then essentially the sum of the recursively calculated sizes.

The fourth part illustrates the method in a breakdown management system, calculating the size of one sub-layer of the system.

The fifth part reports on the results from instructing a group of students in the application of the estimation technique, and then letting them perform an estimation of a given requirements specification on their own. All statistical variables are analyzed, and the results show a strong indication that reproducible estimations can be obtained via this estimation technique.

The last sections discuss related and future works.

This paper is well written, and the estimation method described is detailed enough that a software practitioner could give it a try in his or her own projects. Unfortunately, in real business life there is often not enough time to prepare a requirements specification detailed enough for this sort of estimation, and there is also no indication of how one proceeds from the abstract notion of “cosmic functional size unit” to a real work estimate.

Reviewer:  Markus Wolf Review #: CR135605 (0904-0358)
Bookmark and Share
  Reviewer Selected
 
 
Product Metrics (D.2.8 ... )
 
 
Software Process (K.6.3 ... )
 
 
Software Process Models (D.2.9 ... )
 
 
Management (D.2.9 )
 
 
Model Validation And Analysis (I.6.4 )
 
 
Requirements/ Specifications (D.2.1 )
 
  more  
Would you recommend this review?
yes
no
Other reviews under "Product Metrics": Date
Communication Metrics for Software Development
Dutoit A., Bruegge B. IEEE Transactions on Software Engineering 24(8): 615-628, 1998. Type: Article
Oct 1 1998
Analyzing Data Sets with Missing Data: An Empirical Evaluation of Imputation Methods and Likelihood-Based Methods
Myrtveit I., Stensrud E., Olsson U. IEEE Transactions on Software Engineering 27(11): 999-1013, 2001. Type: Article
Jul 2 2002
The Optimal Class Size for Object-Oriented Software
El Emam K., Benlarbi S., Goel N., Melo W., Lounis H., Rai S. IEEE Transactions on Software Engineering 28(5): 494-509, 2002. Type: Article
Jan 3 2003
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy