You are on page 1of 23

Quality Definitions

What is Quality
– “Fit for Use” - Customer’s View
- Dr. Joseph Juran and Dr. W Edwards Deming

– “Conformance to Requirements” –Producer’s view


- Philip Crosby

– Producer’s View of Quality


– Doing the right thing
– Doing it the right way
– Doing it right the first time
– Doing it on time without exceeding cost

ISO 9000
The totality of characteristics of an activity /process, a
product, an organization, or any combination, thereof,
that bear on its ability to satisfy stated and implied needs.
1
What is Quality
If the totality of characteristics of the product satisfies the
customers stated and implied needs, then we have met the
requirements - and therefore achieved quality.

All the attributes/ characteristics that need to be built in the


product are customer’s requirements.*

* In order to develop a consistent understanding, the stated and


implied needs must be documented.

2
Quality Assurance and Quality Control
Quality assurance (QA) and quality control (QC)
are two terms that are often used interchangeably.

Although similar, there are distinct differences


between the two concepts.

I will try to explain the differences between quality


control and quality assurance, and provide
definitions and examples of each. 
Quality Assurance and Quality Control
What is Assurance?
Assurance is provided by organization management, it means giving a positive
declaration on a product which obtains confidence for the outcome. It gives a
security that the product will work without any glitches as per the expectations
or requests.
What is Quality Assurance?

Quality Assurance is known as QA and focuses on preventing


defect. Quality Assurance ensures that the approaches,
techniques, methods and processes are designed for the projects
are implemented correctly.
Quality assurance activities monitor and verify that the processes
used to manage and create the deliverables have been followed
and are operative.
Quality Assurance is a proactive process and is Prevention in
nature. It recognizes flaws in the process. Quality Assurance has
to complete before Quality Control.
Quality Assurance and Quality Control
What is Control?

Control is to test or verify actual results by comparing it with the defined standards.

What is Quality Control?


Quality Control is known as QC and focuses on identifying a defect. QC ensures that the
approaches, techniques, methods and processes are designed in the project are following
correctly. QC activities monitor and verify that the project deliverables meet the defined quality
standards.
Quality Control is a reactive process and is detection in nature. It recognizes the defects.
Quality Control has to complete after Quality Assurance.
Quality Assurance and Quality Control

What is The Difference in QA/QC?

Many people think QA and QC are the same and interchangeable


but this is not true. Both are tightly linked and sometimes it is
very difficult to identify the differences. Fact is both are related
to each other but they are different in origins. QA and QC both
are part of Quality Management however QA is focusing on
preventing defect while QC is focusing on identifying the defect.
 
Quality Assurance and Quality Control

What is The Difference in QA/QC?


What is The Difference in QA/QC?
Quality Assurance Quality Control
It is a process which deliberates on providing QC is a process which deliberates on fulfilling
assurance that quality request will be the quality request.
achieved.
A QA aim is to prevent the defect. A QC aim is to identify and improve the
defects.
QA is the technique of managing quality. QC is a method to verify quality.
QA does not involve executing the program. QC always involves executing the program.
All team members are responsible for QA. Testing team is responsible for QC.
QA Example: Verification QC Example: Validation.
QA means Planning for doing a process. QC Means Action for executing the planned
process.
Statistical Technique used on QA is known as Statistical Technique used on QC is known as
Statistical Process Control (SPC.) Statistical Quality Control (SPC.)
QA makes sure you are doing the right things. QC makes sure the results of what you've done
are what you expected.
QA Defines standards and methodologies to QC ensures that the standards are followed
followed in order to meet the customer while working on the product.
requirements.
What is The Difference in QA/QC?

Quality Assurance Quality Control


QA is responsible for full software QC is responsible for 
development life cycle. software testing life cycle.
Quality Assurance and Quality Control

Does Quality Assurance Remove Need for Quality Control?

“If QA (Quality Assurance) is done then why do we need to


perform QC (Quality Control)?”

Well, this thought might come to your mind, from time to time.
If we have followed all the pre-defined processes, policies &
standards correctly and completely then why do we need to perform
a round of QC?
Quality Assurance and Quality Control

