0% found this document useful (0 votes)
64 views33 pages

What Is Quality?: Conformance To Specifications Meeting Customer Needs

The document discusses several software quality models: 1) McCall's Quality Model from 1977 which defines three perspectives - product revision, product transition, and product operations. 2) Boehm's Quality Model from 1978 which has a hierarchical structure with high-level, intermediate, and primitive characteristics. 3) The FURPS model which evaluates functionality, usability, reliability, performance, and supportability. 4) ISO 9126 which is based on McCall and Boehm's models and includes functionality and internal/external quality characteristics.

Uploaded by

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

What Is Quality?: Conformance To Specifications Meeting Customer Needs

The document discusses several software quality models: 1) McCall's Quality Model from 1977 which defines three perspectives - product revision, product transition, and product operations. 2) Boehm's Quality Model from 1978 which has a hierarchical structure with high-level, intermediate, and primitive characteristics. 3) The FURPS model which evaluates functionality, usability, reliability, performance, and supportability. 4) ISO 9126 which is based on McCall and Boehm's models and includes functionality and internal/external quality characteristics.

Uploaded by

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

Software Quality Models and Philosophies

n What is quality?
5 Conformance to specifications
5 Meeting customer needs
n Such general definitions of quality are not sufficient in
practice.
n Thus software quality is described by specific quality
models
n Causal relationship from intangible quality views to
tangible software measures

February 27, 2020 1


McCall’s Quality Model (1977)
n One of the most renown models Presented by Jim McCall
n Originated from the US military (was developed for the US Air
Force, promoted within DoD) and is primarily aimed towards
the system developers and the system development process
n attempts to bridge the gap between users and developers by
focusing on a number of software quality factor that reflect
both the users’ views and the developers’ priorities
n The model has three major perspectives for defining and
identifying the quality of a software product:
5 product revision (ability to undergo changes)
5 product transition (adaptability to new environments)
5 product operations (its operation characteristics)

February 27, 2020 2


McCall’s Quality Model (1977)
n Product revision includes maintainability (the effort required to locate and
fix a fault in the program within its operating environment), flexibility (the
ease of making changes required by changes in the operating
environment) and testability (the ease of testing the program, to ensure
that it is error-free and meets its specification).
n Product transition is all about portability (the effort required to transfer a
program from one environment to another), reusability (the ease of
reusing software in a different context) and interoperability (the effort
required to couple the system to another system).
n Quality of product operations depends on correctness (the extent to which
a program fulfils its specification), reliability (the systems’ ability not to fail),
efficiency (further categorized into execution efficiency and storage
efficiency and generally meaning the use of resources, e.g. processor
time, storage), integrity (the protection of the program from unauthorized
access) and usability (the ease of the software)

February 27, 2020 3


McCall’s Quality Model (1977)
n The McCall Quality Model/triangle of quality

February 27, 2020 4


McCall’s Quality Model (1977)
n The model furthermore details the three types of quality characteristics
(major perspectives) in a hierarchy of factors, criteria and metrics:
5 11 Factors (To specify): They describe the external view of the
software, as viewed by the users.
5 23 quality criteria (To build): They describe the internal view of the
software, as seen by the developer.
5 Metrics (To control): They are defined and used to provide a scale
and method for measurement.
n The quality factors describe different types of system behavioral
characteristics, and the quality criterions are attributes to one or more of
the quality factors. The quality metric, in turn, aims to capture some of the
aspects of a quality criterion.
5 The actual quality metric is achieved by answering yes and no questions that
then are put in relation to each other. That is, if answering equally amount of
“yes” and “no” on the questions measuring a quality criteria you will achieve
50% on that quality criteria

February 27, 2020 5


McCall’s Quality Model (1977)

February 27, 2020 6


