CSUN COMP 684 - Quality Models and Quality Attributes

Unformatted text preview:

Quality Models and Quality AttributesOutlineProcess and Product QualitySpecifying Quality RequirementsSpecifying Quality Requirements (Cont’d)Slide 6Slide 7Measuring Quality AttributesMeasuring Quality Attributes (Cont’d)Quality Requirements and Architectural DesignQuality Requirements and Architectural Design (Cont’d)Slide 12Systems Knowledge and Quality AttributesSystems Knowledge and Quality Attributes (Cont’d)Barriers to Achieving QualityBarriers to Achieving Quality (Cont’d)Common Quality Attribute MisunderstandingsCommon Quality Attribute Misunderstandings (Cont’d)Understanding Quality ModelsUnderstanding Quality Models (Cont’d)Slide 21Quality MetamodelThe McCall/GE Model FactorsThe McCall/GE Model Factors (Cont’d)Additional Factors from BoehmDeGrace and Stahl – Software Engineering PracticesLaurence Best’s Application ArchitectureLaurence Best’s Application Architecture (Cont’d)Bass, Clements, and Kazman Categories for Quality AttributesBass, Clements, and Kazman Categories for Quality Attributes (Cont’d)Slide 31Slide 32Slide 33Slide 34The ISO/IEC 9126 StandardBenefits of Quality ModelsBenefits of Quality Models (Cont’d)Architecting with Quality AttributesFunctionalityInteroperabilitySecurityPerformance (Efficiency)Resource EfficiencyModifiabilityAvailability and ReliabilityRecoverabilityUsabilityPortabilityPortability (Cont’d)Architecting and Quality ModelsArchitecting and Quality Models (Cont’d)SummarySummary (Cont’d)Quality Models and Quality AttributesOutlineProcess and product qualityImproving the quality of the process can improve the quality of the product.Process quality does not address all qualities.Specifying quality requirementsSome quality attributes can be quantifiably measured, others have qualitative values which are observed.Understanding quality modelsA quality model is a taxonomy of quality attributes and their relationships.Architecting with quality attributesSeveral quality attributes are influenced by the architecture.Process and Product QualityProcess qualities are a measure of an activity the end result of which is a product.Few quality models for the software architecting process exist.Product quality is a measure of a tangible product itself which could be the final executable system or intermediate products like specifications, models, plans, etc, which collectively form the architectural description.Specifying Quality RequirementsSample questions to discover information about quality attributes:How does the application fit into the enterprise’s objectives, processes, and other information systems?How does it relate to other systems including manual business processes?Is it intuitive and usable or does it sit in a virtual corner collecting cyber-dust?Specifying Quality Requirements (Cont’d)A quality attribute is a property of a process or product that can have some qualitative or quantitative value and can be measured or observed.Examples of quality attributes are:MaintainabilityPortabilityFunctionalityusabilitySpecifying Quality Requirements (Cont’d)A quality requirement is a specification of the acceptable values of a quality attribute that must be present in the system.By leaving certain attributes out of the requirements specification, it implies that these attributes are not important.However, they were probably omitted due to lack of understanding of the quality or how to specify it.Specifying Quality Requirements (Cont’d)The external view of an application’s qualities is called its characteristics (usability, performance, etc.).Internal characteristics or subcharacteristics are quality attributes viewable by the developers (throughput, load balancing, fault tolerance, etc.).One internal attribute may influence one or more characteristics.One characteristic may be influenced by one or more internal attributes.Measuring Quality AttributesA metric is a qualitative or quantitative measurement or scale or a specified quality attribute together with a method or technique for observing or measuring the quality.Examples of internal metrics are the complexity of the code logic, or the performance of specific functions.The most common external metrics are tests of the system’s functions, reliability, and performance.Measuring Quality Attributes (Cont’d)Quality metrics should be specified as unambiguously as possible.Qualities may be specified with scenarios specified by the software designers and architects with assistance form the acquirers and users.Quality Requirements and Architectural DesignQuality measurements are performed primarily on the architectural description.While some measurements are quantitative, most are qualitative.Qualitative evaluations, while not as rigorous as quantitative evaluations, can be objective and provide useful predictions about he success of the system in meeting quality requirements.Quality Requirements and Architectural Design (Cont’d)Quality attributes can be addressed through architectural styles and patterns.Different architectural styles address different sets of quality attributes and to varying degrees.The specification of quality attributes, therefore affects the architectural style of the system.Quality Requirements and Architectural Design (Cont’d)Not all quality attributes are addressed by the architectural design.Usability and performance both have nonarchitectural aspects.Systems Knowledge and Quality AttributesIn terms of levels of systems knowledge, the identification of quality attributes is equivalent to the source level (level 0) of systems knowledge.Quality requirements are specific values or ranges of values for these attributes which is data level knowledge about the system (level 1).Systems Knowledge and Quality Attributes (Cont’d)Software architecting begins with creating models (generative level of systems knowledge, or level 2) that can generate the data level knowledge.We evaluate the architecture to see if it indeed produces the same data as specified in level 1.Barriers to Achieving QualityCommon reasons for failure to meet high levels of quality include:Misunderstanding of the importance of quality attributesInadequate languages for expressing and specifying quality requirementsInadequate modeling methods and notations for expressing solutions that address specific quality


View Full Document

CSUN COMP 684 - Quality Models and Quality Attributes

Documents in this Course
Load more
Download Quality Models and Quality Attributes
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Quality Models and Quality Attributes and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Quality Models and Quality Attributes 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?