Measuring Software Complexity For Early Estimation Of Development Effort
Free (open access)
De Tran-Cao, G. Lévesque & J.-G. Meunier
This paper introduces a new method for measuring software complexity. The term \“software complexity” refers to the difficulty derived from the problem that is resolved by software. The method is specification-based as Function Point Analysis (FPA) and its variations. However, unlike other previous proposals that focus on \“size” aspect, the method of this paper investigates the \“complexity” aspect. Software complexity is considered as the complexity of the task that must be fulfilled by software. Therefore, it can be analyzed after task complexity models. The task complexity model of Wood is introduced as a theoretical guide for establishing a framework and measures of software complexity. These measures capture the complexity in the input, output data, in data manipulation and in relationships between software components. An empirical investigation done with 15 software projects shows that the proposed measures are relevant for measuring software complexity. They can be used to predict the effort of development with a fairly good precision. The empirical results confirm the validity of the functional complexity framework and the efficiency of the proposed measures for early effort estimation. Keywords: software size, software complexity, complexity measurement, effort estimation, functional complexity measurement, task complexity. 1 Introduction Software size is a key measure for many cost and effort estimation models. Models such as SLIM  and COCOMO  are based on lines of code (LOC).
software size, software complexity, complexity measurement, effort estimation, functional complexity measurement, task complexity.