Auteur princpal :
Auteur secondaire(s) :

Titre :
Functional change impact analysis in use cases: An approach based on COSMIC functional size measurement
Conférence :
Mois :
Année :
Journal, revue, page ... :
Science of Computer Programming, Special Issue on Advances in Software Measurement
Pays :
Ville :
Type de publication :
Abstract :

Context: Because functional changes are inevitable throughout the software life-cycle, it is essential to assess and evaluate whether a Functional Change (FC) can be handled within the estimated project budget and time. Thus, a well-defined change measure and control process is vital for the success of the development project. In fact, the size measurement is widely used for effort and cost estimation. This paper explores the COSMIC Functional Size Measurement (FSM) method to evaluate a FC.

Objective: The objective of this paper is to assess a FC in terms of COSMIC Function Point units in order to identify changes incurring potential impact on the software development progress. Thus, we suppose that the functional size of a FC is one of the factors that must be taken into consideration to analyze the impact of changes on the development progress. This helps managers in making decisions to answer a FC request.

Method: The method proposed in this paper analyzes the FC impact in use case diagrams, the de-facto standard for modeling the Functional User Requirements (FUR). It distinguishes between internal and external FC to a use case. It proposes to quantify the FC impact on the functional size of a use case diagram in terms of COSMIC Function Point (CFP) units. In addition, it evaluates the status of a FC according to its functional size. Furthermore, we propose an algorithm for prioritizing changes in the case where more than one functional change is proposed. The algorithm is based on a set of heuristics where the objective is to minimize the effort required to answer the changes. It accounts for the most important factors when prioritizing changes (the functional size of the FC, and the preference of the change requester). These two factors are identified based on an investigation with the international COSMIC community.

Originality: Several techniques have been used to identify and analyze the impact of a FC during various phases of the software life-cycle. For example, some researches used the colored commit graphs (at the implementation phase), other studies used the consistency rules between UML diagrams (at the design phase), etc. Compared to other approaches focused on impact change analysis, our proposed approach uses the COSMIC-FSM method. Quantifying the functional size of a FC in terms of CFP units allows us to evaluate more realistically the impact of a FC on the software development progress.

Results: We propose six categories of FC status according to their sizes. Based on the FC status, it is possible to identify the FC impact on the software development progress. The FC status will help not only designers/developers in analyzing the impact of FC on the size of their work products but also managers to decide to accept or forgo a FC and maintain the development schedule. Moreover, the experiment conducted with 30 computer engineering students showed that students' ratings can be approximately evaluated when measuring FUR in terms of CFP units based on the FC status.

Conclusion: Based on the finding of this study, it is now feasible to identify FC leading to potential impact on the software development progress. More specifically, evaluating FC in the use case diagrams will help in making quick decisions about accepting or rejecting a FC. Regardless of the used software life-cycle process, use cases are popular for specifying the software functionality. In practice, our proposed approach is applicable not only in the software development industry but also in academia.