SE 5 Module

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 38

Module : 5 Software Quality

• Introduction
• The place of software quality in project planning
• Importance of software quality
• Defining software quality,
• quality models
• ISO 9126
• product and process metrics
• product versus process quality management
• Quality Management systems
• process capability models
• techniques to enhance software quality
• testing
• Software reliability
• quality plans
SJCIT
Research Methodology & IPR
SJCIT
Research Methodology & IPR
• Quality Assurance: (Preventive Action) Process
Quality Management, Defect Prevention
• Quality Control: (Corrective Action) Product
Quality Management, Defect Detection
• Qualitative.
• Quantitative.

SJCIT
Research Methodology & IPR
SJCIT
Research Methodology & IPR
Introduction
• quality is generally agreed to be 'a good thing',
in practice what is meant by the 'quality‘ of a
system can be vague.
• We need to define precisely what qualities
we require of a system.
• However, we need to go further -we need to
judge objectively whether a system meets our
quality requirements and this needs
measurement.

SJCIT
Research Methodology & IPR
The place of software quality in project
planning

SJCIT
Research Methodology & IPR
The place of software quality in project
planning

• Step 1: Identify project scope and objectives


• Step 2: Identify project infrastructure
• Step 3: Analyse project characteristics
• Step 4: Identify the products and activities of
the project
• Step 8: Review and publicize plan At this stage the overall
quality aspects of the project plan are reviewed.

SJCIT
Research Methodology & IPR
The importance of software quality
• would expect quality to be a concern of all
producers of goods and services. However, the
special characteristics of software create
special demands.
• Increasing criticality of software
• The intangibility of software
• Accumulating errors during software
development

SJCIT
Research Methodology & IPR
Defining software quality
• system has functional, quality and resource
requirements.
• Some qualities of a software product reflect the
external view of software held by users, as in the
case of usability.
• These external qualities have to be mapped Io
internal factors of which the developers would be
aware.
• lf we are to judge whether a system meets our
requirements we need to be able to measure its
qualities.
SJCIT
Research Methodology & IPR
Defining software quality
• A good measure must relate the number of
units to the maximum possible.
• The maximum number of faults in a program,
for example, is related to the size of the
program, so a measure of faults per thousand
lines of code is more helpful than total faults
in a program.
• Trying to find measures for a particular quality
helps to clarify and communicate what that
quality really is.
SJCIT
Research Methodology & IPR
Defining software quality
• The measures may be Direct , where we can
measure the quality directly or indirect.
• For example, the number of enquiries by users
received by a help desk about how one
operates a particular software application
might be an indirect measurement of its
usability.

SJCIT
Research Methodology & IPR
Defining software quality
• When there is concern about the need for a specific
quality characteristic in a software product then a quality
specification with the following minimum details should
be drafted.
1 definition/description : definition of the quality
characteristic
2 scale: the unit of measurement;
3 Test; the practical test of the extent to which the
attribute quality exists.
4 minimally acceptable;
5 target range:
6 now: the value that applies currently.
SJCIT
Research Methodology & IPR
Quality models, ISO 9126
• The ISO 9l26 standard was first introduced in 1991
to tackle the question of the definition of software
quality.
• The original '13-page document was designed as a
foundation upon which further, more detailed,
standards could be built.
• People with differing motivations might be
interested in software quality, namely:
• Acquirers
• Developers
• independent evaluators
SJCIT
Research Methodology & IPR
Quality models, ISO 9126
• ISO 9126 also introduces another type of
quality - quality in use - for which the
following elements have been identified:
1 effectiveness; ability to achieve user goals with
accuracy and completeness;
2 productivity: avoding the excessive use of
resources
3 Safety.
4 satisfaction: smiling users.
SJCIT
Research Methodology & IPR
ISO 9126 identifies six major external software quality
characteristics:
• Functionality.
• Reliability.
• Usability.
• Efficiency.
• Maintainability.
• Portability.

SJCIT
Research Methodology & IPR
ISO 9126 identifies six major external software quality
characteristics:

SJCIT
Research Methodology & IPR
ISO 9126 identifies six major external software quality
characteristics:

SJCIT
Research Methodology & IPR
ISO 9126 identifies six major external software quality
characteristics:

SJCIT
Research Methodology & IPR
ISO 9126 identifies six major external software quality
characteristics:

SJCIT
Research Methodology & IPR
ISO 9126 identifies six major external software quality
characteristics:

SJCIT
Research Methodology & IPR
Product and Process Metrics
Product metrics help measure the
characteristics of a product being developed.
• Examples:
1 The LOC and function point metrics are used
to measure size.
2 The PM (person-month) metric is used to
measure the effort required to develop a
product, and the time required to develop the
product is measured in months.

