You are on page 1of 20

SOFTWARE QUALITY

ENGINEERING
LECTURE # 3

SOFTWARE QUALITY
MANAGEMENT
Today’s Plan
 Consequences of bad quality
 Quality Management
 Software Quality Management
 Quality Management Processes
 Quality goals and objectives
Consequences of Bad Quality
Consequences of Bad Quality
Quality Management
 The term Quality management has a specific
meaning within many business sectors. This
specific definition can be considered to have the
following main components:
 Quality Assurance (QA)
 Quality Planning (QP)
 Quality Control (QC)
 Quality Steering (QS)
Quality Management (cont…)

Quality Assurance Quality Planning

The establishment of a The selection of appropriate


framework of organizational procedures and standards from this
procedures & standards that lead framework, adapted for a specific
to high-quality software. software project.

Quality Control Quality Steering

The definition and enactment of Planning constructive QA


processes that ensure the software measures & re-planning based on
development team have followed quality control results.
project quality procedures and
standards.
Origin of Quality Management
 The concept of ‘quality’ came out with industrial
revolution.
 Earlier the product would be crafted by a single
person or a team of people overseeing all aspects of
‘quality’ criteria.
 Mass production brought large teams working on a
product in different stages of production.
Software Development & Quality Management

Quality management must occur continually during


software development.
Software Quality and Productivity
 The most effective way of improving software
productivity and shortening project schedules is to
reduce defect levels.
 Defect reduction can occur through:

Defect Prevention Techniques Defect Removal Techniques

 Structured design and JAD  Design inspections


 Structured code  Code inspections, static
 Use of inspections, static analysis
analysis  Formal Testing using
 Reuse of certified mathematical test case
components design
Software Quality Management
 SQM is concerned with ensuring that the required
level of quality is achieved in a software product.
 It involves defining appropriate quality standards
and procedures and ensuring that these are
followed.
 Should aim to develop a ‘quality culture’ where
quality is seen as everyone’s responsibility.
 Should be separate from the project management
to ensure independence.
Software Quality Management
(Cont..)

 Requires integration with the development


lifecycle from day one to ensure the successful
development of a quality product.
 Is particularly important for large, complex
systems. The quality documentation is a record of
progress and supports continuity of development
as the development team changes.
 For smaller systems, quality management needs
less documentation and should focus on
establishing a quality culture.
SQM - Objective

The objective of Software Quality Management is to


manage the quality of software development process
and products.

“Quality product is a product that meets its specified


requirements and user satisfaction”
SQM – View from the top
SQM

Assurance Plan Control


1.Standards, regulations, 1.A project level quality 1.Ensures in-process that both
and procedures to produce, plan written by each project SQA and SQP are being
verify, evaluate and for declaring project followed
2.Activities include:
confirm work products commitment • Mentoring how to
during the software 2.should cont should contain produce artifacts
development lifecycle quality goals to be achieved, • Mentoring how to
2.Incorporated knowledge expected risks and risk conduct processes
base of best practices management • Perform in-process
quality reviews to
3.Off-the-shelf software 3.Is derived from: verify, evaluate and
tools selected to apply the • Customized or adopted
conform artifacts
SQA components
above • New SQA components
• Verify and evaluate to
that have been written or improve the use of
imported particularly for methods , procedures
this project. and adopted software
tools
SQM Processes
 Some of the specific SQM processes are defined
in standard (IEEE12207.0-96):
 Quality assurance process
 Verification process
 Validation process
 Review process
 Audit process
SQM Processes (cont…)
 These processes encourage quality and also find
possible problems. But they differ somewhat in
their emphasis.
 SQM processes help ensure better software quality
in a given project.
 They also provide, as a by-product, general
information to management, including an
indication of the quality of the entire software
engineering process.
Quality Goals & Objectives
 The quality goals are specific, quantified and
scheduled. They may be linked to product
performance, service performance, customer
satisfaction or quality improvement etc.
 Quality goals are of following nature.
 Strategic Quality Goals
 Tactical Quality Goals
Quality Goals & Objectives
Strategic Quality Goals:
 Goals of strategic nature, become a part of the strategic
business plan.
 For example, “We will achieve 99% ratings from all our
designated customers by April 2003”.
 Strategic quality goals address issues that are applicable
organization wide. The following are examples:
 Company vision, mission statement, quality policy
 Shared Total Quality philosophy
 Effects of quality systems like ISO, CMMI etc
Quality Goals & Objectives (Cont..)
Tactical Quality Goals:
 Tactical quality goals are the detailed sub goals that
are derived from strategic quality goals. For e.g.
 Status of customer complaints, returns, warranty claims
 Results of customer surveys, mailings
 In-house rework, defect rate etc
 Tactical goals should clearly state how the strategic
goals of the organization will be implemented.
 The end result is a statement for a department to use as
an operating guide.
Class ahead

Verification & Validation

You might also like