0% found this document useful (0 votes)
7 views107 pages

Qe Unit 1

The document outlines the course SCSA3002 on Quality Engineering, detailing its objectives, outcomes, and syllabus. It covers software quality definitions, engineering activities, quality assurance tools, and models, emphasizing the importance of quality management systems and continuous improvement. The course aims to equip students with knowledge and skills in software quality factors, testing strategies, and quality assurance standards.

Uploaded by

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

Qe Unit 1

The document outlines the course SCSA3002 on Quality Engineering, detailing its objectives, outcomes, and syllabus. It covers software quality definitions, engineering activities, quality assurance tools, and models, emphasizing the importance of quality management systems and continuous improvement. The course aims to equip students with knowledge and skills in software quality factors, testing strategies, and quality assurance standards.

Uploaded by

G.Akshaya
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

SCSA3002

QUALITY ENGINEERING

Prof. Dr. R. Aroul canessane,


CSE, Sathyabama Institute of Science
and Technology, Chennai.
COURSE OBJECTIVES

➢ To define quality assurance plans.


➢ To apply quality assurance tools and techniques.
➢ To understand the Clean Room Software
Engineering activities.
➢ To implement the tools for quality.
➢ To learn quality assurance models.
Course outcome
CO1 - Learn software quality factors.
CO2 - Apply common software testing strategies.
CO3 - Demonstrate about the project process control
and software Metrics.
CO4 - Implement all the common software testing
strategies.
CO5 - Understand the SQA standards and Software
process assessments.
CO6 - Deploy quality engineering models in projects

2
SYLLABUS - SCSA3002
UNIT 1 SOFTWARE QUALITY
Definition of Software Quality, Quality Planning, Quality system
– Quality Control Vs Quality Assurance – Product life cycle –
Project life cycle models. The Software Quality Challenge -
Software Quality Factors - Components of the Software Quality
Assurance System. Pre-Project Software Quality Components -
Contract Review - Development and Quality Plans.

UNIT 2 SOFTWARE ENGINEERING ACTIVITIES


Estimation, Software requirements gathering, Analysis,
Architecture, Design, development, Testing and Maintenance.

UNIT 3 SUPPORTING QUALITY ACTIVITIES Metrics,


Reviews –SCM – Software quality assurance and risk
management
UNIT 4 SOFTWARE QUALITY ENGINEERING TOOLS AND
TECHNIQUES
Seven basic Quality tools – Checklist – Pareto diagram – Cause
and effect diagram – Run chart –Histogram – Control chart –
Scatter diagram – Poka Yoke – Statistical process control –
Failure Mode and Effect Analysis – Quality Function deployment
– Continuous improvement tools – Case study.

UNIT 5 QUALITY ASSURANCE MODELS


Software Quality Standards, ISO 9000 series – CMM, CMMI – P-
CMM – Six Sigma – Malcolm Baldrige Quality - Case study.
Organization of this
Lecture:

Introduction Quality Engineering.


Quality control and Quality
Assurance

5
Software Quality

Conformance to explicitly stated functional


and performance requirements,
 explicitly documented development
standards and
implicit characteristics that are expected of all
professionally develop software
Introduction

Traditional definition of
quality:
fitness of purpose,a quality
product does exactly what the
users want it to do.

9
Fitness of purpose

For software products,


fitness of purpose:
satisfaction of the
requirements specified in SRS
document.

10
Fitness of purpose

A satisfactory definition of
quality for many products: a car,
a table fan, a food mixer,
microwave oven, etc.
But, not satisfactory for
software products.
11
Introduction
Consider a software product:
functionally correct, i.e.
performs all functions as specified in
the SRS document,
but has an almost unusable
user interface. cannot be
considered as a quality product.
12
Introduction

Another example:
a product which does
everything that users want.
but has an almost
incomprehensible and
unmaintainable code.
13
Modern view of quality

Associates several quality factors with


a software product :
Correctness
Reliability
Efficiency (includes efficiency of resource utilization)
Portability
Usability
Reusability
Maintainability 12
Correctness

A software product is
correct,
if different requirements as
specified in the SRS document
have been correctly
implemented.
Accuracy of results. 15
Portability

A software product is said to be


portable,
if it can be easily made to work in
different operating systems,
in different machines,
with other software products, etc.

16
Reusability

A software product has good


reusability,
if different modules of the
product can easily be reused to
develop new products.

17
Usability

A software product has good


usability,
if different categories of users (i.e.
both expert and novice users) can
easily invoke the functions of the
product.

18
Maintainability

A software product is maintainable,


