0% found this document useful (0 votes)
108 views57 pages

Softwarequalityassurancefundamentals 140807000657 Phpapp01

This document discusses software testing and quality assurance. It provides definitions of key terms like quality, quality assurance, bugs, errors and failures. It describes the software quality assurance process and some infamous cases of software failures. It also discusses best practices for software design, coding and documentation. Metrics and models for software quality like CMM are mentioned. The roles and important traits of software testers are outlined.

Uploaded by

raghu84taduri
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
108 views57 pages

Softwarequalityassurancefundamentals 140807000657 Phpapp01

This document discusses software testing and quality assurance. It provides definitions of key terms like quality, quality assurance, bugs, errors and failures. It describes the software quality assurance process and some infamous cases of software failures. It also discusses best practices for software design, coding and documentation. Metrics and models for software quality like CMM are mentioned. The roles and important traits of software testers are outlined.

Uploaded by

raghu84taduri
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 57

Software Testing

and
Quality Assurance
Prof. Shailesh T. Gahane
Assistant Professor
Dr. D. Y. Patil School of MCA
Charholi (Bk), Lohegaon, Pune 412105
Mobile No.: +91-9960886053
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Software

Quality Assurance
Fundamentals

1.1 Definition of Quality, QA, QC, SQA


1.2 SQA Planning & Standards

1.3 SQA Activities

1.4 Building blocks of SQA


1.5 Quality factors
1.6 Software Quality Metrics
1.7 Process Improvement- Process and Product Quality - CMM,
Six Sigma.

Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

What is Software ?
According to the IEEE
Software is:
Computer programs, procedures, and possibly associated
documentation and data pertaining to the operation of a
computer system.
Software Errors, software faults and software failures
Bug/defect/fault consequence of a human error
o results in non-conformance to requirements
o manifests as failure in running software

Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Infamous Software Error Case Studies


1947, MARK II
Disney's Lion King, 1994-1995
Intel Pentium Floating-Point Division Bug, 1994 .-(4195835 / 3145727) *
3145727 - 4195835 (~$ 475 mill. )
NASA Mars Polar Lander, 1999
Patriot Missile Defense System, 1991
Ariane 5 was destroyed 40 seconds after take off due to a crash in a
software component controlling the rocket (1996), cost ~$ 500 mill.
The Y2K (Year 2000) Bug, circa 1974
Dangerous Viewing Ahead, 2004
October 1992, the London Ambulance Service suffered a disaster brought
their operations to a virtual standstill over 36 hours, and cost 20 lives in
the process. It was discovered that the new computer aided dispatch (CAD)
software was responsible for the crisis.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Terms for Software Failures


Depending on where you're employed as a software tester, you will use
different terms to describe what happens when software fails.
Here are a few:
Defect
Variance
Fault
Failure
Problem
Inconsistency
Error
Feature
Incident
Bug
Anomaly
JUST CALL IT WHAT IT IS AND GET ON WITH IT
Engineers deciding to rename Product Anomaly Reports (PARs) to
Product Incident Reports (PIRs).

Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Error: A wrong action attributable to bad judgment,


ignorance or inattention. or A misconception resulting from
incorrect information.
Fault/ bug : The quality of being inadequate or
fallingshortof perfection. Or Responsibility for a bad
situation or event.
Failure: An event that does not accomplish its intended
purpose. Or
Loss
of T.ability
function
normally
Prof.
Shailesh
Gahane, to
Dr. D
Y Patil School
of MCA, Pune

Product Specification.

A product specification, sometimes referred to as simply a


spec or product spec, is an agreement among the software
development team.

It defines the product they are creating, detailing what it


will be, how it will act, what it will do, and what it won't
do.

This agreement can range in form from a simple verbal


understanding, an email, or a scribble (Picture, etc) on a
small paper, to a highly detailed, formalized written
document.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

TWARE QUALITY ASSURANCE (SQA)


