STQA CH 1
STQA CH 1
Sanjay P. Bhakkad
Associate Professor,
IMSCD&R, Ahmednagar
What is Software?
Software is:
application's requirements
Software complexity
Programming errors
Changing requirements
Time pressures
Poorly designed/documented code
Use of software development tools
Self egos
Difference between
error, defect, bug, and failure
A mistake in coding is called error,
error found by tester is called defect,
defect accepted by development team then it is
called bug,
build does not meet the requirements then it is
failure.
definition.
In technical usage, quality can have two meanings:
1.
2.
requirements.
Quality Assurance
assurance can mean the act of giving confidence, the state of
Quality Control
control can mean an evaluation to indicate needed
10
QC vs. QA
11
Quality Control
Quality Assurance
Focus is on Product
Focus is on Process
Verification is an example of QA
Examples:
Walkthrough
Testing
Inspection
Checkpoint review
Examples:
Defining Processes
Quality Audit
Selection of Tools
Training
12
SQA is a set of activities for ensuring quality in software engineering processes (that
ultimately result in quality in software products).
It includes the following activities:
Once the processes have been defined and implemented, Quality Assurance has the
following responsibilities:
identify weaknesses in the processes
correct those weaknesses to continually improve the process
The quality management system under which the software system is created is normally
based on one or more of the following models/standards:
CMMI
Six Sigma
ISO 9000
13
14
document
indicate the software process activities that are
covered by quality assurance.
All the documents noted in the SQA Plan are
listed and all applicable standards are noted.
15
structure,
SQA tasks and activities and their placement
throughout the software process, and
the organizational roles and responsibilities
relative to product quality.
16
17
19
procedure.
defines test record keeping requirements.
defines procedures for reporting, tracking, and
resolving errors and defects, and
identifies the organizational responsibilities for
these activities.
20
SQA Activities
SQA is an umbrella activity that ensures conformance to
SQA Activities
The software engineering institute recommends a set of
SQA Activities
Application of Technical Methods:
Employing proper methods and tools for developing
software.
SQA starts early along with the process of software
development.
Technical methods and tools enable the analyst to
achieve a high quality specification and help the
designer to develop a high-quality design.
We can always point specifications ( or the prototype )
and the design are individually checked for quality.
24
SQA Activities
Conduct of Formal Technical Review:
FTR in conducted to assess the quality and design of
the prototype.
It involves a meeting with the technical staff to discuss
the quality requirements of a software product.
FTR helps in detecting errors at an early phase of
development.
This prevents errors from percolating down to later
phase and saves the time of rework.
25
SQA Activities
Software Testing:
Software testing is a critical task of SQA activity, which
26
SQA Activities
Enforcement of Standards:
This task of SQA emphasis on application of formal
SQA Activities
Control of change:
Any and every change to software will almost
SQA Activities
Measurement:
Software quality metrics helps in estimating the cost and
SQA Activities
Record keeping and Reporting:
Keeping records and reporting ensure the
30
according to expectation.
The SQA team should ensure that the expected
metrics will be posted.
At the same time, the SQA team should also select the
right tool to gauge the application.
To gauge the actual application, the metrics are
divided into four categories:
31
32
Product Quality:
These set of metrics will gauge the ability of the developers to
33
manager.
The staff hours are rated according to the need of the stage.
locate the root of the problem and how fast they could
built a fix to the problem.
The better the metrics rating, the better the application would work.
35
38
40
44
Six Sigma
Six Sigma is the most widely used strategy for statistical
Six Sigma
The term Six Sigma imply an extremely high quality
standard.
The Six Sigma methodology defines 3 core steps:
Define customer requirements and deliverables and
project goals via well defined methods of customer
communication.
Measure the existing process and its output to determine
current quality performance.
Analyze defect metrics and determine the vital few
causes.
47
Six Sigma
If an existing software process is in place, but improvement
48
Six Sigma
If an organization is developing a software process, the core
49
Assignment No. 1:
Submit up to 27/07/2015
1. Process improvement is a vehicle for quality assurance
comment.
2. Software quality metrics helps to give quantitative view
of software quality - Comment.
3. Describe SQA activities.
4. Explain CMM in detail.
5. Write Short Notes:
a) Formal Technical Review
b) Quality Factors
c) Six Sigma
d) Quality Metrics
50