Does Quality Assurance Remove Need for Quality Control?

In my opinion, QC is required after QA is done.


While doing ‘QA’, we define the processes, policies & strategies,
establish standards, develop checklists etc. that needs to be used
and followed throughout the life cycle of a project.

And while doing QC we follow all those defined processes,


standards and policies that we laid down in QA to make sure that
the project is maintaining high quality and the final outcome of
the project at least meets the customer’s expectations.
Quality Assurance and Quality Control
Does Quality Assurance Remove Need for Quality Control?
QC aims at detecting & correcting the issues while QA aims at preventing the
issues to occur.
Quality Assurance and Quality Control
SQA Activities
Software quality assurance is composed of a
variety of functions associated with two different
constituencies ? the software engineers who do
technical work and an SQA group that has
responsibility for quality assurance planning,
record keeping, analysis, and reporting.
Quality Assurance and Quality Control
Following activities are performed by an independent SQA group:
1.Prepares an SQA plan for a project: 

The program is developed during project planning and is reviewed


by all stakeholders. The plan governs quality assurance activities
performed by the software engineering team and the SQA group. The
plan identifies calculation to be performed, audits and reviews to be
performed, standards that apply to the project, techniques for error
reporting and tracking, documents to be produced by the SQA team,
and amount of feedback provided to the software project team.
Quality Assurance and Quality Control
2. Participates in the development of the project's
software process description: The software team
selects a process for the work to be performed. The
SQA group reviews the process description for
compliance with organizational policy, internal
software standards, externally imposed standards (e.g.
ISO-9001), and other parts of the software project plan.
3. Reviews software engineering activities to verify
compliance with the defined software process: The
SQA group identifies, reports, and tracks deviations
from the process and verifies that corrections have been
made.
Quality Assurance and Quality Control
4. Audits designated software work products to verify
compliance with those defined as a part of the software
process: The SQA group reviews selected work products,
identifies, documents and tracks deviations, verify that
corrections have been made, and periodically reports the results
of its work to the project manager.
5. Ensures that deviations in software work and work
products are documented and handled according to a
documented procedure: Deviations may be encountered in the
project method, process description, applicable standards, or
technical work products.
6. Records any noncompliance and reports to senior
management: Non- compliance items are tracked until they are
resolved.
Software Quality metrices
Software metrics can be classified into three categories −
•Product metrics − Describes the characteristics of the
product such as size, complexity, design features,
performance, and quality level.
•Process metrics − These characteristics can be used to
improve the development and maintenance activities of
the software.
•Project metrics − This metrics describe the project
characteristics and execution. Examples include the
number of software developers, the staffing pattern over
the life cycle of the software, cost, schedule, and
productivity.
Software Quality metrices
Product Quality Metrics
This metrics include the following −
•Mean Time to Failure
•Defect Density
•Customer Problems
•Customer Satisfaction
Software Quality metrices
The average time between two successive
failures is known as MTTF. It is obtained by
observing a large number of failures in the
software product.
To measure MTTF, failure data for n failures is
recorded. If the failures occur at the time instants
T1, T2, …, Tn then MTTF can be calculated as:

MTTF = ( (T2 - T1) + (T3 - T2) + ... + (Tn+1 - Tn) ) / (n-1)


Software Quality metrices
It is notable that only run time is considered in
the time measurements. The time for which the
system is down to fix the error, the boot time and
any other negligible time are neglected and are
not included in the time measurements.
Software Quality metrices
Mean Time To Repair (MTTR) :
When the software fails, it requires sometime to
fix the error. MTTR is the measure of the average
time system takes to find the errors that cause the
failure and to fix them.
Mean Time Between Failure (MTBR) :
MTBR attribute can be obtained by combining
the MTTF and MTTR attributes.
MTBF = MTTF + MTTR
Software Quality metrices
Defect Density
It measures the defects relative to the software
size expressed as lines of code or function point,
etc. i.e., it measures code quality per unit. This
metric is used in many commercial software
systems.
Software Quality metrices
Defect Density
It measures the defects relative to the software
size expressed as lines of code or function point,
etc. i.e., it measures code quality per unit. This
metric is used in many commercial software
systems.

You might also like