Measuring software architectural stability using retrospective analysis
No Thumbnail Available
Date
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Saudi Digital Library
Abstract
Software architectural stability is concerned with the extent to which an architecture
withstands evolutionary changes. An architecture with high stability has a positive
impact on the maintenance of software and vice versa. Architectural stability can be
viewed from several perspectives and viewpoints. In literature, most of the approaches
analyze it from the structural viewpoint based on a host of ambiguous definitions. In
this thesis, we disambiguate the definition of stability and adopt the SEI definition of
architecture. These definitions are used to identify the factors that affect architectural
stability. Based on these factors, we present a survey of the existing architectural sta
bility measuring approaches. Also, we use retrospective analysis to develop a new suite
of metrics to measure the stability of an architecture from the behavioral viewpoint.
A framework was also developed to theoretically validate architectural stability mea
sures. The developed suite of stability measures was validated using this framework.