Unit-5-Quality Magagement

Download as pdf or txt
Download as pdf or txt
You are on page 1of 66

Quality management

Quality Management

• Managing the quality of the


software process and products
Definitions of Quality
• Quality is meeting or exceeding customer’s
expectations
• Quality is the totality of features and characteristics of
a product or service that bears on its ability to satisfy
stated or implied needs.
• Quality is sum of the attributes that can describe a
project or product.
• Quality refers to meeting specifications and
performance standards.
Why Quality Management?
• Quality means conformance to specifications and
fitness for use – i.e. just what you need and not more
• Projects or products with unnecessary features can be
too expensive to meet the business need
• Prevention is much cheaper than inspection, build
quality in early to minimize costs/maximize quality
How Do We Manage Quality?
• Three processes
– Plan Quality
– Perform Quality Assurance
– Perform Quality Control

Plan Perform Perform


Quality Quality Quality
Assurance Control
Quality management activities
• Quality assurance
– Establish organisational procedures and standards for
quality
• Quality planning
– Select applicable procedures and standards for a
particular project and modify these as required
• Quality control
– Ensure that procedures and standards are followed by
the software development team
• Quality management should be separate from
project management to ensure independence
Quality Assurance & Quality Control
– Quality assurance aims to assure that quality work
and quality deliverables will be built in before
work is done
– Quality control aims to determine that quality
work and quality deliverables did occur after work
was done
– Quality control is conducted by inspection and
testing Of materials, workmanship and product
Quality Assurance Vs Control
Quality Assurance is process oriented
and focuses on defect prevention;

Quality Control is product oriented and


focuses on defect identification
Definition- Assurance Vs Control

QA is a set of activities for ensuring


quality in the processes by which
products are developed.

QC is a set of activities for ensuring


quality in products. The activities focus
on identifying defects in the actual
products produced.
Focus- Assurance Vs Control
QA aims to prevent defects with a
focus on the process used to make the
product. It is a proactive quality
process.
QC aims to identify (and correct)
defects in the finished product. Quality
control, therefore, is a reactive
process.
Software Quality Assurance
• Software quality assurance (SQA) consists of
a means of monitoring the software
engineering processes and methods used to
ensure quality. The methods by which this is
accomplished are many and varied, and may
include ensuring conformance to one or more
standards, such as ISO 9000 or a model such
as CMMI.
SQA
• SQA encompasses the entire software
development process, which includes processes.
– Requirements definition,
– Software design,
– Coding,
– Source code control,
– Code reviews,
– Change management,
– Configuration management,
– Testing,
– Release management, and
– Product integration.
Dimensions of quality

Dimensions of quality are attributes or factors of quality,


which are commonly uttered as evaluation factors.

• Reliability: performance and consistency of performance


• Durability: longer life without much repairs (bugs in case of
sw)
• Performance: doing job as specified
• Innovative : extra features ( can take care of all business
rules irrespective of the frequency)
• Aesthetics : looks, feel, colouring, packing etc ( user
interface)
• Safety: safe to use
Benefits of Quality
• Image of the organization will be high
• Sales and profit will be higher
• The re-works and delays are avoided or
reduced.
• Productivity will increase due to no rework
• New jobs will be given to the company having
high reputation for the quality.
Quality assurance and standards
• Standards are the key to effective quality
management
• They may be international, national,
organizational or project standards
• Product standards define characteristics that
all components should exhibit e.g. a common
programming style
• Process standards define how the software
process should be enacted
Importance of standards
• Encapsulation of best practice- avoids
repetition of past mistakes
• Framework for quality assurance process - it
involves checking standard compliance
• Provide continuity - new staff can understand
the organisation by understand the standards
applied
Why process quality improvement is
important?
The key to success in an organization is to understand how their processes
work to deliver the required outputs

Any process should add value and unnecessary waste activities should be
eliminated from the process steps

Process is transformation of inputs into output, which satisfies the required


Quality Characteristics defined by the customers.

If process improves, we will get the best output or responses and as a


consequence best desired quality product for the end customer. Every
company focuses on process quality improvement so as to improve their
Quality.
Why process quality improvement is
important?

To produce high quality software, the final software


should have as few defects as possible.

The task of quality management in a software


project is to plan suitable quality control activities,
and properly execute and control these activities
such that most of the defects are detected “in-
process”, that is, before the software is delivered.
Quality & Defects

Quality, along with cost and schedule, is one of the


major factors determining the success of a project.

There are various possible quality characteristics of


software.
In practice, frequently, quality management revolves
around defects, and delivered defect density, that is,
number of defects per unit size in the delivered
software, has become the current de-facto industry
standard
QM-Approaches
There are two approaches to quality management –
Procedural approach
Quantitative approach.

In the procedural approach for quality management,


procedures and guidelines for the review and testing
activities are established.

In a project, these activities are planned (i.e. which


activity will be performed and when), and during
execution, they are executed following the defined
procedures.
Procedural Approach
The procedural approach to defect removal does not
allow claims to be made about what percentage of
defects have been removed, or the quality of the
software after performing the procedure.

