
 
Composite. It simplifies the implementation of 
complex systems by applying hierarchically a single 
structural pattern. Also it simplifies the development 
(and understanding) of both functional and control 
aspects by decoupling them from each other. It 
allows control or diagnosis services policies to be 
changed without affecting the basic functionality. 
A  quality based design requires a measurement 
instrument that must be defined by a taxonomy for 
quality attributes, which is organized with respect to 
three main elements: (1) The priority in a quality 
attributes list. The presence of this element in the 
taxonomy is necessary, due to the costs required by 
an analysis method at the architectural level. (2) 
Architecture views which are relevant for that 
quality attribute; (3) Appropriate methods to be 
applied for quality attribute analysis. 
Quality attributes may be classified in essential, 
very desirable, desirable, don’t care and forbidden. 
The priorities are established based on the experts' 
knowledge and the stakeholders’ objectives. Quality 
function deployment (Reed, 1993) is a suitable 
technique for showing the relational strengths from 
objectives of stakeholders and architectural to 
quality attributes. These priorities are important for 
the evaluation process, which considers an analysis 
method for each quality attribute.  At this moment 
various architecture analysis methods, such as 
scenario-based architecture analysis (SAAM) 
(Kazman et al. 1994), architecture tradeoff analysis 
(ATAM) (Kazman et al, 1998), architecture level 
prediction of software maintenance (ALPSM) 
(Bengston, 2004), or reliability analysis using failure 
scenario (SARAH) exist. Methods are distinguished 
by the evaluation techniques, the number of quality 
attributes and their interaction for tradeoff decisions, 
the stakeholders’ involvement, and how detailed the 
architecture design is at the moment the analysis 
(Dobrica and Niemela, 2002). 
The measurement instrument is applied to the 
RA during analysis. The quality attribute with the 
first priority in a list is first analyzed with respect to 
the appropriate architecture view and the appropriate 
method. Then the next quality attribute from the list 
is analyzed in isolation and then considering the 
interaction with the first one for finding sensitivity 
points and tradeoffs on the services included in the 
RA.  The process is repeated for all the attributes in 
the list. In order to decide on RA core services, this 
procedure could also be improved and refined.  In 
this case special attention should be paid to the 
collections of services in the architecture which are 
critical for achieving a particular quality attribute, or 
architectural elements to which multiple quality 
attributes are sensitive. A deeper level of analysis 
could influence the decision on the addition of new 
services to the RA.   
5 CONCLUSIONS 
This paper has proposed an approach for a RA 
development for complex ES application domains 
based on a knowledge of reusable concepts from 
software engineering at architectural level. The 
approach has an immense potential to improve 
embedded control systems development as well as 
reduce time and costs in stages such as architecture 
design and analysis. However, for this approach’s 
success it is necessary to create a cooperation culture 
among embedded control system developers. Future 
research work is needed to develop systematic ways 
of bridging these reusable concepts to a RA, 
reducing in this way the cognitive complexity. 
ACKNOWLEDGEMENTS 
This work is supported by the Romanian research 
grant CNCSIS IDEI no. 1238/2008. 
REFERENCES 
MARTE, 2008, Modeling and Analysis of Real Time and 
Embedded, www.omg.org. 
Buschmann F., R. Meunier, and H. Rohnert, 1996, 
Pattern-Oriented Software Architecture: A System of 
Patterns, John Wiley and Sons. 
Gamma E., R. Helm, R. Johnson, and J. Vlissides, 1994, 
Design Patterns: Elements of Reusable Object-
Oriented Software, Addison Wesley. 
Selic B., 1998, Recursive control, in: R. Martin, et al. 
(Eds.),  Patterns Languages of Program Design, 
Addison-Wesley, pp. 147–162. 
Kazman R., L. Bass, G. Abowd, M. Webb,1994, SAAM: 
A method for analyzing the properties of Software 
Architectures, Procs of the ICSE, 81-90. 
Kazman R., M. Klein, M. Barbacci, H. Lipson, T. 
Longstaff, S. J. Carrière, 1998, The Architecture 
Tradeoff Analysis Method, Procs. of the ICECCS.  
Reed B.M., D.A. Jacobs, 1993, Quality Function 
Deployment For Large Space Systems, National 
Aeronautics and Space Administration. 
Bengston PO, 2004, Architecture Level Prediction of 
Software Maintenence, Procs of the ICSR5. 
Dobrica L. and Niemelä E., 2002, A survey on software 
architecture analysis methods, IEEE Transactions on 
Software Engineering, 28(7), 638-653. 
INTEGRATING REUSABLE CONCEPTS INTO  A REFERENCE ARCHITECTURE DESIGN  OF COMPLEX
EMBEDDED SYSTEMS
237