Boehm’s Quality Model (1978)
n Boehm’s models attempts to qualitatively define software
quality by a given set of attributes and metrics.
n Boehm's model is similar to the McCall Quality Model in that it
also presents a hierarchical quality model structured around
high-level characteristics, intermediate level characteristics,
primitive characteristics - each of which contributes to the
overall quality level.
n The high-level characteristics represent basic high-level
requirements of actual use to which evaluation of software
quality could be put – the general utility of software. The high-
level characteristics address three main questions that a
buyer of software has:
5 As-is utility: How well (easily, reliably, efficiently) can I use it as-is?
5 Maintainability: How easy is it to understand, modify and retest?
5 Portability: Can I still use it if I change my environment?
February 27, 2020 7
Boehm’s Quality Model (1978)
n The intermediate level characteristic represents Boehm’s 7 quality factors that
together represent the qualities expected from a software system:
5 Portability (General utility characteristics): Code possesses the characteristic portability
to the extent that it can be operated easily and well on computer configurations other
than its current one.
5 Reliability (As-is utility characteristics): Code possesses the characteristic reliability to
the extent that it can be expected to perform its intended functions satisfactorily.
5 Efficiency (As-is utility characteristics): Code possesses the characteristic efficiency to
the extent that it fulfills its purpose without waste of resources.
5 Usability (As-is utility characteristics, Human Engineering): Code possesses the
characteristic usability to the extent that it is reliable, efficient and human-engineered.
5 Testability (Maintainability characteristics): Code possesses the characteristic testability
to the extent that it facilitates the establishment of verification criteria and supports
evaluation of its performance.
5 Understandability (Maintainability characteristics): Code possesses the characteristic
understandability to the extent that its purpose is clear to the inspector.
5 Flexibility (Maintainability characteristics, Modifiability): Code possesses the
characteristic modifiability to the extent that it facilitates the incorporation of changes,
once the nature of the desired change has been determined.

February 27, 2020 8


Boehm’s Quality Model (1978)
n The lowest level structure of the characteristics hierarchy in Boehm’s
model is the primitive characteristics metrics hierarchy.

February 27, 2020 9


Boehm’s Quality Model (1978)
n Though Boehm’s and McCall’s models might appear very similar, the
difference is that McCall’s model primarily focuses on the precise
measurement of the high-level characteristics “As-is utility” whereas
Boehm’s quality model is based on a wider range of characteristics with
an extended and detailed focus on primarily maintainability.
n Boehm focuses a lot on the models effort on software maintenance cost
effectiveness which, he states, is the primary payoff of an increased
capability with software quality considerations.

February 27, 2020 10


Boehm’s Quality Model (1978)

February 27, 2020 11


FURPS
n Perhaps somewhat less renown, model that is structured in basically the same
manner as the McCall and Boehm’s models, is the FURPS model originally
presented by Robert Grady(and extended by Rational Software now IBM
Rational Software – into FURPS+). FURPS stands for:
5 Functionality – may include feature sets, capabilities and security
5 Usability - may include human factors, aesthetics, consistency in the user
interface, online and context sensitive help, wizards and agents, user
documentation, and training materials
5 Reliability - frequency and severity of failure, recoverability, predictability,
accuracy, and mean time between failure (MTBF)
5 Performance - imposes conditions on functional requirements such as speed,
efficiency, availability, accuracy, throughput, response time, recovery time,
and resource usage
5 Supportability - which may include testability, extensibility, adaptability,
maintainability, compatibility, configurability, serviceability, installability,
localizability (internationalization)
n The FURPS-categories are of two different types: Functional (F) and Non-
functional (URPS). These categories can be used as both product
requirements as well as in the assessment of product quality

February 27, 2020 12


ISO 9126
n This standard was based on the McCall and Boehm models.
Besides being structured in basically the same manner as these
models, ISO 9126 also includes functionality as a parameter, as
well as identifying both internal and external quality characteristics
of software products.

February 27, 2020 13


ISO 9126

February 27, 2020 14


ISO 9126

February 27, 2020 15