if errors can be easily corrected as and
when they show up,
new functions can be easily added to
the product,
functionalities of the product can be
easily modified, etc.

19
Software Quality
Management System

Quality management system


(or quality system):
principal methodology used by
organizations to ensure that the
products have desired
quality.
20
Software quality

Is achieved through a disciplined approach -


called software engineering SE
Can be defined, described, and measured
Can be assessed before any code has been
written
Cannot be tested into a product

21
Software quality challenges

Defining it
Describing it (qualitatively)
Measuring it (quantitatively)
Achieving it (technically)

22
Quality system

A quality system consists of the


following:
Managerial Structure
Individual Responsibilities.
Responsibility of the
organization as a whole.
23
Quality system

Every quality conscious organization has


an independent quality department:
performs several quality system activities.
needs support of top management.
Without support at a high level in a
company,
many employees may not take the quality
system seriously.

24
Quality System Activities:
Auditing of projects
Development of:
standards, procedures, and guidelines,
etc.
Production of reports for the
top management
summarizing the effectiveness of the
quality system in the organization.
 Review of the quality system
itself. 25
Quality system

A good quality system must be well


documented.
Without a properly documented quality
system,
application of quality procedures become ad
hoc,
results in large variations in the quality of
the products delivered.
26
Quality system

An undocumented quality system:


sends clear messages to the staff about the
attitude of the organization towards quality
assurance.
International standards such as ISO
9000 provide:
 guidance on how to organize a quality
system.

27
Evolution of Quality
Systems

Quality systems have evolved:


over the last five decades.
Prior to World War II,
way to produce quality products:
inspect the finished products
eliminate defective products.

28
Software Quality Factors
(by McCall)

Product Revision (changing it)


Flexibility (can I change it?)
Maintainability (can I fix it?)
Testability (can I test it?)

29
Software Quality Factors
(by McCall) contd.

Product Transition (modifying it to


work in a different environment)
 Interoperability (Will I be able to
interface it with another system?)
Portability (Will I be able to use it on
another machine?)
Reusability (Will I be able to reuse
some of the software?)
30
Software Quality Factors
(by McCall) contd.
Product Operations (using it)
 Correctness (Does it do what I want?)
Reliability (Does it do it accurately all of the
time?)
Efficiency (Will it run on my hardware
as well as it can?)
Integrity (Is it secure?)

31
Evolution of Quality
Systems

Since that time,


quality systems of
organizations have undergone
four stages of evolution.

32
Evolution of Quality
Systems

33
Evolution of Quality
Systems

Initial product inspection method :


gave way to quality control (QC).
Quality control:
not only detect the defective products
and eliminate them
but also determine the causes behind the
defects.

34
Quality control (QC)

Quality control aims at correcting


the causes of errors:
not just rejecting defective products.
Statistical quality control
quality of the output of the process is
inferred using statistical methods
in stead of inspection or testing of all
products
35
Quality control (QC)

The next breakthrough,


development of quality assurance
principles

36
Quality assurance

Basic premise of modern quality


assurance:
if an organization's processes are
good and are followed rigorously,
the products are bound to be of good
quality.

37
Quality assurance

All modern quality paradigms


include:
guidance for recognizing,
defining, analyzing, and improving
the production process.

38
Total quality management
(TQM)

Advocates:
continuous process
improvements through process
measurements.

39
SQA Activities

Quality assurance planning


Data gathering on key quality defining
parameters
Data analysis and reporting
Quality control mechanisms

40
Software Defects
The causes for not meeting the quality commonly
are
 Imprecise requirement and software specifications
 Lack of understanding of customer requirements
 International deviations
 Violation of standards (Design, Programming)
 Erroneous data representation
 Improper interface
 Faulty logic in rules and processes
 Erroneous testing
 Incomplete and defective documentation
 H&S platforms not coping up to required standards
 Lack of domain knowledge
41
The nature of failure may be such
that one error may require only a
few repair, and other may need
hours.

A simple measure of reliability is Mean


Time between Failure (MTBF).
MTBF = MTTF + MTTR
Where MTTF is Mean Time to Failure and
MTTR is Mean Time to Repair.

42
SQA Components - SIX

43
SQA Components – contd.
1. Pre-project Components
❖Resources available
❖Budget
❖Contract review
2. Project Lifecycle Activities and Assessment
Development Lifecycle

❖formal design
❖expert opinion
❖software testing 42
-contd

3. Infrastructure components for error


prevention and Improvement
❖Procedures and Work Instructions
❖Supporting Quality Devices
❖Staff Training, Instruction and
Certification
❖Preventive and Corrective Actions
❖Documentation Control
45
- contd

