search menu icon-carat-right cmu-wordmark

Evaluating and Mitigating the Impact of Complexity in Software Models

Technical Report
This report defines software complexity, metrics for complexity, and the effects of complexity on cost and presents an analysis tool to measure complexity in models.
Publisher

Software Engineering Institute

CMU/SEI Report Number
CMU/SEI-2015-TR-013
DOI (Digital Object Identifier)
10.1184/R1/6573509.v1

Abstract

Safety-critical systems, such as those used in the avionics, aerospace, medical, and automotive domains, are becoming more software reliant, and their size has increased enormously. These systems are becoming more complex, increasing certification costs. As certification is expensive and verification activities require significant manpower, this increasing complexity impacts the total cost of ownership. While part of the complexity is intrinsic to system functions and requirements, another part can be avoided. As software development is moving toward model-based approaches, reducing software model size and avoidable complexity would lower certification costs and reduce software maintenance efforts. This report defines software complexity, metrics for complexity in models, and the effects of model complexity on levels of effort in the development, integration, maintenance, and upgrade costs of a project lifecycle. It focuses on popular code metrics for models; their definition, measurement, and implications for development efforts; and techniques that have been used to reduce complexity, such as implementing a complexity measurement tool on a modeling tool. This report also presents an analysis tool that can be used to identify and measure complexity in a model-based development approach and explains how to apply the newly defined metrics.

Cite This Technical Report

Delange, J., McHale, J., Hudak, J., Nichols, B., & Nam, M. (2015, December 3). Evaluating and Mitigating the Impact of Complexity in Software Models. (Technical Report CMU/SEI-2015-TR-013). Retrieved April 26, 2024, from https://doi.org/10.1184/R1/6573509.v1.

@techreport{delange_2015,
author={Delange, Julien and McHale, James and Hudak, John and Nichols, Bill and Nam, Min-Young},
title={Evaluating and Mitigating the Impact of Complexity in Software Models},
month={Dec},
year={2015},
number={CMU/SEI-2015-TR-013},
howpublished={Carnegie Mellon University, Software Engineering Institute's Digital Library},
url={https://doi.org/10.1184/R1/6573509.v1},
note={Accessed: 2024-Apr-26}
}

Delange, Julien, James McHale, John Hudak, Bill Nichols, and Min-Young Nam. "Evaluating and Mitigating the Impact of Complexity in Software Models." (CMU/SEI-2015-TR-013). Carnegie Mellon University, Software Engineering Institute's Digital Library. Software Engineering Institute, December 3, 2015. https://doi.org/10.1184/R1/6573509.v1.

J. Delange, J. McHale, J. Hudak, B. Nichols, and M. Nam, "Evaluating and Mitigating the Impact of Complexity in Software Models," Carnegie Mellon University, Software Engineering Institute's Digital Library. Software Engineering Institute, Technical Report CMU/SEI-2015-TR-013, 3-Dec-2015 [Online]. Available: https://doi.org/10.1184/R1/6573509.v1. [Accessed: 26-Apr-2024].

Delange, Julien, James McHale, John Hudak, Bill Nichols, and Min-Young Nam. "Evaluating and Mitigating the Impact of Complexity in Software Models." (Technical Report CMU/SEI-2015-TR-013). Carnegie Mellon University, Software Engineering Institute's Digital Library, Software Engineering Institute, 3 Dec. 2015. https://doi.org/10.1184/R1/6573509.v1. Accessed 26 Apr. 2024.

Delange, Julien; McHale, James; Hudak, John; Nichols, Bill; & Nam, Min-Young. Evaluating and Mitigating the Impact of Complexity in Software Models. CMU/SEI-2015-TR-013. Software Engineering Institute. 2015. https://doi.org/10.1184/R1/6573509.v1