Estimating object-oriented software projects with use cases
Department of Informatics
Estimating
Object-Oriented
Software Projects with Use Cases
Kirsten Ribu
Master of Science
Thesis
7th November 2001
ii
Abstract
In object-oriented analysis, use case models describe the functional requirements of a future software system. Sizing the system can be done by measuring the size or complexity of the use cases in the use case model.
The size can then serve as input to a cost estimation method or model, in order to compute an early estimate of cost and effort.
Estimating software with use cases is still in the early stages. This thesis describes a software sizing and cost estimation method based on use cases, called the ’Use Case Points Method’. The method was created several years ago, but is not well known. One of the reasons may be that the method is best used with well-written use cases at a suitable level of functional detail. Unfortunately, use case writing is not standardized, so there are many different writing styles. This thesis describes how it is possible to apply the use case points method for estimating object-oriented software, even if the use cases are not written out in full. The work also shows how use cases can be sized in alternative ways, and how to best write use cases for estimation purposes. An extension of the method providing simpler counting rules is proposed.
Two case studies have been conducted in a major software company, and several student’s projects have been studied in order to investigate the general usefulness of the method and its extension. The results have been compared to results obtained earlier using the method in a different company. The investigations show that the use case points method works well for different types of software.
Data from the various projects have also been used as input to two commercial cost estimation tools that attempt to estimate object-oriented projects with use cases. The goal was to select a cost