4. Software Quality Management


5. SQA Standards, System Certification, and
Assessment Components
6. Organizing for SQA – The Human
Components

46
Business Process
reengineering

A term related to TQM.


Process reengineering goes a
step further than quality
assurance:
aims at continuous process
improvement.
47
Business Process
reengineering
• Our focus is reengineering of
the software process.
• Whereas BPR aims at
reengineering the way business
is carried out in any organization
• not just software development
organizations.
48
Total quality management
(TQM)

TQM goes beyond documenting


processes
optimizes them through redesign.
Over the years the quality paradigm
has shifted:
from product assurance to process
assurance.
49
How to Design and Implement
a Basic Quality Assurance Plan

. Design a means to effectively


document quality-related events (QREs)
and educate staff appropriately
root cause(s) for previous errors.
educate staff on documented QREs and their
resulting plans
errors reported to the Board due to poor
customer service

50
-contd
Identify one or two quality related
parameters you would like to measure
and improve.
Areas known to require improvement
Areas expected to be satisfactory (strengths)

51
-contd

Design a method to measure the


identified areas
Focus on quantitative measures that can show
clear results
Utilize your computer system’s capabilities
where appropriate
Consider a method that can be done
consistently as part of normal procedures

52
-contd

Set appropriate goals


Determine what is acceptable for your
practice
Set an attainable goal and be prepared to
update the goal when it is achieved.

53
-contd

Be prepared to make new plans when


goals are not met
Set a deadline for when unmet goals will be
addressed
Be prepared to change policies or procedures in
order to improve areas of deficiency

54
-contd

Educate your staff on the Quality


Assurance Plan, both at inception and
at regular intervals.
Why it is being done
What is being tracked
How to perform measurements
Progress in areas being monitored

55
-contd

Quality assurance never ends


Continue to update your plan as necessary.
Over time, the entire prescription process can be
monitored and improved.

56
Project Management
Some more terms…….

Project life cycle


Phases of a project
Phase exits or stage gates
Stakeholders
Project Life Cycle

Project management is about acquiring or


achieving the project goal

Most projects need to be broken down into a


logical sequence of ‘phases’, known as the project
life cycle.
Phases of a Project

Organisations normally break a project


down into several project phases for
better management control
Collectively, the project phases are known
How do you
as the project life cycle eat an
Each project phase is marked by the elephant?

completion of one or more


deliverables.
Stage Gates

Each phase ends with a review of the


deliverables and performance in order to
detect and correct errors and to decide if
the project should continue into the next
phase.
The phase end reviews are often called phase
exits or stage gates.
4 Phases of a Project

project initiation
project planning
project execution and control
project closure

Collectively these four phases represent the


‘project life cycle.’
4 Phases of a Project

Project Project Project Project


Initiation Planning execution closing
and control
Scope WBS Network Hand over
identification OBS diagrams Commission
Team set up Scheduling Reporting
Project
definition

Project life cycle


Project Life Cycle

Cost and staffing level

Initiation Planning Execution and control Closing

time
Project Life Cycle - Ideal v
Typical

Cost and staffing level

Initiation Planning Execution and control Closing

time
Exercise

What does the chart tell you about typical v


ideal project life cycle?
Answer

Many projects don’t get adequate resources in the


early stages
Low resourcing in the planning stage results in
delays in completing the project on time, to the
right quality and within the budget

Cost and staffing level

Initiation Planning Execution and control Closing

time
Allocation of time and
money…….
10% Initiation 20% Initiation

Planning Planning
25% 30%

60% Implementation 40% Implementation

5% 10% Closing
Closing

Typical Successful projects


Sydney Opera House
Good or bad project?
Sydney Opera House
Planned - 1959 to 1963 (4 years)
- $7 million
Actual - 1959 to 1973 (14 years)
- $100 million
Project Life Cycle (PLC) as a
Tool
PLC is a management tool to make it easier to
manage the project sequence
The choice of phases vary from industry to industry
and the PLC will vary to suit the needs of the
participants
Different project managers choose different PLC’s,
depending on the nature of the task i.e.
Engineering, software development etc.
Project Life Cycle (PLC) Uses

To maintain an overview of the project


To help identify tasks
Break the project into manageable parts
Integrate activities (bite sized chunks)
To help with the timing of decisions (go/no go)
To guide the level of contingency needed
Common characteristics of PLCs

Cost and staff levels low in early phases of the project