It also does not provide quantitative means for a


project manager to assess and manage the quality of
the software being produced – the only factor visible to
the manager is whether the quality control tasks are
executed or not.
Quantitative approach

A quantitative approach goes beyond asking “has the


method been executed” and looks at defect data to
evaluate the effectiveness of the quality control
activities and whether more testing or reviews need to
be done.
Problems with standards
• Not seen as relevant and up-to-date by
software engineers
• Involve too much bureaucratic form filling
• Unsupported by software tools so tedious
manual work is involved to maintain standards
Quality planning
• A quality plan sets out the desired product
qualities and how these are assessed ande
define the most significant quality attributes
• It should define the quality assessment
process
• It should set out which organisational
standards should be applied and, if necessary,
define new standards
Quality plan structure
• Product introduction
• Product plans
• Process descriptions
• Quality goals
• Risks and risk management
• Quality plans should be short, succinct
documents
– If they are too long, no-one will read them
Quality plans
• quality standards and procedures should
be documented in an organization’s
quality manual
• for each separate project, the quality
needs should be assessed
• select the level of quality assurance
needed for the project and document in
a quality plan

26
typical contents of a quality plan
• scope of plan
• references to other documents
• quality management, including organization,
tasks, and responsibilities
• documentation to be produced
• standards, practices and conventions
• reviews and audits

27
more contents of a quality plan
• testing
• problem reporting and corrective action
• tools, techniques, and methodologies
• code, media and supplier control
• records collection, maintenance and retention
• training
• risk management

28
0. Select project

1. Identify 2. Identify
project scope project
and objectives infrastructure

3. Analyse
project
characteristics

4. Identify the
products and
Review activities

5. Estimate
effort for each
Lower level activity
For each
detail
activity
6. Identify
activity risks

10. Lower level


planning
7. Allocate
resources

8. Review/
9. Execute plan publicize plan
Software Quality in Project Planning
• Step 1 Project Scope and Objectives
– Qualities of the application to be delivered
• Step 2 Identify Project Infrastructure
– Installation standard and procedures
• Step 3 Analyze Project Characteristics
– Analyzed for Special quality requirements
• Step 4 Identify the products and activities of the
project
• Step 8 Review and Publicize the plan
– The overall quality aspects of the project plan are
reviewed
Quality tools
QC Tools
• QC tools are the means for
 Collecting data
 Analyzing data
 Identifying root cause
 Measuring the results

Note: These tools are related to numerical data processing. The


user has to develop the solution and Implement.
7 Basic Tools
• Cause & Effect Diagram
• Flowchart
• Histogram
• Pareto Chart
• Check Sheet
• Scatter Diagram
• Control Chart
Summary of QC Tools
1 Pareto: To identify current status and issues.

2. Stratification/Flowchart: Basic processing performed when collecting data.

3. Scatter Diagram: To identify relationship between two things.

4. C&D Diagram: To identify cause and effect relationship

5. Histogram: To see the distribution of data

6. Check Sheets: To record data collections

7. Control Chart Graph: To find out abnormalities and finding the current status.
35
Software Reliability
 Capability Maturity Model (CMM)
It is a strategy for improving the software process, irrespective of the
actual life cycle model used.

Fig.23: Maturity levels of CMM 36


Software Reliability

Maturity Levels:

 Initial (Maturity Level 1)

 Repeatable (Maturity Level 2)

 Defined (Maturity Level 3)

 Managed (Maturity Level 4)

 Optimizing (Maturity Level 5)

37
Software Reliability

Maturity Level Characterization

Initial Adhoc Process

Repeatable Basic Project Management

Defined Process Definition

Managed Process Measurement

Optimizing Process Control

Fig.24: The five levels of CMM


38
39
CMM – Level 1 – Initial Level

The organization

•Does not have an environment for


developing and maintaining software.

•At the time of crises, projects usually stop


using all planned procedures and revert to
coding and testing.
CMM – Level 2 – Repeatable level

Effective management process having


established which can be
• Practiced
• Documented
• Enforced
• Trained
• Measured
• Improvised
CMM – Level 3 – Defined level

•Standard defined software engineering and


management process for developing and
maintaining software.

•These processes are put together to make a


coherent whole.
CMM – Level 4 – Managed level

•The organizational measurement plan


involves determining the productivity and
quality for all important software process
activities across all projects.
CMM – Level 5 – Optimizing level

Emphasis laid on
–Process improvement
–Tools to identify weaknesses existing in their
processes
–Make timely corrections
Maturity Level 2 Process Areas
Maturity Level 2 - Repeatable

CMM
RM - Requirements
Management

SPP-Software Project Planning


SPTO- Software Project
Tracking and Oversight
SSM-Software Subcontract
Management
SQA-Software Quality
Assurance
SCM- Software Configuration
Management
47
CMM-Key Process Areas
 Key Process Areas
The key process areas at level 2 focus on the software project’s concerns
related to establishing basic project management controls, as summarized
below:

