Sei sulla pagina 1di 26

Lec 1.

1: Introduction to
Software Quality
Management

SEN 653&CEN/CSC/CSE-458: Software


Quality Assurance , Testing and
Reliability

By: Nujhat Nahar

Departm Comput
CS Scien
ent of &Engineeri
er
Topic To Be Covered

1.What is Quality ???


2.Why Quality Management
3.What is quality Software ??
4.What is Software Quality
Management & its Objective
5.Main Components of Software
Quality Management
6.Software Quality Management Vs.
Elements
Departm Comput
CS Scien
ent of &Engineeri
er
What does the word “quality” mean to you?

• Think about your past experiences


staying at various hotels. Did you stay
at a “quality” hotel? What about the
experience made it a “quality”
experience for you?

• Think about a product you bought. How


can you define its “quality”?

Departm Comput
CS Scien
ent of &Engineeri
er
Dimensions of Quality
1. Performance:
– Will the product/service do the intended job?
2. Reliability:
– How often does the product/service fail?
3. Durability:
– How long does the product/service last?
4. Serviceability:
– How easy to repair the product / to solve the
problems in service?

Garvin (1987)
Departm Comput
CS Scien
ent of &Engineeri
er
Dimensions of Quality Con

5. Aesthetics:
– What does the product/service
look/smell/sound/feel like?
6. Features:
– What does the product do/ service give?
7. Perceived Quality:
– What is the reputation of the company or its
products/services?
8. Conformance to Standards:
– Is the product/service made exactly as the
designer/standard intended?
Garvin (1987)
Departm Comput
CS Scien
ent of &Engineeri
er
Quality in different areas of
society
Area Examples
Airline On-time, comfortable, low-cost service
Health Care Correct diagnosis, minimum wait time, lower
Food Services cost,
Good security
product, fast delivery, good environment
Postal Services fast delivery, correct delivery, cost containment
Products Properly made, defect-free, cost effective
Insurance Payoff on time, reasonable cost
Automotive Defect-free
Communication Clearer, faster, cheaper service

Departm Comput
CS Scien
ent of &Engineeri
er
What is Quality?According to Different
Quality Guru’s
• Conformance to specifications
– British Defense Industries Quality Assurance Panel
• Conformance to requirements
– Philip Crosby
• Fitness for purpose or use
– Juran
• A predictable degree of uniformity and
dependability, at low cost and suited to the market
– Edward Deming
• Synonymous with customer needs and
expectations
– R J Mortiboys
• Meeting the (stated) requirements of the customer-
now and in the future
– Mike Robinson

Departm Comput
CS Scien
ent of &Engineeri
er
What is
Quality? According to Different
Standard’s

• “The degree to which a system, component, or process


meets
(1) specified requirements, &
(2) customer or users needs or expectations”
– IEEE
• The totality of features and characteristics of a product
or service that bears on its ability to satisfy stated or
implied needs”
– ISO
8402

• Degree to which a set of inherent characteristics fulfils


requirements
Departm Comput
CS Scien
ent of &Engineeri
er
Why Quality ??
Quality management is a recent phenomenon but important for any
organization. It is important for all organization /supplier
/Civilizations that supplies/sells products and provide services allows
their clients to choose products meeting higher quality standards
rather than normal goods and also try to provide them quality full
services .

Quality management ensures that an organization, product or


service is consistent to achieve the highest customer satisfaction .
It has four main components:
1) Quality planning
2) Quality assurance
3) Quality control
4) Quality improvement.

Quality management is focused not only on product and service


quality, but also on the means to achieve it. Quality management,
therefore, uses quality assurance and control of processes as well as
products
DepartmtoComput
achieve more
SENconsistent quality.

CS
545: Software Engineering
Scien
ent of &Engineeri
er Concepts
What is Quality Software?
Quality software is reasonably bug or defect free,
delivered on time and within budget, meets
requirements and/or expectations, and is maintainable

Key aspects of quality for the software customer