Probability of failure, risk and uncertainty are highest in the
early phases
Ability of stakeholders to influence the outcome of the
project are highest at the beginning of the project
Although many projects have similar phase names, with
similar work requirements, few are identical
Sub-projects within a project also have distinct project life
cycles
The Project Management
Dilemma
Managing stakeholders expectations can be
difficult because of the sometimes widely different
objectives of the various groups of stakeholders
Your understanding of the project needs to match stakeholders’ understanding.
Dr. Jana Jagodick
Work to make sure it is what you end up with!
Polytechnic of Namibia,
Common characteristics of PLCs

•Cost and staff levels low in early phases of the project


•Probability of failure, risk and uncertainty are highest in the
early phases
•Ability of stakeholders to influence the outcome of the
project are highest at the beginning of the project
•Although many projects have similar phase names, with
similar work requirements, few are identical
•Sub-projects within a project also have distinct project life
cycles

Dr. Jana Jagodick


Polytechnic of Namibia,
Goals of the project

Goal is the desired result of an activity,


which may be achieved within the limits
of a certain time interval.
Needs
Objective necessity
Wishes
Ideas

Aims (results)

What? How?

Aims (actions)

What? Who? With whom? When? With what?

How much is it?

Project execution

Fig. 1.5. Determination of project goals


Gold rule of project
management

Goals must have a clear


meaning. The results obtained in
achieving a goal must be measurable,
and the established constraints and
requirements, must be feasible, that is,
goals must be within the field of
acceptable solutions of the project
Determining a goal
Determining the goal is regarded as a
creative process, can be divided into a number
of certain procedures:
•determining the goal indicators,
•determining possible goals of the project,
•describing the goals of the project
Determining the goal indicators can be carried out
on the basis of:
•requirements of the project,
•the goals of the enterprise in which the project is
being executed,
•the study of the enterprise environment
Causes of New Product
Failures

•Overestimation of Market Size


•Product Design Problems
•Product Incorrectly Positioned, Priced or Advertised
•Costs of Product Development
•Competitive Actions

To create successful new products, the company


must:
understand it’s customers, markets and competitors
develop products that deliver superior value to customers.
New Product Development
Process

•Idea Generation and Screening


•Concept Development and Testing
•Marketing Strategy
•Business Analysis
•Product Development
•Test Marketing
•Commercialization
New Product Development Process
Step 1. Idea Generation

Systematic Search for New Product


Ideas
•Internal sources
•Customers
•Competitors
•Distributors
•Suppliers
New Product Development Process
Step 2. Idea Screening

Process to spot good ideas and drop poor


ones
Criteria
• Market Size
• Product Price
• Development Time & Costs
• Manufacturing Costs
• Rate of Return
New Product Development Process
Step 3. Concept Development & Testing

1. Develop Product Ideas into


Alternative
Product Concepts

2. Concept Testing - Test the


Product Concepts with Groups
of Target Customers

3. Choose the Best One


New Product Development Process
Step 4. Marketing Strategy Development

Marketing Strategy Statement Formulation

Part One - Overall:


Target Market
Planned Product Positioning
Sales & Profit Goals
Market Share

Part Two - Short-Term:


Product’s Planned Price
Distribution
Marketing Budget

Part Three - Long-Term:


Sales & Profit Goals
Marketing Mix Strategy
New Product Development Process
Step 5. Business Analysis
Step 6. Product Development

Business Analysis

Review of Product Sales, Costs,


and Profits Projections to See if
They Meet Company Objectives

If No, Eliminate
Product Concept

If Yes, Move to
Product Development
New Product Development Process
Step 7. Test Marketing

Standard
Controlled
Test Market
Test Market
Full marketing campaign A few stores that have
in a small number of agreed to carry new
representative cities. products for a fee.

Simulated
Test Market
Test in a simulated
shopping environment
to a sample of
consumers.
Product Life
Cycle
Sales and
Profits ($)

Sales

Profits

Time
Product Introduction Growth Maturity Decline
Develop-
ment

Losses/
Investments ($)
Introduction Stage of
the PLC

Sales Low sales

Costs High cost per customer

Profits Negative
Create product awareness
Marketing Objectives and trial

Product Offer a basic product

Price Use cost-plus

Distribution Build selective distribution

Advertising Build product awareness among early


adopters and dealers
Growth Stage of the PLC

Sales Rapidly rising sales

Costs Average cost per customer

Profits Rising profits

Marketing Objectives Maximize market share


Offer product extensions, service,
Product warranty
Price Price to penetrate market

Distribution Build intensive distribution

Advertising Build awareness and interest in the