Software Quality Assurance (SQA) consists of a means of
monitoring the software engineering processes and methods used
to ensure quality.
SQA encompasses the entire software development process,
which includes processes such as
requirements definition,
software design,
coding,
source code control,
code reviews,
change management,
configuration management,
testing,
release management, and
product integration.
SQA is organized into goals, commitments, abilities, activities,
measurements, and verifications.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

SQA is a set of activities for ensuring quality in software


engineering processes (that ultimately result in quality in
software products). The activities establish and evaluate
the processes that produce products.
Processes could be:

Software Development Methodology


Project Management
Configuration Management
Requirements Development/Management
Estimation
Software Design
Testing
etc

Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

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

SQA basically focuses on Process of the projects. It is a


Prevention oriented. The Breadth of SQA is Organization
wide. It relates to all products that will ever be created by
a process or processes.
The activities of SQA are as follows:
Process Definition and Implementation
Audits
Training
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

QUALITY

Quality is a subjective term. Software quality will


depend on who the customer is and the customers
involvement in the overall software project.

Customer can be defined as the end users,


customer acceptance testers, customer contract
officers, customer management, the development
organizations management, accountants, testers,
salespeople, future software maintenance
engineers, stockholders, and so on.

Each type of customer who will be evaluating the


value of the software application will have their
own way of defining and measuring quality.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

DEFINATION OF GOOD DESIGN.


Good software design is the design that incorporates
the latest but proven technology, has a scalable
structure, facilitates easy integration with other
systems, and is flexible to allow incorporating
changes in requirements.

Businesses always keep on expanding, thus any


system deployed should also scale up nicely.

the application shouldxbe easily integratable with


these myriad systems.

As Requirements keep changing very often ,the


design should be flexible enough to take care of
these changes in requirements.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

DEFINITION OF GOOD CODE


Good code is code that works as intended, is
reasonably defect-free, and is readable and
maintainable.
For object-oriented programming, here are some
typical ideas to consider in setting rules/standards:

Minimize or eliminate use of global variables.

Use descriptive function and method namesuse


both uppercase and lowercase, avoid
abbreviations, and use as many characters as
necessary to be adequately descriptive. Be
consistent
in naming conventions.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Use descriptive variable namesuse both


uppercase and lowercase, avoid
abbreviations, and use as many characters
as necessary to be adequately descriptive.
Be consistent in naming conventions.

Function and method sizes should be


minimized. Less than 100 lines of code is
good; less than 50 lines is preferable.

Function descriptions should be clearly


spelled out in comments preceding a
functions code.

Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Organize code for readability.

Use white spaces generouslyvertically and


horizontally.

Each line of code should contain 70 characters


max.

One code statement per line.

Coding style should be consistent throughout a


program (e.g., use of brackets, indentations,
naming conventions).

In adding comments, err on the side of too


Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Documentation of the overall program function and


flow or if possible a separate flowchart and detailed
program documentation.

Make extensive use of error-handling procedures and


status and error logging.

To minimize complexity and increase maintainability,


avoid too many levels of inheritance in class
hierarchies (relative to the size and complexity of the
application). Minimize use of multiple inheritances,
and minimize use of operator overloading (note that
the java programming language eliminates multiple
inheritance and operator overloading).

Make liberal
use of
exception
handlers.
Prof. Shailesh
T. Gahane,
Dr. D Y Patil
School of MCA, Pune

Software bug occurs when one or


more of the following rules are true:
1. The software doesn't do something that
the product specification says it should do.
2. The software does something that the
product specification says it shouldn't do.
3. The software does something that the
product specification doesn't mention.
4. The software doesn't do something that
the product specification doesn't mention but
should.
5. The software is difficult to understand,
hard to use and slow.

Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Why Do Bugs Occur?

Bugs are caused for numerous reasons, but, in this


sample project analysis, the main cause can be traced
to the specification.

Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Where is the Cost of Bugs ?


Figure shows an example of how the cost
of fixing these bugs can grow over time.

Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

List of Traits (Quality, Characteristics)that


