Identifying Complex Functions By Investigating Various Aspects of Code Complexity
Paper in proceedings, 2015

The complexity management of software code has become one of the major problems in software development industry. With growing complexity the maintenance effort of software code increases. Moreover, multiple aspects of complexity create difficulties for optimal complexity management. The objective of this study is to investigate the relationships of several aspects of code complexity and assess the possibilities of optimizing overall code complexity. We conducted an action research project in two software development companies and complemented it with a study of three open source products. Four complexity metrics were measured, and their nature and mutual influence were investigated using statistical methods. The results and possible explanations were discussed with software engineers in industry. The results showed that there are two distinguishable aspects of complexity of source code functions; internal and external complexities. Those have an inverse relationship. Moreover, the product of them cannot be greater than a certain limit, regardless of software size. We developed a method that permits identification of most complex functions considering the two aspects of complexities. The evaluation showed that the use of the method is effective in industry; it enables identification of few (0.5%) most complex functions out of thousands of functions for manual assessment and reengineering.

Author

Vard Antinyan

University of Gothenburg

Miroslaw Staron

University of Gothenburg

Jesper Derehag

Ericsson

Mattias Runsten

Volvo Group

University of Skövde

Erik Wikström

Ericsson

Wilhelm Meding

Ericsson

anders Henriksson

Chalmers, Computer Science and Engineering (Chalmers)

Jörgen Hansson

Chalmers, Computer Science and Engineering (Chalmers), Software Engineering (Chalmers)

Proceedings of 2015 Science and Information Conference (SAI)

879-888

Subject Categories

Software Engineering

DOI

10.1109/SAI.2015.7237246

ISBN

9781479985470

More information

Latest update

11/19/2018