ISO 9126
n Functionality: A set of attributes that relate to the existence of a set of
functions and their specified properties. The functions are those that
satisfy stated or implied needs.
5 Suitability: Attribute of software that relates to the presence and
appropriateness of a set of functions for specified tasks.
5 Accuracy: Attributes of software that bare on the provision of right or agreed
results or effects.
5 Security: Attributes of software that relate to its ability to prevent unauthorized
access, whether accidental or deliberate, to programs and data.
5 Interoperability: Attributes of software that relate to its ability to interact with
specified systems.
5 Compliance: Attributes of software that make the software adhere to
application related standards or conventions or regulations in laws and similar
prescriptions.

February 27, 2020 16


ISO 9126
n Reliability: A set of attributes that relate to the capability of software to
maintain its level of performance under stated conditions for a stated
period of time.
5 Maturity: Attributes of software that relate to the frequency of failure by faults
in the software.
5 Fault tolerance: Attributes of software that relate to its ability to maintain a
specified level of performance in cases of software faults or of infringement of
its specified interface.
5 Recoverability: Attributes of software that relate to the capability to re-
establish its level of performance and recover the data directly affected in
case of a failure and on the time and effort needed for it.
5 Compliance- As discussed previously

February 27, 2020 17


ISO 9126
n Usability: A set of attributes that relate to the effort needed for
use, and on the individual assessment of such use, by a
stated or implied set of users.
5 Understandability: Attributes of software that relate to the users'
effort for recognizing the logical concept and its applicability.
5 Learnability: Attributes of software that relate to the users' effort
for learning its application (for example, operation control,
input, output).
5 Operability: Attributes of software that relate to the users' effort
for operation and operation control.
5 Attractiveness: visually appealing
5 Compliance: As above.

February 27, 2020 18


ISO 9126
n Efficiency: A set of attributes that relate to the relationship between the
level of performance of the software and the amount of resources used,
under stated conditions.
5 Time behavior: Attributes of software that relate to response and processing times
and on throughput rates in performing its function.
5 Resource behavior: Attributes of software that relate to the amount of resources
used and the duration of such use in performing its function.
5 Compliance: As above.
n Maintainability: A set of attributes that relate to the effort needed to make
specified modifications.
5 Analyzability: Attributes of software that relate to the effort needed for diagnosis of
deficiencies or causes of failures, or for identification of parts to be modified.
5 Changeability: Attributes of software that relate to the effort needed for
modification, fault removal or for environmental change.
5 Stability: Attributes of software that relate to the risk of unexpected effect of
modifications.
5 Testability: Attributes of software that relate to the effort needed for validating the
modified software.
5 Compliance: See above.

February 27, 2020 19


ISO 9126
n Portability: A set of attributes that relate to the ability of
software to be transferred from one environment to another.
5 Adaptability: Attributes of software that relate to on the
opportunity for its adaptation to different specified environments
without applying other actions or means than those provided for
this purpose for the software considered.
5 Installability: Attributes of software that relate to the effort
needed to install the software in a specified environment.
5 Conformance: Attributes of software that make the software
adhere to standards or conventions relating to portability.
5 Replaceability: Attributes of software that relate to the
opportunity and effort of using it in the place of specified other
software in the environment of that software.

February 27, 2020 20


Capability Maturity Models – CMM and CMMI
assessment methodology
n The CMMI framework is the current stage of work on process
assessment and improvement that started at the Software
Engineering Institute (SEI) in the 1980s.
5 The SEI’s mission is to promote software technology
transfer particularly to US defense contractors.
5 It has had a profound influence on process improvement
5 Capability Maturity Model introduced in the early 1990s.
5 Revised maturity framework (CMMI) introduced in 2001.

February 27, 2020 21


The Principles of the CMM
n CMM assessment is based on the following concepts and principles:
5 Application of more elaborate management methods based on
quantitative approaches increases the organization’s capability to
control the quality and improve the productivity of the software
development process.
5 The vehicle for enhancement of software development is composed of
the five-level capability maturity model. The model enables an
organization to evaluate its achievements and determine the efforts
needed to reach the next capability level by locating the process areas
requiring improvement.
5 Process areas are generic; they define the “what”, not the “how”. This
approach enables the model to be applied to a wide range of
implementation organizations because:
g It allows use of any life cycle model
g It allows use of any design methodology, software development tool and
programming language
g It does not specify any particular documentation standard