Most Software Testers should have:
They are explorers. Software testers are not
afraid to venture into unknown situations. They
love to get a new piece of software, install it on
their PC, and see what happens.
They

are troubleshooters. Software testers are


good at figuring out why something doesn't work.
They love puzzles.

They

are relentless. Software testers keep


trying. They may see a bug that quickly vanishes
or is difficult to re-create. Rather than dismiss it as
a fluke, they will try every way possible to find it.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

They are creative. Testing the obvious is not


sufficient for software testers. Their job is to
think up creative and even off-the-wall
approaches to find bugs.

They are (mellowed) perfectionists. They


strive for perfection, but they know when it
becomes unattainable and they're okay with
getting as close as they can.

They exercise good judgment. Software


testers need to make decisions about what they
will test, how long it will take, and if the
problem they're looking at is really a bug.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

They are tactful and diplomatic. Software


testers are always the bearers of bad news.
They have to tell the programmers that their
baby is ugly. Good software testers know how
to do so tactfully and professionally and know
how to work with programmers who aren't
always tactful and diplomatic.

They are persuasive. Bugs that testers find


won't always be viewed as severe enough to
be fixed. Testers need to be good at making
their points clear, demonstrating why the bug
does indeed need to be fixed, and following
through Prof.
onShailesh
making
it happen.
T. Gahane, Dr. D Y Patil School of MCA, Pune

LIST OF CAUSES THAT INTRODUCE DEFECTS IN


SOFTWARE
Miscommunication or no communication Software
specification or requirements are not understood by the project
team due to miscommunication or no communication among
the project team.
Software complexity Software applications are getting
more complex due to an increase in complexity in
requirements. Multi-tiered applications, client-server and
distributed applications, data communications, enormous
relational databases, and the complex size of applications have
all contributed to the exponential growth in software/system
complexity.
Programming errors If design specifications are not
understood by programmers or if programmers make mistakes
in programming structures or implement any design wrongly by
mistake, thenProf.
defects
will be introduced in the software.
Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Changing Requirements A change in requirements upsets


the whole project, from design to build to testing to deployment.
In extreme situations, it may lead to the throwing away of all
already designed and built software. In other cases, it may lead to
significant change required in existing design and build.
Sometimes a small change required in one module of software
may lead to significant changes required in other dependent
modules.
Overloading of Resources Due to intangibility and the
abstract nature of any software product, it is very difficult to
make a good schedule for software projects. This results in bad
scheduling, which causes many software professionals to be
overloaded.
Less skillful resources The software profession needs very
skilled and experienced professionals. Many times less skilled
professionals are recruited due to lack of skilled professionals in
the market. This results in introduction of more defects in the
software.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Unprofessional Attitude Many times professionals on


the project have attitude problems. They take their
assignments lightly, play office politics, or try to shun their
assigned work and off-load it to other members of the team.
Poor documentation This is another primary source of
defects in the software. In the case of smaller projects
where some form of extreme programming or agile
programming is followed, less documentation is acceptable
because the project team is located at one place, and due
to smaller software, complexity is less.
But in the case of bigger projects where the team may be
located at different sites and where software requirements
are complex, good documentation is very important.
Otherwise, the team runs a great risk of introducing more
defects. Another aspect of poor documentation is difficulty
in maintaining the software application after it goes into
production.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Development tools In todays fast paced business environment, project teams


use many tools to increase their
productivity. Some of these tools include
visual tools, class libraries, compilers,
scripting tools, RAD (Rapid Application
Development), Integrated Development
Studios, Integration Tools, and so on. Many
times these tools introduce their own
defects, and sometimes, due to their poor
documentation, help in adding defects.

Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Software Quality Metrics


Quality:

The totality of features and characteristics of a


product, process or service that bear on its ability to satisfy
stated or implied needs.

The

expected quality features and characteristics of a


software product are commonly referred to as Quality
Attributes.

Quality

attributes are used early in the development


