SOFTWARE SYSTEM QUALITY
LECTURE # 2
QUALITY MODELS
14th October, 2021 Dr. Ali Javed
Contact Information
2
q Instructor: Dr. Ali Javed
Associate Professor
Department of Computer Science
U.E.T Taxila
q Email: [Link]@[Link]
q Website: [Link]
q Contact No: +92-51-9047747
q Office hours:
n Monday, 11:00 - 12:00, Office # 7 S.E.D
Dr. Ali Javed
Course Information
3
q Course Name: Software System Quality
q Course Code: SE-5001
Dr. Ali Javed
4 Quality Models & Framework
q McCall’s Model
q ISO 9126 Model
q Boehm’s Model
q FURPS Model
q CISQ’s Model
q GQM Approach
q Dromey’s
q Star Model
Dr. Ali Javed
Quality Models [1,2]
5
q A Quality Model is defined as, “the set of characteristics and the relationships
between them which provides the basis for specifying quality requirements and
evaluating quality”
q Software quality is described by specific quality models
q Quality attributes apply both to the product and the process.
ü product: delivered to the customer
ü process: produces the software product
ü resources: (both the product and the process require resources)
§ Underlying assumption: a quality process leads to a quality product
q Choose quality attributes (and weights) depending on the project context
Dr. Ali Javed
McCall’s Factor-Criteria-Metrics Model
6
Classification into :
q Factors (to specify):
P They describe the external view of the software, as viewed by the users.
P Examples: correctness, reliability, efficiency, portability, maintainability e.t.c
q Criteria (to build):
P They describe the internal view of the software, as seen by the developer.
P Example: Modularity is an attribute of the architecture of a software system. A highly
modular software allows designers to put cohesive components in one module, thereby
increasing the maintainability of the system.
q Metrics (to control):
P They are defined and used to provide a scale and method for measurement.
Dr. Ali Javed
McCall’s Factor
7
q McCall has 11 factors; Groups them into categories.
ü 1977; others have added, but this still prevail.
Software quality factors
q Three categories:
ü Product Operation Factors
q How well it runs…. Product operation factors
q Correctness, reliability, efficiency, integrity, and usability
ü Product Revision Factors
q How well it can be changed, tested, and redeployed.
q Maintainability; flexibility; testability
Product revision factors
ü Product Transition Factors
q How well it can be moved to different platforms and interface with other systems
q Portability; Reusability; Interoperability
Product transition factors
Dr. Ali Javed
8 McCall’s Quality Factors
Dr. Ali Javed
McCall’s 11 Quality Factors
9
q Product Operation
ü Correctness – Does it do what I want? A system is correct if it
behaves according to its specification
E.g Specifying the completeness of the outputs
provided
ü Reliability - Does it do it accurately all the time? Reliability is
the probability that the system will operate as expected over
a specified interval.
E.g A heart monitoring system must have a failure rate
of less than one per million cases, Downtime for a
system will not be more than ten minutes per month
Dr. Ali Javed
McCall’s 11 Quality Factors
10
q Product Operation
q Efficiency - Will it run on my machine as well as it can?
Deals with the hardware resources needed to perform
the functions of the software. Use of resources such as
computing time, memory, etc. First do it, then do it right,
then do it fast
ü Integrity - Is it secure? deal with system security that
prevent unauthorized person's access.
ü Usability - Can I run it? The degree to which the human
users find the system both “easy to use” and useful. Deals
with learnability, utility… depends on target audience
(Novice vs Expert), Often a system has various kinds of
users (operators, installers, end users)
E.g A staff member/ user should be able to
process n transactions / unit time.
Dr. Ali Javed
McCall’s 11 Quality Factors
11
q Product Revision
ü Maintainability - Can I fix it? The degree of
effort needed to identify reasons (find the
problem) for software failure and to correct
failures and to verify the success of the
corrections. Deals with the modular structure of
the software
ü Flexibility - Can I change it? deals with resources
to change (adopt) software to different types of
customers that use the app perhaps a little
differently;
ü Testability - Can I test it? How much effort is required
to test the software?
Dr. Ali Javed
McCall’s 11 Quality Factors
12
q Product Transition
ü Portability - Will I be able to use on another
machine? If the software must be ported to different
environments (different hardware, operating systems,
…) and still maintain an existing environment, then
portability is a must.
ü Reusability - Will I be able to reuse some of the
software?
- Can save immense development costs
due to errors found / tested.
- Certainly, higher quality software and
development with quick results.
ü Interoperability - Will I be able to interface it with
another application?
Dr. Ali Javed
Additional Quality Factors
13
q Some other SQA professionals have offered essentially renamed
quality factors.
q Totally five new factors were suggested
q Evans and Marciniak offer two ‘new’ ones:
ü Verifiability and Expandability
q Deutsch and Willis offer three ‘new’ ones.
ü Safety
ü Manageability, and
ü Survivability
Dr. Ali Javed
Additional Quality Factors
14
q Verifiability
ü Deals with how easy it is to verify that the
software is working properly;
ü addresses design and programming
features that allow for efficient
verification of design and programming;
ü This does not refer to outputs; rather,
structure of code; design elements and
their dependencies, coupling, cohesion;
q Expandability
ü Deals with increasing the software’s
functionality or performance to meet new
needs or to provide more usability.
§ Essentially this is McCall’s flexibility
Dr. Ali Javed
Additional Quality Factors
15
q Safety
ü address conditions that could bring the equipment or
application down especially for controlling software, as
in setting alarms or sounding warnings.
q Manageability
ü Manageability defines how easy it is for system
administrators to manage the application
ü refer to tools primarily administrative to control
versions, configurations and change management/
tracking.
ü We must have tools to manage versions and various
configurations that may vary from customer to customer.
q Survivability
ü survivability is the ability of a system to continue to
function during and after a natural or man-made
disturbance (or system failure)
§ Appears to be quite similar to Reliability in McCall’s
model
Dr. Ali Javed
Quality Models Comparison
16
Alternative factor models
No. Software quality McCall’s classic Evans and Deutsch and
factor model Marciniak model Willis model
1 Correctness + + +
2 Reliability + + +
3 Efficiency + + +
4 Integrity + + +
5 Usability + + +
6 Maintainability + + +
7 Flexibility + + +
8 Testability +
9 Portability + + +
10 Reusability + + +
11 Interoperability + + +
12 Verifiability + +
13 Expandability + +
14 Safety +
15 Manageability +
16 Survivability +
Dr. Ali Javed
McCall’s Quality Criteria
17
q Some Quality Criteria’s from McCall’s Model is listed below:
ü Accuracy (The precisions of computations and outputs)
ü Completeness (The degree to which the full implementation of the required functionalities has
been achieved)
ü Error Tolerance (The degree to which the continuity of operations is ensured under adverse
conditions)
ü Hardware Independence (The degree to which the software is dependent on the underlying
hardware)
ü Modularity (The provision of highly independent modules)
ü Simplicity (The ease with which the software can be understood)
Dr. Ali Javed
McCall’s Quality Factors and Criteria
18
q Relationship Between Quality Factors and Quality Criteria
ü Each quality factor is positively influenced by a set of quality criteria, and the same
quality criterion impacts a number of quality factors.
§ Example: Simplicity impacts reliability, usability, and testability.
ü If an effort is made to improve one quality factor, another quality factor may be
degraded.
§ Example: Portable code may be less efficient.
ü Some quality factors positively impact others.
§ Example: An effort to improve the correctness of a system will increase its reliability.
Dr. Ali Javed
19 ISO- 9126-1 [3,4]
Dr. Ali Javed
ISO-9126-1 Model
20
q Software quality characteristics:
ü A set of attributes of a software product by which its quality is described and evaluated.
ü A software quality characteristic may be refined into multiple levels of sub-characteristics. (ISO
9126:1991,3.13)
ü Each sub-characteristic is evaluated by a set of metrics.
Dr. Ali Javed
The Six Quality Characteristics
(ISO/IEC 9126-1)
21
Dr. Ali Javed
The Six Quality Characteristics
(ISO/IEC 9126-1)
22
Dr. Ali Javed
Selecting and Prioritizing Quality
23
Factors [5]
Dr. Ali Javed
Relationships between quality
24
factors [5]
Dr. Ali Javed
25 Hewlett Packard: F.U.R.P.S
Dr. Ali Javed
Hewlett Packard F.U.R.P.S [6,7]
26
q Robert Grady at Hewlett Packard proposed a model called as FURPS Model in 1987
and later extended by IBM as FURPS+[12]
q Factors:
ü Functionality: represents all the system-wide functional requirements that we would expect
to see described
ü Usability: aesthetics, consistency, documentation
ü Reliability: Availability, Accuracy, Recoverability
ü Performance: response time, resource consumption, start up time, recovery time
ü Supportability: can it be extended, adapted, corrected?
Design Constraints
Implementation Constraints
Interface Requirements
q FURPS is originally a company specific quality model Physical Requirements
q FURPS+ is now widely used in the software industry.
q The + was later added to the model after various campaigns at HP to extend the
acronym to emphasize various attributes.
Dr. Ali Javed
Hewlett Packard F.U.R.P.S+ [6,7]
27
q Design Requirements
ü E.g. a relational database is required
q Implementation requirement
ü Constrains the coding or construction e.g. required standards, platform or
implementation language
q Interface requirement
ü A requirement to interact with an external item
q Physical requirement
ü A physical constraint imposed on the hardware; for example, shape, size and
weight
Dr. Ali Javed
Hewlett Packard F.U.R.P.S+ [6,7]
28
Classifying Requirements
q The persistence will be handled by a relational database is a -------
requirement
q The database will be Oracle 8i is -------------- requirement
q The system will run 7 days a week, 24 hours a day is a -----------
requirement
q An online help system is required is a ----------- requirement
q All presentation logic will be written in Visual Basic is --------- requirement
Dr. Ali Javed
29 Boehm’s Model [8]
Dr. Ali Javed
Boehm’s Model
30
q Another software quality model called as Boehm’s quality model was given
by Barry W. Boehm in 1978.
q Boehm's quality model improves upon the work of McCall and his colleagues
q For Boehm and his colleagues, the prime characteristic of quality is what they
define as “general utility
q According to Pfleeger [13] , this is an assertion that first and foremost, a
software system must be useful to be considered a quality system.
q For Boehm, general utility is composed of as-is utility, maintainability and
portability
Dr. Ali Javed
Boehm’s Model
31
q 7 quality factors, 15 quality criteria
q At the highest level of his model, Boehm defined three primary uses namely,
as-is utility, the extent to which the as-is software can be used (i.e. ease of
use, reliability and efficiency),
q maintainability, ease of identifying what needs to be changed. He defined
testability, understandability and flexibility/modifiability as the sub-
characteristics of maintainability.
q portability, ease of changing software to accommodate a new environment.
Dr. Ali Javed
Boehm’s Model
32
Dr. Ali Javed
33 CISQ’s Quality Model [8]
Dr. Ali Javed
CISQ’s Quality Model
34
q Even though "quality is a perceptual, conditional and somewhat subjective attribute and
may be understood differently by different people", software structural quality
characteristics have been clearly defined by the Consortium for IT Software Quality (CISQ).
q Under the guidance of Bill Curtis, co-author of the Capability Maturity Model framework
and CISQ's first Director; and Capers Jones, CISQ's Distinguished Advisor, CISQ has defined
five major desirable characteristics of a piece of software needed to provide business
value. In the House of Quality model, these are "Whats" that need to be achieved:
ü Reliability
ü Efficiency
ü Security
ü Maintainability
ü Size
Dr. Ali Javed
An Efficient and Effective New Generation
35
Objective Quality Model for Mobile Applications [12]
Dr. Ali Javed
36 GQM [9,10]
Dr. Ali Javed
GQM- Goal Question Metric
37
q GQM, the acronym for "goal, question, metric", is an approach to software metrics
q GQM approach provides a framework with 3 steps:
ü Conceptual level(Goal):: List the major goals of the project/Process
ü Operational level(Question):: Derive from each goal the questions that must be
answered to determine if the goals are being met
ü Quantitative level(Metric):: Decide what must be measured to answer the questions
adequately
Dr. Ali Javed
GQM- Example
38
Dr. Ali Javed
GQM- Example
39
Dr. Ali Javed
40 Dromey’s Model
Dr. Ali Javed
Dromey’s Model [11]
41
q Dromey proposes a product-based quality model which recognizes that quality evaluation
differs for each product and that a more dynamic idea for modeling the process is needed
to be wide enough to apply for different systems.
q Dromey partitions the product into various components and gives the following examples
of what he means by software components for each of the different models:
q Variables, functions, statements, etc. can be considered components of the Implementation model;
q A requirement can be considered a component of the requirements model;
q A design/module can be considered a component of the design model;
q According to Dromey all these components possess fundamental properties that can be classified into
four categories:
ü Correctness : Evaluates if some basic principles are violated.
ü Internal : Measure how well a component has been deployed according to its intended use.
ü Contextual : Deals with the external influences by and on the use of a component.
ü Descriptive : Measure the descriptiveness of a component (for example, does it have a meaningful name.)
Dr. Ali Javed
Dromey’s Model [11]
42
q Dromey's Quality Model is further structured around a 5 step process:
1) Chose a set of high-level quality attributes necessary for the evaluation.
2) List components/modules in your system.
3) Identify quality-carrying properties for the components/modules
4) Determine how each property effects the quality attributes.
5) Evaluate the model and identify weaknesses.
Dr. Ali Javed
43 Software Quality Star
Dr. Ali Javed
Software Quality Star
44
q The software quality star is a conceptual model for presenting different perspectives of software
quality. The model is based on the Acquirer and Supplier as defined in ISO/IEC 12207 (1995)
q There are three significant elements in the star – the Procurer (Acquirer), the Producer (Supplier) and
the Product.
q In the model the procurer enters into a contract with the producer to create a software product. This
contract will clearly specify the quality characteristics of the product.
q The procurer’s perspective of the producer organisation is that they will use best project management
techniques and engage in first-rate processes to create a quality product.
q The model considers the Acquirer to be the lead party in any contractual arrangement as it is the
Acquirer’s users and technical support professionals who will dictate the success or failure of the
software product.
q The model also accommodates the producer’s perspective of software quality and focuses on the
maturity of the producer organisation as software developers and the development processes that
they used to create quality software products.
Dr. Ali Javed
References
45
1. [Link]
00317C44/$FILE/chapter_1.pdf
2. [Link]
3. [Link]
4. [Link]
5. [Link]
6. [Link]
7. [Link]
8. [Link]
9. [Link]
10. [Link]
11. [Link]
engineering/
12. [Link]
13. B. Kitchenham and S. Pfleeger, "Software quality: the elusive target", Software, IEEE, vol. 13, no. 1,
pp. 12–21, 1996.
Dr. Ali Javed
For any query Feel Free to ask
46
Dr. Ali Javed