Context: Functional size measures, such as IFPUG Function Points or COSMIC, are widely used to support software development effort estimation. Unfortunately, applying the COSMIC or IFPUG Function Point Analysis methods at early stages of software development is difficult or even impossible because available functional requirements are imprecise. Moreover, the resources that could be allocated to perform such measurement are usually limited. Therefore, it is worth investigating the possibility of automating the approximation of IFPUG Function Points or COSMIC early in software projects.#R##N##R##N#Objective: Given a UML use-case diagram or a list of use-case names, approximate COSMIC and IFPUG FPA functional size in an automatic way.#R##N##R##N#Method: We propose a two-step process of approximating the functional size of applications based on use-case goals. In the first step, we process the names of use cases, expressed in a natural language and assign each of their goals into one of thirteen categories. In the second step, we employ information about categories of use-case goals and historical data to construct prediction models and use them to approximate the size in COSMIC and Function Points. We compare the accuracy of the proposed methods to the average use-case approximation (AUC), which is their most intuitive counterpart, and the automatic method proposed by Hussain, Kosseim and Ormandjieva (HKO).#R##N##R##N#Results: The prediction accuracy of the two proposed approximation methods was evaluated using a cross-validation procedure on a data set of 26 software development projects. For both methods, the prediction error was low compared to AUC and HKO.#R##N##R##N#Conclusion: Developers who document functional requirements in a form of use cases might use the proposed methods to obtain an early approximation of the application size as soon as use-case goals are identified. The proposed methods are automatic and can be considered as a replacement for AUC.
['Miroslaw Ochodek']
Functional size approximation based on use-case names