Monitoring Evolution of Code Complexity in Agile/Lean Software Development - A Case Study at Two Companies
Paper in proceeding, 2013

One of the distinguishing characteristics of Agile and Lean software development is that software products “grow” with new functionality with relatively small increments. Continuous customer demands of new features and the companies’ abilities to deliver on those demands are the two driving forces behind this kind of software evolution. Despite the numerous benefits there are a number of risks associated with this kind of growth. One of the main risks is the fact that the complexity of the software product grows slowly, but over time reaches scales which makes the product hard to maintain or evolve. The goal of this paper is to present a measurement system for monitoring the growth of complexity and drawing attention when it becomes problematic. The measurement system was developed during a case study at Ericsson and Volvo Group Truck Technology. During the case study we explored the evolution of size, complexity, revisions and number of designers of two large software products from the telecom and automotive domains. The results show that two measures needed to be monitored to keep the complexity development under control - McCabe’s complexity and number of revisions.

complexity

software engineering

programming

Author

Vard Antinyan

University of Gothenburg

Miroslaw Staron

University of Gothenburg

Wilhelm Meding

Ericsson

Per Österströ

Ericsson

Henric Bergenwall

Ericsson

Johan Wranker

Ericsson

Jörgen Hansson

University of Skövde

Anders Henriksson

University of Skövde

13th Symposium on Programming Languages and Software Tools, SPLST 2013 - Proceedings

1-15

Subject Categories

Computer and Information Science

More information

Latest update

2/7/2020 9