Software Reuse Evaluation based on Functional Similarity in COSMIC-FFP Size Components Luca Santillo, Alain Abran Abstract Software reuse is often recommended for improving the productivity of the development process. However, recognizing opportunities for reuse remains a challenge. This work proposes a technique to identify opportunities for reuse based on the similarity between software functions. This technique, referred to here as “functional similarity”, is based on functional information collected by the COSMIC-FFP measurement method during the measurement of the software. The proposed approach is applied to a set of measurement case studies for which opportunities for functional reuse have been identified and quantified. 1. Introduction The size of a software system is considered to be its main cost driver: a number of authors have documented, through statistical analysis, a positive relationship between size and development effort, even though “size” information alone does not explain its full relationship to effort. Software reuse can also significantly impact project effort, as can other relevant factors, such as, for instance, software complexity and the number of change requests made throughout the project process. In this paper, an approach is proposed to evaluate the potential for reuse based on early project information obtained during the functional requirements measurement phase. The proposal is aimed at finding opportunities for reuse using functional elements identified when measuring the functional size of a software project, and is based on uncovering similarities between functional processes measured using the COSMIC-FFP sizing method, taking into account the data movements and data manipulations. This proposed approach is illustrated with a set of eight case studies of functional requirements measured with the COSMIC-FFP ISO 19761 standard [1]. The motivation for the development of such a technique, and its underlying model, is to lower development cost, while at the same time improving the estimation of development and enhancement effort. The paper is organized as follows. Section 2 presents the proposed approach to finding functional reuse opportunities. Section 3 presents the empirical data set available to illustrate an application of this functional similarity-based approach. Section 4 presents the similarity assessment results, and section 5 a summary and a discussion. 2. The Functional Similarity Assessment Approach 2.1. Context Any software system can be modeled as a hierarchy, the whole-system level being decomposed into one or more independently acting “modules”. Every module is made up of a set of functional processes, and each functional process has a number of base functional components. In the COSMIC-FFP measurement method, modules typically correspond to software peer items belonging to a particular layer (the layer concept should be considered orthogonal to the hierarchical structure; that is, each layer can be considered an independent system in and of itself, for measurement purposes).