48
Maturity Level 3 Process Areas
Maturity Level 3 - Defined
CMM
ISM - Integrated Software Mgmt

IC-Inter Group Coordination


PD-Organization Process Definition
PF -Organization Process Focus
TP-Training Program
SPE-Software Product Engineering
PR-Peer Reviews

50
CMM-Key Process Areas
The key process areas at level 3 address both project and organizational
issues, as summarized below:

51
CMM-Key Process Areas

52
CMMI-Key Process Areas
Organizational Process Definition (OPD): The purpose of
Organizational Process Definition (OPD) is to establish and maintain a
usable set of organizational process assets, work environment
standards, and rules and guidelines for teams.

53
Maturity Level 4 & 5 Process Areas
Maturity Level 4 -
Quantitatively Managed
QM-Quantitative Process
Management
QM-Software Quality
Management

Maturity Level 5 - Optimizing

DP-Defect prevetion
TCM -Technology Change
Management;
PCM-Process Change
Management

55
CMM-Key Process Areas
The key process areas at level 4 focus on establishing a quantitative
understanding of both the software process and the software work
products being built, as summarized below:

56
CMM-Key Process Areas
The key process areas at level 5 cover the issues that both the organization
and the projects must address to implement continuous and measurable
software process improvement, as summarized below:

57
58
59
ISO 9000
• International set ofstandards for quality
management
• Applicable to a range of organisations from
manufacturing to service industries
• ISO 9001 applicable to organisations which
design, develop and maintain products
• ISO 9001 is a generic model of the quality
process Must be instantiated for each
organisation
Steps in implementation of ISO - 9000
1. Group formation: formation of team, the group
leader will be called Management Representative
(MR). The team is called steering committee.

2. Application: Application is made to one of the


following bodies:
• BVQI – Burea virita quality international at USA
• DNV – Det Nrske Veritas at Germany
• BSI – Britsh Standard Institue Quality Assurance at UK. etc.
3. Planning:
• appoint certification agency and seek their guidance
• Appoint a local consultant for frequent guidance
• Organize training of 2 to 4 Internal auditors
• Identify personal to be closely involved in ISO work.

4. Documentation
• Announce corporate quality policy
• Quality manual to be prepared for each department
• Put manual into operation

5. Self Evaluation
• Arrange auditing by the trained members
• Implementation auditing remarks
• Organise second auditing after corrections
• Consultants review of all manuals and compliance level of steering committee

6. Arrange assessment by certifying body


– Certification by the authorities.
Contrasting ISO 9001 & CMM
 Contrasting ISO 9001 and the CMM

There is a strong correlation between ISO 9001 and the CMM, although
some issues in ISO 9001 are not covered in the CMM, and some issues in
the CMM are not addressed in ISO 9001.

The biggest difference, however, between these two documents is the


emphasis of the CMM on continuous process improvement.

The biggest similarity is that for both the CMM and ISO 9001, the bottom
line is “Say what you do; do what you say”.

68
Mapping ISO 9001 & CMM
 Management Responsibility
• ISO: Quality Policy be define, documented, understood, implemented and Maintained.
• CMM: Management responsibility for quality policy and verification activities primarily addresses
in Software Quality Assurance.
 Quality System
 ISO: Documents quality system, including procedure and instructions be established
 CMM: Quality primarily addressed in Software Quality Assurance distributed thru KPA’s
 Contract Review
• ISO:contracts be reviewed to determine whether the requirements are adequately defined, agree
with bid and can be implemented
• CMM: Review customer requirement is spanned in Requirement mgnt.
 Design Control
 ISO: Procedure to control& verify Design be established(planning, Inputs, outputs, design)
 CMM:Life cycle activities , design , code, test are described in Software Project Planning
Mapping ISO 9001 & CMM
• Document Control
– ISO:Distribution & modification of documents be controlled
– CMM:Document control are described in configuration mgmt

• Purchasing
– ISO:purchased products conform their specified requirements(assessment of subcontractors,
verification of purchased products)
– CMM:Addressed in Software Sub contract Management
• Purchaser -supplied product
– ISO: purchaser supplied material verified and maintained
– CMM: In integrated software mgmt in using purchased software
• Product identification & Traceability
– ISO: During all stages of production delivery & installation
– CMM:covering Software Configuration Mgmt
• Process Control
– ISO:Production process be defined & planned
– CMM: Thru KPA’ in various actvites
Mapping ISO 9001 & CMM
• Inspection & Test Status
– ISO:Inspection and test be maintained for items as they progress through various processing steps
– CMM: Testing practices in software product Engineering
• Corrective Action
– ISO: causes of non conforming product be identified,products eliminated, procedures are changed from
corrective action
– CMM: Analysis, updates, patches
• Training
– ISO:Training needs be identified and training provided
– CMM:Training program, Orientation practices
• Servicing
– ISO:servicing activities be performed as specified
– CMM:Not a separate process
• Statistical Techniques
– ISO:Appropriate and adequate statistical techniques are identified
– CMM:Distributed throughtout the KPA’s

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