0% found this document useful (0 votes)
86 views46 pages

Lecture # 2: Software System Quality

The document discusses quality models and frameworks for evaluating software quality. It provides an overview of McCall's quality factors model, which defines 11 quality factors grouped into 3 categories: product operation, product revision, and product transition. The factors are correctness, reliability, efficiency, integrity, usability, maintainability, flexibility, testability, portability, reusability, and interoperability. The document also discusses additional quality factors proposed by other researchers, such as verifiability, expandability, safety, manageability, and survivability.

Uploaded by

fasiha Fatima
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
86 views46 pages

Lecture # 2: Software System Quality

The document discusses quality models and frameworks for evaluating software quality. It provides an overview of McCall's quality factors model, which defines 11 quality factors grouped into 3 categories: product operation, product revision, and product transition. The factors are correctness, reliability, efficiency, integrity, usability, maintainability, flexibility, testability, portability, reusability, and interoperability. The document also discusses additional quality factors proposed by other researchers, such as verifiability, expandability, safety, manageability, and survivability.

Uploaded by

fasiha Fatima
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 46

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: [email protected]
q Website: http://fms.uettaxila.edu.pk/Profile/ali.javed
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. http://www.bth.se/tek/besq.nsf/%28WebFiles%29/CF1C3230DB425EDCC1257069
00317C44/$FILE/chapter_1.pdf
2. http://www.heppenstall.ca/academics/doc/320/L01_SoftwareQuality.pdf
3. http://www.cis.gsu.edu/~ghubona/cis8300/ISO9126.pdf
4. http://en.wikipedia.org/wiki/ISO/IEC_9126
5. http://www.tol.oulu.fi/users/ilkka.tervonen/SQTe_2_11.pdf
6. http://agileinaflash.blogspot.com/2009/04/furps.html
7. http://www.architecting.co.uk/presentations/NFRs.pdf
8. https://en.wikipedia.org/wiki/Software_quality#CISQ.27s_quality_model
9. http://wwwagse-old.informatik.uni-kl.de/pubs/repository/basili94b/encyclo.gqm.pdf
10. http://www.iteva.rug.nl/gqm/GQM%20Guide%20non%20printable.pdf
11. http://msritse2012.wordpress.com/2013/01/27/quality-models-in-software-
engineering/
12. http://www.mecs-press.org/ijmecs/ijmecs-v5-n4/IJMECS-V5-N4-5.pdf
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

You might also like