200 likes | 298 Views
Understanding Quality Attributes. Võ Đình Hiếu. Contents. Quality attributes (QA) QA Scenarios. Requirements. Funtional requirements Quality attribute requirements Constraints. Quality Attribute.
E N D
Understanding Quality Attributes VõĐìnhHiếu
Contents • Quality attributes (QA) • QA Scenarios
Requirements • Funtional requirements • Quality attribute requirements • Constraints
Quality Attribute A quality attribute (QA) is a measurable or testable property of a system that is used to indicate how well the system satisfies the needs of its stakeholders
Architecture and Quality Attributes • Achieving quality attributes must be considered throughout design, implementation, and deployment. • Satisfactory results are a matter of getting the big picture (architecture) as well as the details (implementation) correct • Usability involves both architectural and non-architectural aspects. Making the user interface easy to use is non-architectural, but providing the user with undo operations is architectural.
Architecture and Quality Attributes • Modifiability is determined by how functionality is divided (architectural) and by coding techniques within a module (non-architectural). • Performance depends partially on how much communication is necessary among components and how shared resources are allocated (architectural) and partially on the choice of algorithms and how they are coded (non-architectural)
Architecture and Quality Attributes The messages: • Architecture is critical to the realization of many qualities of interest in a system, and these qualities should be designed in and can be evaluated at the architectural level. • Architecture, by itself, is unable to achieve qualities. It provides the foundation for achieving quality, but this foundation will be to no avail if attention is not paid to the details.
Quality Attribute Scenarios A conmon form to specify quality attribute requirements
Quality Attribute Scenarios • A quality attribute scenario consists of six parts • Stimulus – an event that arrives at the system • Source of stimulus – the entity that generated the stimulus • Response – the activity undertaken after the arrival of the stimulus • Response measure –determine whether a response is satisfactory • Environment – the particular conditions in which the stimulus occurs • Artifact – the system or the pieces of it that are stimulated
General vs. Concrete Scenarios • A general quality attribute scenario is system independent and can, potentially, pertain to any system. • A concrete quality attribute scenario is specific to the particular system under consideration.
Architectural tactics • A tactic is a design decision that influences the achievement of a quality attribute response • The focus of a tactic is on a single quality attribute response (no tradeoff within a tactic)
Architectural tactics Tactics to Control Response Stimulus Response
Quality design decisions • Allocation of responsibilities • Coordination model • Data model • Management of resources • Mapping among architectural elements • Binding time decisions • Choice of technology
Summary • Concept of quality attribute • QA scenarios