The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.06 - Nov.-Dec. (2013 vol.30)
pp: 54-62
Heiko Koziolek , ABB Corporate Research Germany
Dominik Domis , ABB Corporate Research Germany
Thomas Goldschmidt , ABB Corporate Research Germany
Philipp Vorst , ABB Corporate Research Germany
ABSTRACT
It's difficult to express a software architecture's sustainability in a single metric: relevant information is spread across requirements, architecture design documents, technology choices, source code, system context, and software architects' implicit knowledge. Many aspects influence economic sustainability, including design decisions facilitating evolutionary changes, adherence to good modularization practices, and technology choices. An approach that focuses on a single artifact or perspective is likely to neglect important factors. ABB Corporate Research is tracking the architecture sustainability of a large-scale industrial control system currently under development. A former version of the system grew to several million LOC and suffered from architecture erosion and high maintenance costs. A multiperspective approach called Morphosis will help avoid such a situation in the future by focusing on requirements, architecture design, and source code. It includes evolution scenario analysis, scoring of technology choices, architecture compliance checks, and tracking of architecture-level code metrics.
INDEX TERMS
Computer architecture, Software architecture, Sustainable development, Software systems, Best practices,architecture sustainability, software architecture, software engineering, maintenance measurement, product metrics, metrics, measurement, Morphosis
CITATION
Heiko Koziolek, Dominik Domis, Thomas Goldschmidt, Philipp Vorst, "Measuring Architecture Sustainability", IEEE Software, vol.30, no. 6, pp. 54-62, Nov.-Dec. 2013, doi:10.1109/MS.2013.101
REFERENCES
1. T. Kettu et al., “Using Architecture Analysis to Evolve Complex Industrial Systems,” Proc. Workshop Architecting Dependable Systems V, LNCS 5135, Springer, 2008, pp. 326-341.
2. H. Koziolek et al., “MORPHOSIS: A Lightweight Method Facilitating Sustainable Software Architectures,” Proc. 2012 Joint Working IEEE/IFIP Conf. Software Architecture and European Conf. Software Architecture, IEEE CS, 2012, pp. 253-257.
3. D.L. Parnas, “On the Criteria to Be Used in Decomposing Systems into Modules,” Comm. ACM, vol. 15, no. 12, 1972, pp. 1053-1058.
4. D. Dzung et al., “Security for Industrial Communication Systems,” Proc. IEEE, vol. 93, no. 6, 2005, pp. 1152-1177.
5. P. Bengtsson et al., “Architecture-Level Modifiability Analysis (ALMA),” J. Systems and Software, vol. 69, nos. 1-2, 2004, pp. 129-147.
6. A. Jansen, A. Wall, and R. Weiss, “TechSuRe: A Method for Assessing Technology Sustainability in Long Lived Software Intensive Systems,” Proc. 37th EUROMICRO Conf. Software Eng. and Advanced Applications, IEEE CS, 2011, pp. 426-434.
7. S. Sarkar et al., “Modularization of a Large-Scale Business Application: A Case Study,” IEEE Software, vol. 26, no. 2, 2009, pp. 28-35.
8. P. Clements, R. Kazman, and M. Klein, Evaluating Software Architectures: Methods and Case Studies, Addison-Wesley Professional, 2001.
9. R.C. Martin, Agile Software Development: Principles, Patterns, and Practices, Prentice Hall, 2003.
10. S. Sarkar, G.M. Rama, and A.C. Kak, “API-Based and Information-Theoretic Metrics for Measuring the Quality of Software Modularization,” IEEE Trans. Software Eng., vol. 33, no. 1, 2007, pp. 14-32.
11. N. Lassing, D. Rijsenbrij, and H. van Vliet, “How Well Can We Predict Changes at Architecture Design Time?,” J. Systems and Software, vol. 65, no. 2, 2003, pp. 141-153.
12. E. Bouwers, A. van Deursen, and J. Visser, “Evaluating Usefulness of Software Metrics: An Industrial Experience Report,” Proc. Int'l Conf. Software Eng. (ICSE 13), IEEE, 2013, pp. 921-930.
13. D. Garlan et al., “Evolution Styles: Foundations and Tool Support for Software Architecture Evolution,” Proc. Joint Working IEEE/IFIP Conf. Software Architecture (WICSA 09), 2009, IEEE, pp. 131-140.
99 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool