Abstract

Architecting high quality software systems is not trivial, in fact to know whether a certain quality attribute has been achieved, it has to be continuously analysed. Reasoning about multiple quality attributes (e.g., performance, availability) of software systems is even more difficult since it is necessary to jointly analyze multiple and heterogeneous Quality-of-Service (QoS) models. The goal of this paper is to investigate the combined use of different QoS models and continuously re-architecting them since the acquired knowledge of a specific QoS model may affect another model, thus to put in place a collaborative analysis process that reduces the overall uncertainty. Starting from an example of interaction among two different QoS models, i.e., a Bayesian Network for availability and a Queueing Network for performance, we demonstrate that the collaborative analysis brings benefits to the overall process since the initial uncertainty is reduced. We identify the join/fork points within the analysis process to bring upfront the quality characteristics of software systems, thus to enable the rearchitecting of systems in case of quality flaws. In this way, the QoS analysis becomes an integrated activity in the whole software development life-cycle and quality characteristics are continuously exposed to system architects.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call