mass market
Maturity Stage of the PLC

Sales Peak sales

Costs Low cost per customer

Profits High profits

Marketing Objectives Maximize profit while defending


market share
Product Diversify brand and models

Price Price to match or best competitors

Distribution Build more intensive distribution

Advertising Stress brand differences and benefits


Decline Stage of the PLC

Sales Declining sales

Costs Low cost per customer

Profits Declining profits

Marketing Objectives Reduce expenditure and milk the brand

Product Phase out weak items

Price Cut price


Go selective: phase out unprofitable
Distribution outlets
Advertising Reduce to level needed to retain
hard-core loyal customers
Pre-project SQA components

The SQA components belonging


here are meant to improve the
preparatory steps taken prior to
initiating work on the project itself
Pre-project SQA components
There are two components in
pre-project stage:
Contract reviews: Reviewing the
contract prior to final agreement
Development and quality plans:
Preparation of plans before the actual
work is performed
Pre project component:
Contract Review

Software may be developed within the framework of a


contract negotiated with a customer or in response to an
internal order originating in another department.
Contract review activities must include a detailed
examination of the project proposal draft and the
contract drafts.
Contract review is an important software quality
component because it ensures that we understand
and agree on all project details. It eliminates any
disagreement that might happen between the
project parties
Contract review activities include:
■ Clarification of the customer’s requirements
■ Review of the project’s schedule and resource
requirement estimates
■ Evaluation of the professional staff’s capacity to
carry out the proposed project
■ Evaluation of the customer’s capacity to fulfill his
obligations
■ Evaluation of development risks.
Contract review – a story

A happy gathering of the CFV project team at a popular


restaurant downtown was called to celebrate the
successful completion of a 10-month project for Carnegie
Fruits and Vegetables, a produce wholesaler. The new
information system registers product receipts from
growers, processes clients’ orders and produce shipments
to clients (greengrocers and supermarkets), bills clients,
and calculates payments made to the growers. The team
members were proud to emphasize that the project was
conducted in full as originally scheduled. The team was
especially jubilant as earlier that morning each member
had received a nice bonus for finishing on time.
Contract review – a story

The third speaker, the software company’s Vice President for


Finance, altered the pleasant atmosphere by mentioning that
this very successful project had actually lost about $90 000.
During his remarks, he praised the planners for their good
estimates of the resources needed for the analysis and design
phase, and for the plans for broad reuse of software from
other systems that were, this time, completely realized. “The
only phase where our estimates failed was one of the
project’s final phases, the client’s instruction, that
where
the client’s staff are instructed on how to use the new
information system. It now appears that no one had
read the relevant RFP (requirement for proposal)
section carefully
Contract review – a story

enough. This section stated in a rather innocuous


manner that the personnel in all the CFV branches
where the software was to be installed would be
instructed in its use by the software supplier.”
After a short pause he continued thus: “Nobody
tried to find out how many branches our client
operates. Nobody mentioned that CFV operates 19
branches – six of them overseas – before signing
the contract!”
Contract review – a story

He continued: “We tried to renegotiate the installation and


instruction budget items with the client, but the client insisted
on sticking to the original contract.” Though no names were
mentioned, it was clear that he blamed the sales negotiating
team for the loss.
Contract review is the software quality element that reduces
the probability of such undesirable situations. Contract review
is a requirement by the ISO 9001 standard and ISO 9000-3
Guidelines
Pre project component:
Development and quality
plans
Once a software development contract has been
signed or a commitment made to undertake an
internal project for the benefit of another
department of the organization, a plan is prepared of
the project (“development plan”) and its integrated
quality assurance activities (“quality plan”)
The main issues treated in the project development
plan are:
■ Schedules (What are tasks and how much time
is required)
■ Required manpower and hardware resources
■ Risk evaluations
■ Organizational issues: team members,
subcontractors and partnerships
■ Project methodology, development tools, etc.
■ Software reuse plans.
Software quality plan

A quality plan sets out (within a particular


project) the desired product qualities and how
these are assessed and define the most
significant quality attributes
It should define the quality assessment process
Software quality plan

Software quality plan is a document that describes


the quality activities of a software project that should
be implemented to ensure that the results of the
work performed will satisfy the users and achieve the
required quality.
Software quality plan
Usually a software quality plan includes:

■ Quality goals, expressed in the appropriate


measurable terms
■ Criteria for starting and ending each project stage
■ Lists of reviews, tests, and other scheduled
verification and validation activities.
Software quality plan
More details about how to prepare and implement a
software quality plan will be discussed latter.

You might also like