process to identify user quality requirements. Each system
has specific and unique quality needs, which are a function
of the purpose of the application.

Software

quality attributes are assessed by using Quality


Control Techniques and when possible, appropriate
Software Measurements or Metrics.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Software metrics can be classified into three


categories:
Product

Metrics,
Process Metrics, and
Project Metrics.
Product

metrics describe the characteristics of the


product such as size, complexity, design features,
performance, and quality level.

Process

metrics can be used to improve software


development and maintenance.
Examples include the effectiveness of defect
removal during development, the pattern of testing
defect arrival, and the response time of the fix
process. Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Project

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. Some metrics belong to
multiple categories. For example, the
inprocess quality metrics of a project are
both process metrics and project metrics.

Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Typical Quality Attributes


Usability: effort required to learn, operate
and use a program.
Safety:

ability of the system to operate


without catastrophic failure.

Fault-tolerance:

ability of the system to


continue operating after some system faults
have manifested themselves.

Security:

ability of the system to protect


itself against accidental or deliberate
intrusion.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Portability:

effort required to transfer a program


from one computing environment or platform to
another.

Reusability:

ability and effort required to reuse


a program or part of a program in other
applications.

Interoperability:

effort required interconnecting


or relating two different applications, running
possibly in different computing environments

Maintainability:

effort required modifying,


updating, evolving, or repairing a program during
its operation.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

PLAN-DO-CHECK-ACT CYCLE (PDCA


CYCLE)
When to Use:

As a model for continuous improvement.


When

starting a new improvement project.


When developing a new or improved design
of a process, product or service.
When defining a repetitive work process.
When planning data collection and analysis
in order to verify and prioritize problems or
root causes.
When implementing any change
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

PLAN
Establish the objectives and processes
necessary to deliver results in accordance with
the expected output (the target or goals). By
establishing output expectations, the
completeness and accuracy of the specification
is also a part of the targeted improvement.
When possible start on a small scale to test
possible effects.

DO
Implement the plan, execute the process, make
the product. Collect data for charting and analysis
in the following "CHECK" and "ACT" steps.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

CHECK
Study the actual results (measured and collected in "DO"
above) and compare against the expected results (targets or
goals from the "PLAN") to ascertain any differences. Look for
deviation in implementation from the plan and also look for the
appropriateness and completeness of the plan to enable the
execution, i.e., "Do". Charting data can make this much easier
to see trends over several PDCA cycles and in order to convert
the collected data into information. Information is what you
need for the next step "ACT".

ACT
Request corrective actions on significant differences
between actual and planned results. Analyze the differences to
determine their root causes. Determine where to apply changes
that will include improvement of the process or product. When
a pass through these four steps does not result in the need to
improve, the scope to which PDCA is applied may be refined to
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Software Process Improvement


What is the SOFTWARE PROCESS:
The software process is:
The set of Activities, Methods and Transformations that
people use to Develop and Maintain Software and the
Associated Products. for example: product plans, design
documents, code, test cases and user manuals

The Software Process is :


the Set of Activities, Methods, and Practices that guide People
in the Production of Software. s(Watts Humphrey 1993)

SPI is the name given to the identification of the current stateof-the-practice of information systems development within an
organization and then improving it.
SPI focuses mostly on defect reduction and improving the
development process.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Understanding existing processes and introducing process


changes to improve product quality, reduce costs or accelerate
schedules.

Most process improvement work so far has focused on defect


reduction. This reflects the increasing attention paid by
industry to quality.

However, other process attributes can also be the focus on


improvement.

Process

Improvement Stages

Process Measurement
Attributes

of the current process are measured. These are a baseline


for assessing improvements.

Process Analysis
The

current process is assessed and bottlenecks and weaknesses are


identified.

Process Change
Changes

to the process that have been identified during the analysis


are introduced.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

The Process
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Process and Product Quality

Process quality and product quality are closely


related and process improvement benefits arise
because the quality of the product depends on its
development process.

