unit 5-2

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

SOFTWARE QUALITY ASSURANCE

 Refers to umbrella activities concerned with ensuing quality


 Covers quality activities associated with all line and staff
functions.
 Scope not restricted only to fault detection and correction.
Oriented towards both prevention and excellence.
 Involves taking care in design, production and servicing
 Assurance comes from:
 Defining appropriate standards, procedures, guidelines,
tools, and techniques.
 Providing people with right skills, adequate supervision and
guidance.
Software Quality Assurance is defined as:
 Conformance to explicitly stated functional and
performance requirements,
 Conformance to explicitly documented development
standards, and
 Conformance to implicit characteristics that are expected
of all professionally developed software.
1. Software requirements are the foundation from which
quality is measured. Lack of conformance to requirements
is lack of quality.
2. Specified standards define a set of development criteria
that guide the manner in which software is engineered. If
the criteria are not followed, lack of quality will almost
surely result.
3. There is a set of implicit requirements that often goes
unmentioned. If software conforms to its explicit
requirements but fails to meet implicit requirements,
software quality is suspect.
Software Quality Assurance (SQA) Activities
1.Prepare a SQA Plan for a project
The plan is developed during project planning and is reviewed by all interested
parties. The plan identifies:
• Evaluations to be performed
• Audits and reviews to be performed
• Standards that are applicable to the project
• Procedures for error reporting
• Documents to be produced by the SQA group
• Amount of feedback provided to software project team
2. Participates in the development of the project’s software process
description.
3. Reviews software engineering activities to verify compliance with
the defined software process.
4. Audits designated software work products to verify compliance with
those defined as part of the software process.
5. Ensures that deviations in software work and work products are
documented and handled according to a documented procedure.
6. Records any noncompliance and reports to senior management.
7. Coordinates the control and management of change.
8. Helps to collect and analyze software metrics.
QUALITY METRICS
1.Code Quality – Code quality metrics measure the quality of code
used for software project development.
2. Reliability – Reliability metrics express the reliability of software in
different conditions.
3.Performance – Performance metrics are used to measure the
performance of the software.
4.Usability – Usability metrics check whether the program is user-
friendly or not. Each software is used by the end-user.
5.Correctness – Correctness is one of the important software quality
metrics as this checks whether the system or software is working
correctly without any error by satisfying the user.
6.Maintainability – Each software product requires
maintenance and up-gradation. Maintenance is an
expensive and time-consuming process.
7.. Integrity – Software integrity is important in terms of
how much it is easy to integrate with other required
software.
8.Security – Security metrics measure how secure the
software is. In the age of cyber terrorism, security is the
most essential part of every software.
SOFTWARE RELIABILITY
• According to ANSI, Software Reliability is defined as: the
probability of failure free software operation for a specified
period of time in a specified environment.

• Software Reliability is an important attribute of software


quality, together with functionality, usability, performance,
serviceability, capability, installability, maintainability, and
documentation.

• While the complexity of software is inversely related to


software reliability, it is directly related to other important
factors in software quality, especially functionality, capability,
etc. Emphasizing these features will tend to add more
complexity to software.
 Software Reliability starts with many faults in the system
when first created.

 After testing and debugging enter a useful life cycle.

 Useful life includes upgrades made to the system which


bring about new faults.

 The system needs to then be tested to reduce faults.

 Software reliability cannot be predicted from any physical


basis, since it depends completely on the human factors in
design.

You might also like