includes:
• Good design – looks and style
• Good functionality – it does the job well
• Reliable – acceptable level of breakdowns or
failure
• Consistency
• Durable – lasts as long as it should
• Good after sales service
• Value for money
Departm Comput
CS
SEN 545: Software Engineering
Scien
ent of &Engineeri
er Concepts
What is Software Quality Management

 Software Quality Management is a


process that ensures the required
level of software quality is
achieved when it reaches to the
users, so that they are satisfied by
its performance.
 Involves the definition of
appropriate quality standards and
procedures to ensure that these
standards are followed
 Works best when a ‘quality culture’
is created where quality if seen as
everyone’s responsibility
Departm Comput
CS
SEN 545: Software Engineering
Scien
ent of &Engineeri
er Concepts
Components of Software Quality
Management
This Entire Software Quality Management process
involves 3 Components

Quality
Management

Quality Quality Quality


Planning Assurance Control

Criteria Prevention Inspection


driven driven driven

Departm Comput
CS Scien
ent of &Engineeri
er
Quality Management Components

Quality Quality Quality Control


Planning Assurance
• It identifies the • Setting up adequate • Making sure that
standards and processes, the product
determines how to introducing the corresponds to the
standards of quality
satisfy those to prevent the errors requirements and
standards. and flaws in the specs before it is
• It lays out the product released
entire planning , • Periodic review to • Review work
resources, roles ensure aligning with products and test
and the quality standards. the software
responsibilities, An assessment will • Detecting and
schedules , be provided here.
• Planned and solving software
activities , errors and flaws
systematic quality
procedures, and activities • Work Products:
processes to be • Work Production : Test case , defect
utilized for quality Company Process, log, review log
control and quality Standards , Audit etc.
assurance. Plan , Schedule ,
Departm Comput
CS
• Work Product:
Scien
ent of &Engineeri
er
report,
Software Quality Management Vs
Elements Matrix
Element Quality Quality Quality Control
s Planning Assurance
Focus Organizational Process and Product as a
goal, Quality Audits whole and its
initiatives work products
and source code
What Planning & Prevention Validation ,
Forecasting Verification and
detection
Who Quality Manager , Process Technical leads,
Project Managers Engineers, Quality Subject matter
Managers , experts , Test
Auditors manager and
testers,
When Throughout the Throughout the Before Release at
project life cycle project life cycle the review and
testing phase

Departm Comput
CS Scien
ent of &Engineeri
er
What to Achieve?
• Rework reduction
• Wastage reduction
• Productivity improvement
• Unplanned work reduction
• Cost reduction
• Quality improvement
• Predictability improvement

Departm Comput
CS Scien
ent of &Engineeri
er
How to Achieve?
• Defect prevention
• Early detection and fixation
• Employee turn over impact reduction
• Communication and coordination need as
well as complexity reduction

Departm Comput
CS Scien
ent of &Engineeri
er
Questions?
• How much defect prevention is good enough?
• How much early detection is acceptable?
• Is defect prevention always cheaper than
detection at later stage?
• Where is the trade off line between prevention
and early detection?
• Does quality assurance have the risk of
increasing the cost of delivery?

Departm Comput
CS Scien
ent of &Engineeri
er
Quality Management Planning

• Quality Concepts
- Quality
- Quality Control
- Quality Assurance
- Cost of Quality
• Software Quality Assurance
• Software Reviews
• Formal Technical Reviews
- The Review Meeting
- Review Reporting and Record Keeping
- Review Guidelines
• Formal Approaches to SQA
• Statistical Quality Assurance
• Software Reliability
• The SQA Plan

Departm Comput
CS Scien
ent of &Engineeri
er
Quality
Concepts
Software quality assurance is an umbrella activity that is applied throughout the software
process.

SQA encompasses:
(1) a quality management approach
(2) effective software engineering technology
(3) formal technical reviews
(4) a multi-tiered testing strategy
(5) document change control
(6) software development standard and its control procedure
(7) measurement and reporting mechanism

Quality  refers to measurable characteristics of a software.


These items can be compared based on a given standard

Two types of quality control:


• Quality design  the characteristics that designers specify for an item.
 includes: requirements, specifications, and the design of the system.
