COMPARISON OF SOFTWARE ARCHITECTURE EVALUATION METHODS FOR SOFTWARE QUALITY ATTRIBUTES
Since the architecture of a software system constrains the quality attributes, the decisions taken during architectural design have a large impact on the resulting system. An architectural design method is presented that applies iterative evaluation of the software architecture in order to the quality requirements. Architecture evaluation is performed by using scenarios, simulation, mathematical modeling and experience-based reasoning. The software architecture has been keyed as an important part of a software system. Further, the software architecture impacts the quality attributes of a system, e.g., performance and maintainability. Therefore, methods for evaluating the quality attributes of software architectures are important. In this paper, we present a survey of software architecture evaluation methods. We concentrate on methods for evaluating one or several of the quality attributes performance, maintainability, testability, and portability. Based on a literature search and review of 76 articles, we present and compare ten evaluation methods. We have found that most evaluation methods only address one quality attribute, and very few can evaluate several quality attributes simultaneously in the same framework or method. Further, only one of the methods includes trade-off analysis. Therefore, our results suggest an altered research focus on software architecture evaluation methods than can direct several quality attributes and the possible trade-offs between different quality attributes.
L. S. Maurya and Himanshu Hora
To read the full article Download Full Article | Visit Full Article