SJCIT
Research Methodology & IPR
Product and Process Metrics
Process metrics help measure how a
development process is performing.
Examples:
1 average number of defects found per hour of
inspection.
2 average defect correction time, productivity,
3 average number of failures detected during
testing per LOC.
4 number of latent defects per line of code in
the developed product.
SJCIT
Research Methodology & IPR
product versus process quality management
• Corrective and preventive action.
• we saw that it is often easier to measure these
product qualities in a completed computer
application rather than during its development.
• An alternative approach is to scrutinize the
quality of the processes used to develop
software product.
• The system development process comprises a
number of activities linked so that the output
from one activity is the input to the next
SJCIT
Research Methodology & IPR
product versus process quality management

SJCIT
Research Methodology & IPR
product versus process quality management
• Errors should therefore be eradicated by
careful examination of the deliverables of
each step before they are passed on.
• Entry requirements
• Implementation requirements
• Exit requirements

SJCIT
Research Methodology & IPR
Quality Management Systems
• Quality control would involve the rigorous
testing of all the software produced by the
contractor, insisting on rework where defects
are found.
• quality assurance checks that the contractors
themselves were carrying out effective quality
control. A key element of this would be
ensuring that the contractor had the right
quality management system in place.

SJCIT
Research Methodology & IPR
process capability models
SEI capability maturity model (CMM)
CMMI (Capability Maturity Model Integration)
ISO 15504 Process assessment
Six Sigma

SJCIT
Research Methodology & IPR
SEI capability maturity model
(CMM)

SJCIT
Research Methodology & IPR
process capability models
• CMMI is the successor of the Capability
Maturity Model (CMM). In 2002, CMMI
Version 1.1 was released.

SJCIT
Research Methodology & IPR
ISO 15504 Process assessment
• ISO/IEC 15504 is a standard for process
assessment that shares many concepts with
CMMI. The two standards should be
compatible.

SJCIT
Research Methodology & IPR
Six Sigma
• The six sigma DMAIC process (define, measure, analyse, improve,
control)
• Motorola, USA, initially developed the six sigma method in the early
1980s.
• The purpose of six sigma is to improve processes to do things better,
faster, and at a lower cost.
• It can in fact, be used to improve every facet of business, i.e.,
production, human resources, order entry, and technical support
areas.
• Six sigma becomes applicable to any activity that is concerned with
cost, timeliness, and quality of results.
• To achieve six sigma,
• a process must not produce more than 3.4 defects per million defect
opportunities.
SJCIT
Research Methodology & IPR
Techniques to Help Enhance Soft ware Quality

Three main themes emerge in this discussion of


software quality:
1. Increasing visibility : ‘egoless programming’.
encouraged the simple practice of programmers looking at
each other’s code.
2 Procedural structure :programmers were left to get on
with writing programs as best they could.
3 Checking intermediate stages :checking the
correctness of work at its earlier, conceptual, stages.

SJCIT
Research Methodology & IPR
Techniques to Help Enhance Soft ware Quality
Three main themes emerge in this discussion of software quality:
1. Increasing visibility : ‘egoless programming’. encouraged the simple
practice of programmers looking at each other’s code.
Inspections
2 Procedural structure : programmers were left to get on with writing programs
as best they could.
Structured programming and clean-room soft ware development

3 Checking intermediate stages :checking the correctness of work at


its earlier, conceptual, stages.
• Soft ware quality circles (SWQC):A quality circle is a group of four to ten
volunteers working in the same area who meet for, say, an hour a week
to identify, analyse and solve their work-related problems.
• Lessons learnt reports
SJCIT
Research Methodology & IPR
Testing

SJCIT
Research Methodology & IPR
Testing
• Verification versus validation
• Test case design
• Levels of testing
1. Unit testing
2. Integration testing
3. System testing
• Testing activities
• Test Planning
• Test Suite Design
• Test Case Execution and Result Checking
• Test Reporting
• Debugging
• Error Correction
• Defect Retesting
• Regression Testing
SJCIT
Research Methodology & IPR
Testing
• Who performs testing?
• Test automation
• Estimation of latent errors

SJCIT
Research Methodology & IPR
Soft ware Reliability
• the reliability of a software product can be defined as the
probability of its working correctly over a given period of
time.
• The reliability of a software product essentially denotes its
trustworthiness or dependability.
• software product having a large number of defects is
unreliable.
• reliability is observer dependent, in the sense that it depends
on the relative frequency with which different users invoke
the functionalities of a system.
• Reliability of a software product usually keeps on improving
with time during the testing and operational
phases as defects are identified and repaired.
SJCIT
Research Methodology & IPR
Quality Plans
A quality plan might have entries for:
● purpose – scope of plan;
● list of references to other documents;
● management arrangements, including organization, tasks and
responsibilities;
● documentation to be produced;
● standards, practices and conventions;
● reviews and audits;
● testing;
● problem reporting and corrective action;
● tools, techniques and methodologies;
● code, media and supplier control;
● records collection, maintenance and retention;
● training;
● risk management – the methods of risk management that are to be used.
SJCIT
Research Methodology & IPR

You might also like