You are on page 1of 22

QUALITY ASSURANCE

TO JOIN:

1. Visit edmodo.com
1. Click Join a Group
2. Enter Group Coupon: btxrmc
2. Join URL:
https://www.edmodo.com/index?pcode=
2aezds
WHAT IS SOFTWARE Lesson 1
QUALITY?
LEARNING OUTCOMES

Define software, software quality and


software quality assurance.
Distinguish between software errors,
software faults and software failures.
Identify the various causes of software
errors.
LEARNING OUTCOMES

Explain the objectives of software quality


assurance activities
Distinguish and explain the difference
between software quality assurance and
quality control.
Explain the relationship between software
quality assurance and software
engineering.
WHAT IS SOFTWARE?

Software IEEE definition


Software is:
Computer programs, procedures, and
possibly associated documentation and
data pertaining to the operation of a
computer system.
FOUR COMPONENTS OF SOFTWARE:

Computer programs (the code)


Procedures
Documentation
Data necessary for operating the software
system.
CAUSES OF SOFTWARE ERRORS

1. Faulty definition of requirements


Erroneous definition of requirements
Absence of vital requirements.
Incomplete definition of requirements.
CAUSES OF SOFTWARE ERRORS

2. Clientdeveloper communication failures


Misunderstanding of the clients instructions as
stated in the requirement document.
Misunderstanding of the clients requirements
changes presented to the developer in written form
during the development period.
Misunderstanding of the clients requirements
changes presented orally to the developer during
the development period.
Misunderstanding of the clients responses to the
design problems presented by the developer.
CAUSES OF SOFTWARE ERRORS

3. Deliberate deviations from software


requirements
The developer reuses software modules taken from an
earlier project without sufficient analysis of the
changes and adaptations needed to correctly fulfill all
the new requirements.
Due to time or budget pressures, the developer decides
to omit part of the required functions in an attempt to
cope with these pressures.
Developer-initiated, unapproved improvements to the
software, introduced without the clients approval,
frequently disregard requirements
that seem minor to the developer.
CAUSES OF SOFTWARE ERRORS

4. Logical design errors


Definitions that represent software
requirements by means of erroneous
algorithms.
Process definitions that contain sequencing
errors.
Erroneous definition of boundary conditions.
CAUSES OF SOFTWARE ERRORS

5. Coding errors
misunderstanding the design
documentation,
linguistic errors in the programming
languages,
errors in the application of CASE and other
development tools,
errors in data selection, and so forth
CAUSES OF SOFTWARE ERRORS

6. Non-compliance with documentation and


coding instructions
CAUSES OF SOFTWARE ERRORS

7. Shortcomings of the testing process


Incomplete test plans leave untreated portions of the
software or the
application functions and states of the system.
Failures to document and report detected errors and
faults.
Failure to promptly correct detected software faults
as a result of inappropriate indications of the
reasons for the fault.
Incomplete correction of detected errors due to
negligence or time pressures.
CAUSES OF SOFTWARE ERRORS

8. Procedure errors
9. Documentation errors
THE NINE CAUSES OF SOFTWARE
ERRORS
1. Faulty requirements definition
2. Clientdeveloper communication failures
3. Deliberate deviations from software requirements
4. Logical design errors
5. Coding errors
6. Non-compliance with documentation and coding
instructions
7. Shortcomings of the testing process
8. Procedure errors
9. Documentation errors
SOFTWARE QUALIT Y DEFINITION

Software quality is:


1. The degree to which a system, component,
or process meets specified requirements.
2. The degree to which a system, component,
or process meets customer or user needs or
expectations.
SOFTWARE QUALIT Y DEFINITION

Quality means conformance to requirements


(Crosby, 1979).
1. Quality consists of those product features
which meet the needs of
customers and thereby provide product
satisfaction.
2. Quality consists of freedom from
deficiencies (Juran, 1988).
SOFTWARE QUALIT Y DEFINITION

Software quality Pressmans definition


Software quality is defined as:
Conformance to
explicitly stated functional and performance
requirements,
explicitly documented development standards,
and implicit characteristics that are expected
of all professionally developed software.
SOFTWARE QUALIT Y DEFINITION

Pressmans definition suggests three requirements for


quality assurance that are to be met by the developer:
1. Specific functional requirements, which refer
mainly to the outputs of the
software system.
2. The software quality standards mentioned in the
contract.
3. Good Software Engineering Practices (GSEP),
reflecting state-of-the-art
professional practices, to be met by the developer
even though not explicitly mentioned in the
contract.

You might also like