• Quality of conformance  the degree to which the design specification are followed. It
focuses on implementation based on the design.

Departm Comput
CS Scien
ent of &Engineeri
er
Cost of Quality
• Cost of quality --> includes all costs incurred in the pursuit of quality
or perform quality related work

• Quality cost includes:


- prevention cost:
- quality planning
- formal technical reviews
- testing equipment
- training
- appraisal cost:
- in-process and inter-process inspection
- equipment calibration and maintenance
- testing
- failure cost:
internal failure cost:
- rework, repair, and failure mode analysis
external failure cost:
- complaint resolution
- product return and replacement
- help line support
- warranty work
Departm Comput
CS Scien
ent of &Engineeri
er
Quality Control

• What is quality control  the series of inspections, reviews, and test used
throughout the develop cycle of a software product
• Goal minimize the produced defects, increase the product quality

• Implementation approaches:
• Fully automated
• Entirely manual
• Combination of automated tools and human interactions

• Key concept of quality control:


• compare the work products with the specified and measurable
standards

Departm Comput
CS Scien
ent of &Engineeri
er
Software Quality
Assurance
• Quality assurance consists of:
- the auditing and reporting function of management

• Objective --> provide management with the necessary data about product quality.
--> gain the insight and confidence of product quality

• Goal: to achieve high-quality software product



• Implementation approaches:
- Entirely manual
- Combination of tools and human interactions

• Three import Key Concept points for quality Assurance :


- Use Organizational Process and user requirement as the foundation
- Use specified standards as the criteria
- Considering implicit requirements

Departm Comput
CS Scien
ent of &Engineeri
er
SQA Group
• Who involves quality assurance activities?
• Software engineers, project managers, customers, sale people, SQA group

• Engineers involved the quality assurance work:


- apply technical methods and measures
- conduct formal technical review
- perform well-planned software testing

• The SQA group’s role -> serves as the customer’s in-house representative
assist the software engineering team in achieving high-quality

• The SQA group’s responsibility:


- quality assurance planning oversight, record keeping, analysis and reporting

• The SQA group’s tasks:


- Prepare a SQA plan for a project
- Participate in the development of the project’s software process description
- Review engineering activities to verify compliance with the defined process
- Audits designated software work products to verify compliance the defined process
- Ensure the deviations in software work and products according to a documented procedure
- Records any noncompliance and reports to senior management

Departm Comput
CS Scien
ent of &Engineeri
er
Software
• What is software reviews?
Reviews
- a “filter” for the software engineering process.

• Purpose: serves to uncover errors in analysis, design, coding, and testing.

• Why software reviews?


- To err is human
- Easy to catch the errors in engineers’ work

• A review --> a way to


- identify the needed improvements of the parts in a product
- confirm the improvement parts of a product.
- achieve technical work of more uniform, predicable, and manageable.

• Different types of reviews:


- Informal reviews:
informal meeting and informal desk checking
- Formal reviews: (design to an audience of customers, management, and staff)
Walkthrough, inspection, and round-robin reviews

• The terms “defect” and “fault” are synonymous


 quality problems found after software release

• Software “error” refers to a quality problem found b y engineers before software release

Departm Comput
CS Scien
ent of &Engineeri
er
Formal Technical Reviews
(FTR)
• Objectives of FTR:
- to uncover errors in function, logic, or implementation
- to verify the software under review meets its requirements
- to ensure that the software has been represented according to predefined
standards
- to develop software in a uniform manner
- to make projects more manageable

• Purposes of FTR:
- serves as a training ground for junior engineers
- promote backup and continuity

• Review meeting’s constraints:


- 3-5 people involved in a review
- advanced preparation (no more than 2 hours for each person)
- the duration of the review meeting should be less than 2 hours
- focus on a specific part of a software product

• People involved in a review meeting:


- producer, review leader, 2 or 3 reviewers (one of them is recorder)

Departm Comput
CS Scien
ent of &Engineeri
er
Thank You

Departm Comput
CS Scien
ent of &Engineeri
er

Potrebbero piacerti anche