A good process is usually required to produce a


good product.

For manufactured goods, process is the principal


quality determinant.

For design-based activity, other factors are also


involved especially the capabilities of the
designers.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

SOFTWARE PRODUCT QUALITY


FACTORS
Development
Technology

Process
Quality

Product
Quality

People
Quality

Cost, Time and


Schedule

Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Quality Factors
For large projects with average capabilities, the
development process determines product quality.
For

small projects, the capabilities of the developers


is the main determinant.

The

development technology is particularly


significant for small projects.

In

all cases, if an unrealistic schedule is imposed


then product quality will suffer.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Software Process Improvement:


CMM(Capability Maturity Model)

SOFTWARE PROCESS MATURITY is: The extent to


which a specific process is explicitly defined, managed,
measured, and effective. Maturity implies a potential
for growth in capability and indicates both the richness
and consistency with which software processes are
applied across the Organization.

SOFTWARE PROCESS MATURITY Implies that: The


Productivity
and
Quality
resulting
from
an
Organizations Software Process can be improved over
time through consistent gains in the discipline by using
the Software Process

When the model is applied to an existing organization's


software-development processes, it allows an effective approach
Prof. Shailesh
T. Gahane,
Dr. D Y Patil
School of MCA,
Punethat the model
toward improving
them.
Eventually
it became
clear

This Model is developed by Software Engineering


Institute (SEI), Carnegie Mellon. Funded by U.S.
Department of Defense, concerned with late and
cancelled contracts.
The CMM model's application in software development
has sometimes been problematic.
Applying multiple models that are not integrated within
and across an organization could be costly in training,
appraisals, and improvement activities.
The
Capability Maturity Model Integration
(CMMI)
project was formed to sort out the problem of using
multiple models for software development processes,
thus the CMMI model has outdated the CMM model,
though the CMM model continues to be a general
theoretical process capability model used in the public
domain.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

SOFTWARE PROCESS: CMM

Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

45

SOFTWARE PROCESS: CMM


1.

Initial. The software process is characterized as ad hoc, and occasionally even


chaotic. Few processes are defined, and success depends on individual effort
and heroics.

2.

Repeatable. Basic project management processes are established to track cost,


schedule, and functionality. The necessary process discipline is in place to repeat
earlier successes on projects with similar applications.

3.

Defined. The software process for both management and engineering activities
is documented, standardized, and integrated into a standard software process for
the organization. All projects use an approved, tailored version of the
organization's standard software process for developing and maintaining
software.

4.

Managed. Detailed measures of the software process and product quality are
collected. Both the software process and products are quantitatively understood
and controlled.

5.

Optimizing. Continuous process improvement is enabled by quantitative


feedback from the process and from piloting innovative ideas and technologies.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

46

What is a standard?
A standard is a document that provides requirements,
specifications, guidelines or characteristics that can be
used consistently to ensure that materials, products,
processes and services are fit for their purpose.
ISO has published over 19000 International Standards
that can be purchased from ISO or its members.
What are the benefits of ISO International Standar
ds?
ISO International Standards ensure that products and
services are safe, reliable and of good quality. For
business, they are strategic tools that reduce costs by
minimizing
waste
and
errors
and
increasing
productivity. They help companies to access new
markets, level the playing field for developing
countries and facilitate free and fair global trade.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Some Examples of ISO Standards


ISO 31000 Risk management
ISO 9000 Quality management
ISO 26000 Social responsibility
ISO 14000 Environmental management
ISO 50001 Energy management
ISO 22000 Food safety management
ISO 3166 Country codes
ISO 4217 Currency codes
ISO 639 Language codes
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

ISO 9000
ISO 9001
ISO 9126

The ISO 9000 family of standards is related to quality


management systems and designed to help organizations
ensure that they meet the needs of customers and other
stakeholders
while
meeting
statutory
and
regulatory
requirements related to the product.

The
standards
are
published
by
ISO,
the
International Organization for Standardization, and available
through National standards bodies.