February 27, 2020 22


The SEI CMM
n Initial
5 Essentially uncontrolled
n Repeatable
5 Product management procedures defined and used
n Defined
5 Process management procedures and strategies
defined and used
n Managed
5 Quality management strategies defined and used
n Optimising
5 Process improvement strategies defined and used

February 27, 2020 23


The CMM model levels and key process areas
(KPAs)

February 27, 2020 24


The CMMI model
n An integrated capability model that includes software
and systems engineering capability assessment.

February 27, 2020 25


CMMI model components
n Process areas
5 22 process areas that are relevant to process
capability and improvement are identified. These are
organized into 4 groups.
n Goals
5 Goals are descriptions of desirable organizational
states. Each process area has associated goals.
n Practices
5 Practices are ways of achieving a goal; however, they
are advisory and other approaches to achieve the
goal may be used

February 27, 2020 26


Process areas in the CMMI

February 27, 2020 27


Process areas in the CMMI

February 27, 2020 28


Goals and associated practices in the CMMI

February 27, 2020 29


CMMI Assessment
n 1. Incomplete At least one of the specific goals associated with the process
area is not satisfied.
n 2. Performed The goals associated with the process area are satisfied, and for
all processes the scope of the work to be performed is explicitly set out and
communicated to the team members.
n 3. Managed Resource management and process monitoring procedures must
be in place across the institution. For example, documented project plans
n 4. Defined This level focuses on organizational standardization and
deployment of processes.
n 5. Quantitatively managed At this level, there is an organizational
responsibility to use statistical and other quantitative methods to control
subprocesses
n 6. Optimizing At this highest level, the organization must use the process and
product measurements to drive process improvement. Trends must be
analyzed and the processes adapted to changing business needs.

February 27, 2020 30


Six Sigma
n Six Sigma (6σ) is a set of techniques and tools for process improvement.
It was introduced by Engr. Bill Smith while working at Motorola in 1986.
n Six Sigma strategies seek to improve the quality of the output of a process
by identifying and removing the causes of defects and
minimizing variability in manufacturing and business processes.
n It uses a set of quality management methods, mainly empirical, statistical
methods, and creates a special infrastructure of people within the
organization who are experts in these methods.
n Each Six Sigma project carried out within an organization follows a
defined sequence of steps and has specific value targets, for example:
reduce process cycle time, reduce pollution, reduce costs, increase
customer satisfaction, and increase profits.
n It strongly advocates listening to the customer and converting customer
needs into measurable requirements

“Six Sigma,” https://en.wikipedia.org/wiki/Six_Sigma, accessed on September 21, 2018.


February 27, 2020 31
Six Sigma
n The term Six Sigma originated from terminology associated
with statistical modeling of manufacturing processes.
n The maturity of a manufacturing process can be described by
a sigma rating indicating its yield or the percentage of defect-
free products it creates.
n A six sigma process is one in which 99.99966% of all
opportunities to produce some feature of a part are
statistically expected to be free of defects
n Motorola set a goal of "six sigma" for all of its manufacturing.

February 27, 2020 32


Six Sigma—Doctrine
n Six Sigma doctrine asserts:
5 Continuous efforts to achieve stable and predictable process results
are of vital importance to business success.
5 Manufacturing and business processes have characteristics that can
be defined, measured, analyzed, improved, and controlled.
5 Achieving sustained quality improvement requires commitment from
the entire organization, particularly from top-level management.
5 Features that set Six Sigma apart from previous quality-improvement
initiatives include:
g A clear focus on achieving measurable and quantifiable financial returns
from any Six Sigma project.
g An increased emphasis on strong and passionate management
leadership and support.
g A clear commitment to making decisions on the basis of verifiable data
and statistical methods, rather than assumptions and guesswork.

February 27, 2020 33

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy