Structural Analysis of the Software Architecture - A Maintenance Assessment Case Study

Architectural erosion is a sign of reduced architectural quality. Quality characteristics of an architecture, such as its ability to accommodate change, are critical for an evolving product. The structure of an architecture is said to be eroded when the software within the architecture becomes resistant to change or changes become risky and time consuming. The objective of our work is to understand the signs of architectural erosion that contribute to decreased maintainability. A maintenance assessment case study is described in which we apply structural measurements to a product to determine signs of architectural erosion. It provides an understanding of a product’s quality by examining the structure of its architecture. The ability to assess architectural erosion in an evolving software product allows the quality of the architecture to be monitored to ensure its business and maintenance goals are achieved.

[1]  David Garlan First international workshop on architectures for software systems workshop summary , 1995, SOEN.

[2]  Meir M. Lehman Uncertainty in computer application and its control through the engineering of software , 1989, J. Softw. Maintenance Res. Pract..

[3]  Paul W. Oman,et al.  The application of software maintainability models in industrial software systems , 1995, J. Syst. Softw..

[4]  Leonard J. Bass,et al.  SAAM: a method for analyzing the properties of software architectures , 1994, Proceedings of 16th International Conference on Software Engineering.

[5]  Paul W. Oman,et al.  Using software maintainability models to track code health , 1994, Proceedings 1994 International Conference on Software Maintenance.

[6]  Alexander L. Wolf,et al.  Acm Sigsoft Software Engineering Notes Vol 17 No 4 Foundations for the Study of Software Architecture , 2022 .

[7]  Malcolm Munro,et al.  An early impact analysis technique for software maintenance , 1994, J. Softw. Maintenance Res. Pract..

[8]  Jim Wilson,et al.  Applying Software Product-Line Architecture , 1997, Computer.

[9]  Rick Kazman,et al.  Assessing architectural complexity , 1998, Proceedings of the Second Euromicro Conference on Software Maintenance and Reengineering.

[10]  Warren Harrison,et al.  Insights on improving the maintenance process through software measurement , 1990, Proceedings. Conference on Software Maintenance 1990.

[11]  Mary Shaw,et al.  An Introduction to Software Architecture , 1993, Advances in Software Engineering and Knowledge Engineering.

[12]  Harald C. Gall,et al.  Software evolution observations based on product release history , 1997, 1997 Proceedings International Conference on Software Maintenance.

[13]  Ger Bakker,et al.  Recent Industrial Experiences with Software Product Metrics , 1995, Objective Software Quality.