Software architects plan the realization of software systems by assessing design decisions on the basis of architectural models. Using these models as input, architectural analyses assess the impact of architects' decisions on quality-of-service properties. While the creation of suitable architectural models requires software architects to apply complex architectural knowledge, for example, in the form of established architectural styles and patterns, current architectural analyses lack support for directly reusing such knowledge. This lack points to an unused potential to make the work of software architects more effective and efficient.To use this potential, we introduce the architectural template (AT) method, an engineering method that makes design-time analyses of quality-of-service properties of software systems more efficient. The AT method allows to quantify quality-of-service properties on the basis of reusable modeling templates that capture recurring architectural knowledge. Architects just need to customize such templates with system-specific parts. In a case study, we illustrate the applicability of the AT method in the domains of distributed and cloud computing and its suitability for the quality-of-service properties performance, scalability, elasticity, and cost-efficiency. TEMPLATING ARCHITECTURAL KNOWLEDGE TO EFFICIENTLY CONDUCT QOS ANALYSES 269 which may be used by clients to judge service quality' [9]. Architectural analyses quantify QoS properties on the basis ofS architectural models of a targeted system. These quantifications enable early evaluations and, thus, inexpensive revisions of disadvantageous design decisions. However, the creation of suitable architectural models for architectural analyses has formerly required a high modeling effort [10, p. 458]-even in recurring modeling situations [11].To approach this problem, this paper contributes the architectural template (AT) method as an extension to architectural analyses and illustrates its application in the cloud computing domain. The AT method provides software architects with templates that formally capture reusable architectural knowledge (such as architectural styles and architectural patterns) for recurring modeling and analysis situations. By applying such templates to architectural models, software architects become more effective and efficient because captured design decisions can automatically be integrated into architectural models, checked for consistency, and be analyzed.In the following, this introductory section refines this motivation and idea behind the AT method and gives an overview of this paper.
Analyzing quality-of-serviceA concrete category of engineering approaches are architectural analyses [2, p. 291]. In Koziolek's process for architectural analyses [12, p. 3] (see 'QoS analysis model' and 'analysis results' of Figure 1), software architects quantify a system's QoS properties on the basis of architectural models that (semi-)formally capture taken decisions, for example, the structure of the planned software. ...