Understanding and Dealing with Qualities
Quality attributes are the important factors that are used to establish the architecture. There is a constant need to redesign the systems because they are being difficult to maintain or to scale, they are too slow to continue their operations, or they are easy to hack. These are reasons constrain the quality attributes to be the architect’s goal through building the architecture of the product. Quality attribute is a measurable part to indicate that the system is satisfying the stakeholder’s requirement. The requirements that the architect needs are the ones that directly influence the architecture itself. They play an important role in determining the architecture of the system. Those requirements are called architecturally significant requirements (ASR); such requirements require special attention. Not all requirements have equal significance with regard to the architecture.
This chapter also focuses on the relation between architecture and quality. It shows that the degree of achieving the qualities of the system depends on its architecture; that is why architecture provides the foundation for building high-quality products. The main thing to discuss in this chapter is the meaning of trade-off between qualities and the models that are used to capture them.
Quality Attribute Scenario and Quality Attribute Workshop are two important tools that are used to gather information from stakeholders to reach the important qualities of the system. In this chapter, all the previous concepts will be described in detail.
The meaning of architecturally significant requirement (ASR) and the method that is used to gather this type of requirement
The meaning of trade-off and the model that is used to capture it
Techniques that are used to gather information on quality attributes: Quality Attribute Scenario (QAS) and Quality Attribute Workshop (QAW).
KeywordsQuality attribute Architecturally significant requirement (ASR) Trade-off Quality Attribute Scenario (QAS) Quality Attribute Workshop (QAW)
- L. Bass, P. Clements, R. Kazman, Software Architecture in Practice, 3rd edn. (Addison-Wesley, 2013)Google Scholar
- I. Sommerville, Software Engineering, 9th edn. (Addison-Wesley, 2011)Google Scholar
- M. Barbacci et al., Quality AttributeWorkshops (QAWs), 3rd edn. Tecnical Report CMU/ SEI, 2003Google Scholar
- On line training from SEI: Software Architecture: Principles and Practices, http://ww.sei.cmu.edu/education-outreach/courses/online-training
- Visiting the on line SEI library and searching on keywords of this chapter you will find a list of references as for exampleGoogle Scholar
- Achieving Product Qualities through Software Architecture Practices by Linda NorthopGoogle Scholar
- Toward Deriving Software Architectures From Quality Attributes by Rick KazmanGoogle Scholar
- Architecting high quality software: the role of software architecture in system development and evaluation by Linda NorthopGoogle Scholar
- A. Chandrasekar, S. Rajesh, P. Rajesh, A research study on software quality attributes. Int. J. Sci. Res. Publ. 4(1), ISSN 2250-3153 (2014)Google Scholar
- M. Barbacci, Software quality attributes and trade-offs, SEI, CMU, (2003)Google Scholar
- G. Bessin, The Business Value of Business Quality, (IBM Cooperation, 2004)Google Scholar
- J. Bergey, M. Barbacci, W. Wood, Using Quality Attribute Workshops to Evaluate Architectural Design Approaches in a Major System Acquisition: A Case Study, Technical Report, CMU/SEI, July 2000Google Scholar