Software Quality Models Presentation.pptx

2,163 views 31 slides Apr 07, 2024
Slide 1
Slide 1 of 31
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31

About This Presentation

Software Quality Models


Slide Content

Software Quality Models by: Dr. Shahid Farid Software Quality Assurance

Software Quality Assurance (SQA) 2 Outline McCall’s Quality Model (1977) Boehm’s Quality Model (1978) FURPS/FURPS+ Dromey's Quality Model ISO Models (ISO 9126) Capability Maturity Model(s) Six Sigma

Software Quality Assurance (SQA) 3 McCall’s Quality Model Three major perspectives for defining and identifying the quality of a software product: Product Revision (ability to undergo changes), Product Transition (adaptability to new environments) and Product Operations (its operation characteristics).

Software Quality Assurance (SQA) 4 McCall’s Quality Model The model details the three types of quality characteristics in a hierarchy of 11 Factors, 23 Quality Criteria and Metrics

McCall’s Quality Model (Cont.) It distinguishes between two levels of quality attributes: Quality Factors The higher level quality attributes which can be accessed directly are called quality factors. These attributes are external attributes. The attributes in this level are given more importance by the users and managers. Quality Criteria The lower or second level quality attributes which can be accessed either subjectively or objectively are called Quality Criteria. These attributes are internal attributes. Each quality factor has many second level of quality attributes or quality criteria. Software Quality Assurance (SQA) 5

McCall’s Quality Model It classifies all software requirements into 11 software quality factors. The 11 factors are organized into three product quality factors Product operation, Product revision, and Product transition factors. Software Quality Assurance (SQA) 6

Software Quality Assurance (SQA) 7 McCall’s Quality Model

McCall’s Quality Model (Cont.) Software Quality Assurance (SQA) Use Factor Criteria Product Operation Usability Operability Training Communicativeness I/O Volume I/O Rate Integrity Access Control Access Audit Efficiency Storage Requirement Execution Speed Correctness Traceability Completeness Consistency Reliability Accuracy Error Tolerance Consistency Simplicity 8

McCall’s Quality Model (Cont.) Product Revision Maintainability Consistency Simplicity Conciseness Self-descriptiveness Modularity Testability Simplicity Scope for Automation Flexibility Expandability Architecture Usability Self descriptiveness Modularity Software Quality Assurance (SQA) 9

McCall’s Quality Model (Cont.) Product Transition Re-usability Architectural Usability Self Descriptiveness Modularity Machine Independence Operating system Independence Portability Self Descriptiveness Modularity Machine Independence OS Independence Software Quality Assurance (SQA) 10

Software Quality Assurance (SQA) 11

Software Quality Assurance (SQA) 12 Boehm’s Quality Model Similar to the McCall Quality Model Presents a hierarchical quality model structured around High-level characteristics, Intermediate level characteristics, Primitive characteristics

The Highest Level As is utility Extent to which, we can use software as-is. Maintainability Effort required to detect and fix an error during maintenance. Portability Effort required to change software to fit in a new environment Software Quality Assurance (SQA) 13

Intermediate Level Characteristic Portability – Effort required to change software to fit in a new environment. Reliability – Extent to which software performs according to requirements. Efficiency – Amount of hardware resources and code required to execute a function. Usability (Human Engineering) – Extent of effort required to learn, operate and understand functions of the software. Software Quality Assurance (SQA) 14

Intermediate Level Characteristic (cont.) Testability – Effort required to verify that software performs its intended functions. Understandability – Effort required for a user to recognize logical concept and its applicability. Modifiability – Effort required to modify a software during maintenance phase. Software Quality Assurance (SQA) 15

Software Quality Assurance (SQA) 16 Boehm’s Quality Model Boehm's Software Quality Characteristics Tree

Software Quality Assurance (SQA) 17 McCall’s & Boehm’s Quality Models: a comparison

Boehm’s Model Advantages : It focuses and tries to satisfy the needs of the user. It focuses on software maintenance cost effectiveness. Disadvantages : It doesn’t suggest, how to measure the quality characteristics. It is difficult to evaluate the quality of software using the top-down approach Software Quality Assurance (SQA) 18

Software Quality Assurance (SQA) 19 FURPS/FURPS+ Similar to the McCall’s and Boehm’s Quality Models Divides quality attributes into two Functional (F) Nonfunctional (URPS) Proposed by Robert Grady Extended by Rational Software, now IBM Rational Software - into FURPS+

Software Quality Assurance (SQA) 20 FURPS/FURPS+ Functionality – which may include feature sets, capabilities and security Usability – which may include human factors, aesthetics, consistency in the user interface, online and context sensitive help, wizards and agents, user documentation, and training materials Reliability - which may include frequency and severity of failure, recoverability, predictability, accuracy, and mean time between failure (MTBF) Performance - imposes conditions on functional requirements such as speed, efficiency, availability, accuracy, throughput, response time, recovery time, and resource usage Supportability - which may include testability, extensibility, adaptability, maintainability, compatibility, configurability, serviceability, installability , localizability (internationalization)

Software Quality Assurance (SQA) 21 Dromey's Quality Model Geoff Dromey proposed a product based quality model Similar to the McCall’s, Boehm’s and the FURPS(+) quality model, The basic idea is: “quality evaluation differs for each product”

Software Quality Assurance (SQA) 22 Dromey's Quality Model

Software Quality Assurance (SQA) 23 Dromey's Quality Model Dromey's Quality Model is further structured around a 5 step process: Chose a set of high-level quality attributes necessary for the evaluation. List components/modules in your system. Identify quality-carrying properties for the components / modules (qualities of the component that have the most impact on the product properties from the list above). Determine how each property effects the quality attributes. Evaluate the model and identify weaknesses.

Software Quality Assurance (SQA) 24 ISO 9126 Standard Quality Model A deviation of McCall’s Factor-Criteria-Metric Model Established in 1993 Defines software quality as: “The totality of features and characteristics of a software product that bear on it ability to satisfy stated or implied needs.”

Software Quality Assurance (SQA) 25 ISO 9126 Quality is decomposed into six factors: Functionality Reliability Efficiency Usability Maintainability and Portability

Software Quality Assurance (SQA) 26

Software Quality Assurance (SQA) 27 ISO 9126

Software Quality Assurance (SQA) 28 Comparison

Software Quality Assurance (SQA) 29 Outline McCall’s Quality Model (1977) Boehm’s Quality Model (1978) FURPS/FURPS+ Dromey's Quality Model ISO Models (ISO 9126) Capability Maturity Model(s) (TBD) Six Sigma (TBD)

Acknowledgments A number of slides are borrowed from different authors Software Quality Assurance (SQA) 30

Software Quality Models by: Dr. Shahid Farid Software Quality Assurance