Quantification of interacting runtime qualities in software architectures: Insights from transaction processing in client-server architectures

  • Authors:
  • Anakreon Mentis;Panagiotis Katsaros;Lefteris Angelis;George Kakarontzas

  • Affiliations:
  • Department of Informatics, Aristotle University of Thessaloniki, 54124 Thessaloniki, Greece;Department of Informatics, Aristotle University of Thessaloniki, 54124 Thessaloniki, Greece;Department of Informatics, Aristotle University of Thessaloniki, 54124 Thessaloniki, Greece;Department of Informatics, Aristotle University of Thessaloniki, 54124 Thessaloniki, Greece

  • Venue:
  • Information and Software Technology
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Context: Architecture is fundamental for fulfilling requirements related to the non-functional behavior of a software system such as the quality requirement that response time does not degrade to a point where it is noticeable. Approaches like the Architecture Tradeoff Analysis Method (ATAM) combine qualitative analysis heuristics (e.g. scenarios) for one or more quality metrics with quantitative analyses. A quantitative analysis evaluates a single metric such as response time. However, since quality metrics interact with each other, a change in the architecture can affect unpredictably multiple quality metrics. Objective: This paper introduces a quantitative method that determines the impact of a design change on multiple metrics, thus reducing the risks in architecture design. As a proof of concept, the method is applied on a simulation model of transaction processing in client server architecture. Method: Factor analysis is used to unveil latent (i.e. not directly measurable) quality features represented by new variables that reflect architecture-specific correlations between metrics. Separate Analyses of Variance (ANOVA) are then applied to these variables, for interpreting the tradeoffs detected by factor analysis in terms of the quantified metrics. Results: The results for the examined transaction processing architecture show three latent quality features, the corresponding groups of strongly correlated quality metrics and the impact of architecture characteristics on the latent quality features. Conclusion: The proposed method is a systematic way for relating the variability of quality metrics and the implied tradeoffs to specific architecture characteristics.