31 - SW Quality Assurance

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

UNIVERSITI TEKNOLOGI MARA

CSC782
SOFTWARE QUALITY

SOFTWARE QUALITY
ASSURANCE

Version 3.0

Fakulti Teknologi Maklumat & Sains Kuantitatif

WHERE ARE WE?

REALITY CHECK
Is an SQA plan just busy-work, or does it
really pay off?
Hughes Aircraft
moved from level 2 in 1987 to level 3 in 1990
cost = $500K
benefit = $2M annually

Raytheon
moved from level 1 in 1988 to level 3 in 1993
productivity doubled
ROI = $7.70 per $1 invested

SQA REMEMBER THIS?

SQA MORE COMPREHENSIVE

WHAT IS SQA?
Software Quality Assurance is an establishment of
network of organizational procedures and standards
leading to high-quality software, which include
Software Quality Planning selection of appropriate
procedures and standards from this framework and
adaptation of these to specific software project
Software Quality Control definition and enactment of
processes that ensure that project quality procedures and
standards are being followed by the software
development team
Software Quality Metrics collecting and analyzing
quality data to predict and control quality of the software
product being developed

QUALITY PLANNING (QP)


Tailoring QP should select those
organizational standards that are appropriate
to a particular product
Standardization QP should use (call out)
only approved organizational process and
product standards
If new standards are required a quality
improvement should be initiated

Elements QP elements are usually based


on the ISO-9001 model elements

QUALITY PLANNING (QP)


QP is not written for software developers. Its
written for SQEs as a guide for QC and for
the customer to monitor development
activities
Things like software production, software
product plans and risk management should
be defined in Software Development Plan
Quality Factors shouldnt be sacrificed to
achieve efficiency. Dont take the job if
quality process cant be upheld

QUALITY CONTROL (QC)


QC involves overseeing the software
development process to ensure that the
procedures (SQAP) and STDs are being
followed. The following activities constitute
QC:
Reviews
Test
Audits

QUALITY REVIEWS
Quality Reviews - in-process reviews of
processes and products. Reviews are the
most widely used method of verifying the
quality of processes and products. Reviews
make quality everyone's responsibility.
Quality must be built-in. SQE is responsible
for writing Quality Engineering Records
(QERs) documenting their participation in
these reviews.

TEST
Tests - end-result validations of products.
These validations are conducted after the
software has been developed. Test
procedures are followed during conduct of
these activities. SQE is responsible for
keeping the logs and some times for writing
the test report.

QUALITY AUDITS
Quality Audits - in-process verifications of
processes. These audits are conducted
periodically (twice a month) to assess
compliance to the process STDs.

SOFTWARE METRICS
Software measurement - the process of deriving a
numeric value for some attribute of a software
product or a software process. Comparison of
these values to each other and to (SVVP &) STDs
allows drawing conclusions about the quality of
software products or the process.
The focus of the metrics collecting programs is
usually on collecting metrics on program defects
and the V&V process.
Metrics can be either Process Metrics or Poduct
Metrics

SOFTWARE METRICS
Most of the Ilities can not be measured directly
unless theres historical data. Instead tangible
software product attributes are measured and the
Ility factors are derived using predefined
relationships between measurable and synthetic
attributes.
The boundary conditions for all measurements
should be established in advance and then revised
once a large databank of historical data has been
established

UNIVERSITI TEKNOLOGI MARA

Intermission.
..

SQA COMPONENTS
1.
2.
3.
4.
5.
6.

Pre-Project Components
Development and Maintenance Activities
Error Reduction Infrastructure
SQ Management Components
SQA System Assessment
Human Components

PRE-PROJECT COMPONENTS
Contract Review
Development and Quality Plans
Development Plans
Schedules
manpower requirements
Tools

Quality Plans
measurable quality goals
success criteria for each project phase
scheduled V&V activities

LIFE-CYCLE COMPONENTS
Software Testing
Reviews
varying levels of formality
specs, designs, code modules, documents, etc

Maintenance
Corrective
Adaptive
functional

ERROR PREVENTION &


IMPROVEMENT INFRASTRUCTURE
work procedures
templates and checklists
staff training
preventive actions
configuration control
document control

MANAGEMENT COMPONENTS
Project Progress
schedules, budgets, risk analysis,

Quality Metrics
Quality Costs

SQA ASSESSMENT
Quality Management Standards
SEI CMM
ISO 9001

Process Standards
IEEE 1012
ISO 12207

HUMAN COMPONENTS
Management
SQA Unit
SQA committees and forums

SEI CMM(I) LEVELS


1. Initial
ad hoc, perhaps chaotic

2. Repeatable
tracks costs, has a schedule
similar projects can repeat earlier successes

3. Defined
process in documented and standardized

4. Managed
detailed process and product measurements

5. Optimizing
continuous process improvement

ISO 15504
SPICE = Software Process Improvement
Capability Determination
framework for process improvement similar
to SEI CMM(I)

ISO STANDARDS FOR QUALITY


ISO 9000 : Quality Management and
Quality Assurance Standards - Guidelines
for selection and use
ISO 9001 : Quality Systems - Model for
quality assurance in design/development,
installation, and servicing
ISO 9000-3 : Guidelines to applying 9001 to
software

ISO 9000
ISO 9000 seeks to set criteria which achieve a
goal and is not prescriptive as to methods. The
requirements come in Sections 4 to 8.
Section 4 - General Requirements
Section 5 - Management Responsibility
Section 6 - Resource Management
Section 7 - Product Realization
Section 8 - Measurement, analysis and
improvement
In each of these areas, ISO 9001: 2000 seeks to set

out key requirements, which if met will ensure


quality.

ISO 12207
ISO 12207 is an ISO standard for software life cycle
processes.
Standard ISO 12207 establishes a process of life
cycle for software, including processes and activities
applied during the acquisition and configuration of the
services of the system. The standard has the main
objective of supplying a common structure so that the
buyers, suppliers, developers, maintainers, operators,
managers and technicians involved with the software
development use a common language. This common
language is established in the form of well defined
processes.

SQA

UNIVERSITI TEKNOLOGI MARA

Thank You

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