Transcript pps
Slide 1
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 2
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 3
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 4
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 5
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 6
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 7
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 8
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 9
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 10
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 11
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 12
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 13
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 14
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 15
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 16
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 17
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 18
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 19
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 20
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 21
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 22
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 23
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 24
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 25
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 26
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 27
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 28
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 29
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 30
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 31
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 32
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 33
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 34
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 35
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 36
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 37
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 38
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 39
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 40
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 41
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 42
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 2
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 3
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 4
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 5
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 6
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 7
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 8
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 9
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 10
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 11
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 12
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 13
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 14
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 15
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 16
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 17
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 18
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 19
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 20
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 21
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 22
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 23
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 24
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 25
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 26
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 27
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 28
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 29
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 30
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 31
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 32
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 33
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 34
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 35
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 36
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 37
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 38
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 39
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 40
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 41
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing
Slide 42
Software Quality Assurance
What is Quality?
Popular Views about Quality:
–
–
–
quality related to luxury, class and taste
quality is related to quality of life.
I know about quality when I see the product.
Professional Views about Quality:
–
–
Conformance to requirements.
Fitness for use.
2
Two aspects of Software Quality
“q” – Intrinsic product quality, often limited to
defect rate and reliability.
“Q” – Customer Satisfaction, often includes
product quality and process quality.
3
Role of Customer
Customers don’t buy products, they buy
assurances that their expectations with the
products would met.
You also, can only sell assurances – in other
words, Quality.
Customer is in absolute position to judge the
quality.
4
Software Quality
Software quality is defined as the quality that ensures
customer satisfaction by offering all the customer
deliverables on performance , standards and ease of
operations.
Quality Assurance
Quality assurance is a system of activities
designed to ensure production that meets
pre-established requirements and standards.
6
Software Quality Assurance
What is “quality”?
IEEE Glossary: Degree to which a system, component, or
process meets (1) specified requirements, and (2) customer
or user needs or expectations
ISO: the totality of features and characteristics of a product
or service that bear on its ability to satisfy specified or
implied needs
Quality Control
What is quality control -- the series of inspections, reviews,
and test used throughout the develop cycle of a software
product
Quality control includes a feedback loop to the process.
Objective ---> minimize the produced defects, increase the
product quality
Key concept of quality control:
--> compare the work products with the specified and
measurable standards
Cost of Quality
Cost of quality -->Quality is produced at cost. The cost of
quality includes all costs incurred in the process of creation
, generation , control and maintenance of quality or
perform quality related work
Quality cost includes:
- Prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training to personnel
What is Software Quality Assurance (SQA)?
“Set of systematic activities providing evidence of
the ability of the software process to produce a
software product that is fit to use”
What is SQA?
Monitoring the processes
– Provides management with objective feedback regarding
process compliance to approved plans, procedures,
standards, and analysis
What is SQA?
Monitoring the products
– Focus on the quality of product within each phase of
the SDLC
e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout the
lifecycle, as early as possible
Quality Standards Organizations
Quality assurance systems help organization ensure that
their deliverables meet customer requirements. They
encompass a wide variety of tasks during a product’s
lifecycle, which includes planning,controlling,testing, and
developing the quality process.
There are various quality assurance standards , which
ensure that the product developed is effective and
reusable.
Some of the significant quality standards are described
below:
Standard Definition
“Standard is a published specification that establishes a
common language, and contains a technical specification
or other precise criteria and is designed to be used
consistently, as a rule, a guideline, or a definition”.
Objectives of Software Quality
Assurance
Only Quality Control (testing) is not enough:
–
–
What would you do if your software does not pass
the QC test?
QC is a reactive approach, not proactive one.
Quality Assurance includes Proactive as well
as Reactive approaches.
15
Measuring Software Quality
Usually recognized in the form of bugs or defects.
– Defect rate (defect/KLOC or defects/FP)
– Reliability (Failure free operation)
IBM monitors CUPRIMDSO – Capability
(Functionality), Usability, Performance, Reliability,
Installability, Maintainability, Documentation,
Service, & Overall.
HP monitors FURPS – Functionality, Usability,
Reliability, Performance & Service.
16
Purpose of SQA Activities
Practically, zero defect product is not
possible to achieve.
The purpose of quality assurance practices
are to minimize the number of defects.
How much efforts are needed to minimize
the number of defects?
–
–
are you developing a customized project or
product?
how critical your application is?
17
Developer to Tester Ratio
There is no standard developer to tester ratio
in IT industry.
However, industry does have some norms:
–
–
For customized projects, ratio must be at least 3:1
For products, ratio can be as high as 1:3
18
Organizational Positioning of SQA
(Observed)
CEO
Development
Manager
HR
Manager
SQA
Manager
Project
Manager 1
SCM
Manager
Project
Manager 2
Admin
Manager
19
Organizational Positioning of
SQA (Recommended)
CEO
Admin
Manager
Development
Manager
SQA
Manager
SCM
Manager
Support
Manager
Project
Manager 1
Project
Manager 2
20
Top Management Support to SQA
Department
Proper staffing and hiring
Separate budget for payroll and running expenses
Separate capital budget
Test facilities and environment
Trust and confidence
Authority
•
•
•
Don’t force to close defects
Don’t force to sign acceptance
Act as an arbitrator for the conflicts between QA/Dev.
21
SQA Responsibilities for a Project
Review of documents developed by development
team.
Track the compliance with standards.
Development of QA Plan (test plan + test cases).
Implementation of test cases (Black Box or Glass
Box Testing).
Management of bug repository.
Participating in code and design reviews.
22
SQA Responsibilities for a Project
(cont...)
Typical SDLC phases and relevant Artifacts
SQA Responsibilities
Requirements Collection
Requirement Specs
Reviews
Analysis
Functional Specs
Reviews
Architecture & Design
Design Specs
Reviews
Development
Code & Executables
Implement
Test Cases
Testing
Deployment
Deployment Docs
Review
23
SQA Artifacts for a Project
Dev. Artifacts
SQA Artifacts
Requirement Specs
RS Reviews
Functional Specs
FS Reviews
SQA Artifacts
(more)
Test Plan
Design Specs
DS Reviews
Test Cases
Code & Executables
Bug Reports
More Test Cases
Deployment Docs
DD Reviews
24
Communication Between SQA and
Development
Development
Development
SQA
SQA
SCM
25
Responsibilities of Testing Team
Responsibilities of a tester
•
•
•
Design test cases
Write test scripts
Implement test cases
Responsibility of SQA manager
•
•
•
Give 25% time for reviewing test cases written
Lead review meetings
Resolve conflicts
26
Other Responsibilities of SQA
Participate in product and process audits.
Initiate and participate in developing
standards.
Develop SQA’s own standards, processes
and checklists.
27
An Effective Testing Team
SQA Team should be composed of:
–
–
–
–
Members with different background
Members from different domains
Technical gurus and user representatives
Members with more analytical abilities.
28
Characteristics of Good SQA
Engineer
Experience & Education as a programmer or analyst.
A thick skin.
Good sense of humor.
Tolerance for disorder.
Firmness.
Evidence oriented.
Logical.
Honest.
Self sufficient.
29
History of ISO
ISO, founded in 1947, is a worldwide federation of
national standards bodies from some 100 countries, with
one standards body representing each member country.
Member organizations collaborate in the development and
promotion of international standards.
Overview
ISO (International Organization for Standardization) is
the world's largest developer and publisher of
International Standards.
ISO is a network of the national standards institutes of
over 160 countries
Scope
ISO has more than 16500 International Standards and
other types of normative documents
ISO's work program ranges from standards for
traditional activities, such as agriculture and
construction, through mechanical engineering,
manufacturing and distribution etc.
Description about member countries of
ISO
ISO has three membership categories:
Member bodies:
Be the most representative standards body in each country
These are the only members of ISO that have voting rights.
Description about member countries of
ISO (Count.)
Correspondent members: These countries do not
follow ISO standards and they also do not have their own
standards organizations e.g. Afghanistan.
Subscriber members: Countries having small
economies. They pay reduced membership fees, but can
follow the development of standards.
History
The Institute of Electrical and Electronics Engineers or IEEE
(read eye-triple-e) is an international non-profit, professional
organization for the advancement of technology related to
electricity. It has the most members of any technical professional
organization in the world, with more than 370,000 members in
around 160 countries.
History Cont.
The IEEE formed in 1963 with the merger of
AIEE (American Institute of Electrical Engineers, formed in
1884),
IRE (Institute of Radio Engineers, formed in 1912).
IEEE From its earliest origins, has
Advanced the theory and application of electrot echnology and
allied sciences
Served as a catalyst for technological innovation;
and supported the needs of its members through a wide variety
of programs and services.
History Cont.
AIEE, IRE Merge to form IEEE
In 1961, the leadership of both the IRE and the AIEE
sought to resolve these difficulties through consolidation.
A merger plan was formulated and approved, becoming
effective on 1 January 1963.
Microsoft Solution Framework
(MSF)
MSF is a flexible, interrelated series of models that can guide
an organization through assembling the resources, people,
and techniques needed to bring technology infrastructure in
line with business objectives.
MSF Models
MSF consists of two models
1. MSF two Models
2. MSF Process/Governance Models
1. MSF Team Model
This describes the role of various team
members in a software development project.
The team model roles are:
Product Management: Mainly deals with
customers and define project requirements,
also ensures customer expectations are met.
Program Management: Maintains project
development and delivery to the customer
1. MSF Team Model
Architecture: Responsible for solution design,
making sure the solution design optimally satisfies all
needs and expectations
Development: Develops according to the
specifications.
Test: Tests and assures product quality
Release/Operations: Ensures smooth deployment
and operations of the software
User Experience: Supports issues of the users.
Process Model:
Process model defined order of activities related to the project
and represent life cycle of project.
There are four phases in the process model:
1. Envisioning
2. Planning
3. Developing
4. Stabilizing