Title :
Identifying and Managing Complex Modules in Executable Software Design Models-Empirical Assessment of a Large Telecom Software Product
Author :
Rezaei, Hengameh ; Ebersjo, Filippa ; Sandahl, Kristian ; Staron, Miroslaw
Author_Institution :
Ericsson AB Linkoping, Linkoping, Sweden
Abstract :
Using design models instead of executable code has shown itself to be an efficient way of increasing abstraction level of software development. However, applying established code-based software engineering methods to design models can be a challenge - due to different abstraction levels, the same metrics as for code are not applicable for the design models. One of practical challenges in using metrics at the model level is applying complexity-prediction formulas developed using code-based metrics to design models. The existing formulas do not apply as they do not take into consideration the behavior part of the models - e.g. State charts. In this paper we address this challenge by conducting a case study at one of the large telecom products at Ericsson with the goal to identify which metrics can predict complex, hard to understand and hard to maintain software modules based on their design models. We use both statistical methods like regression to build prediction formulas and qualitative interviews to codify expert designers´ perception of which software modules are complex. The results of this case study show that such measures as the number of non-self-transitions, transition per states or state depth can be combined in order to identify software units that are perceived as complex by expert designers. Our conclusion is that these metrics can be used in other companies to predict complex modules, but the coefficients should be recalculated per product to increase the prediction accuracy.
Keywords :
regression analysis; software maintenance; software metrics; software reliability; source code (software); Ericsson; abstraction level; code-based metrics; code-based software engineering methods; complex modules identification; complex modules management; complexity-prediction formulas; executable code; executable software design models; large telecom software product; model level metrics; regression; software development; software maintainability; software modules; software reliability; software units; state charts; statistical methods; Adaptation models; Complexity theory; Conferences; Measurement; Predictive models; Software; Unified modeling language; complexity; maintainability; modeling; reliability; software metrics;
Conference_Titel :
Software Measurement and the International Conference on Software Process and Product Measurement (IWSM-MENSURA), 2014 Joint Conference of the International Workshop on
Conference_Location :
Rotterdam
DOI :
10.1109/IWSM.Mensura.2014.27