ISO 9000 deals with the fundamentals of quality management


systems, including the eight management principles on which
the family of standards is based.

ISO 9001 deals with the requirements that organizations


Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

hat is Six Sigma?


It is important to recall that every customer always values consistent
and predicable services and/or products with near zero defects.
Therefore they experience the variation.
If we can measure process variations that cause defects i.e.
unacceptable deviation from the mean or target, we can work towards
systematically managing the variation to eliminate defects.
Six Sigma is a methodology focused on creating breakthrough
improvements by managing variation and reducing defects in
processes across the enterprise.
Sigma is a Greek symbol represented by "
Sigma is a statistical term that measures process deviation from the
process mean or target. Mean is also referred to as average in common
language. The figure of six was arrived statistically by looking at the
current average maturity of most business enterprises.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

There are two potential scenarios


First, there is already an existing process(s) that is working
"reasonably" well; and Second there is no process at all. A bad process is
as good as no process.
The first scenario focuses on significant process
improvements and requires use of DMAIC:
Define process goals in terms of key critical
parameters (i.e. critical to quality or critical to
production) on the basis of customer requirements or
Voice Of Customer (VOC)
Measure the current process performance in context of
goals
Analyze the current scenario in terms of causes of
variations and defects
Improve the process by systematically reducing
variation and eliminating defects
Control future performance of the process
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

The second focuses on process design using Design For Six Sigma
(DFSS) approach. DFSS typically requires IDOV:
Identify process goals in terms of critical parameters, industry &
competitor benchmarks, VOC
Design involves enumeration of potential solutions and selection
of the best
Optimize performance by using advanced statistical modeling and
simulation techniques and design refinements
Validate that design works in accordance to the process goals

Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Parameters

Quality Assurance

Quality Control

QC is a set of activities for ensuring


QA is a set of activities for ensuring
quality in products. The activities focus
Definition quality in the processes by which
on identifying defects in the actual
products are developed.
products produced.

QA aims to prevent defects with a


QC aims to identify (and correct)
focus on the process used to make
Focus on
defects in the finished product. Quality
the product. It is a proactive quality
control, therefore, is a reactive process.
process.

Goal

The goal of QA is to improve


The goal of QC is to identify defects
development and test processes so
after a product is developed and before
that defects do not arise when the
it's released.
product is being developed.
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

How

Establish a good quality


management system and the
assessment of its adequacy.
Periodic conformance audits
of the operations of the
system.

Finding & eliminating sources


of quality problems through
tools & equipment so that
customer's requirements are
continually met.

What

Prevention of quality
problems through planned and
systematic activities including
documentation.

The activities or techniques used


to achieve and maintain the
product quality, process and
service.

Everyone on the team


Responsi involved in developing the
bility product is responsible for
quality assurance.

Quality control is usually the


responsibility of a specific team
that tests the product for defects.

Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Verification is an example of Validation/Software Testing is


Example
QA
an example of QC

Statistical Tools &


Techniques can be applied in
When statistical tools &
both QA & QC. When they
techniques are applied to
are applied to processes
Statistical
finished products (process
(process inputs & operational
Techniques
outputs), they are called as
parameters), they are called
Statistical Quality Control
Statistical Process Control
(SQC) & comes under QC.
(SPC); & it becomes the part
of QA.

Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

What do you mean by Software Quality Assurance?


Explain various activities involved in SQA process.
Explain Quality Matric.
Explain PDCA Cycle in detail.
Explain Software Process Improvement.
Difference Between Quality Assurance and Quality
Control.
Write Short Notes on:
Maintainability
Software Quality Factor
Six Sigma
SEI-CMM and CMM Stages
Prof. Shailesh T. Gahane, Dr. D Y Patil School of MCA, Pune

Prof. Shailesh T. Gahane


Assistant Professor
Dr. D. Y. Patil School of MCA
Charholi (Bk), Lohegaon, Pune 412105
Mobile No.: +91-9960886053

You might also like