unit1. introduction and history of quality - ocw...

36
Software Quality Unit1. Introduction and History of Quality

Upload: truongkhue

Post on 07-Mar-2018

214 views

Category:

Documents


1 download

TRANSCRIPT

Software Quality

Unit1. Introduction and

History of Quality

Just a few of History

• Craftsmanship (products are very appreciated by

clients).

• Trades (specializations, market control).

• Industrial Revolution (technical specializations,

measuring, standardization).

• Taylorism (scientific work organization, functions

division: planning and execution).

• Quality Engineering (complexity and production

growing).

2 Software Quality

MVP in Quality History

JOSEPH JURAN (1904- 2008)

Father of quality

• Quality is freedom for failures and deficiencies • delay on: delivering, service failures, etc.

• wrong invoices,

• contract cancellations, …

• is cost-oriented and consists of freedom from failures and deficiencies; in this sense, higher quality usually costs less

3 Software Quality

MVP in Quality History

JOSEPH JURAN (1904- 2008)

Father of quality

• Quality: product adaptation to use. • is income-oriented, and consists of those features of

the product which meet customer needs and thereby produce income; in this sense, higher quality usually costs more.

4 Software Quality

JURAN Trilogy

• Quality Planning: to provide production

medias to create products which can

meet customer’s needs.

• Quality Control: to define metrics and to

measure.

• Quality Improvement: to optimize

products and processes.

5 Software Quality

KAORU ISHIKAWA (1915- 1989)

Father of total quality.

(cost-effect diagram)

• Total quality is achieved when you get an useful and cheep product which met consumer’s needs.

MVP in Quality History

6 Software Quality

ISHIKAWA’s keys

• Quality starts and ends with education.

• First step in quality is to know client requirements.

• Quality ideal state is achieved when inspection is not

needed anymore.

• You have to remove problem’s root, not symptoms.

• Every worker is responsible for quality control.

• Quality is first and then profits.

7 Software Quality

PHILIP B. CROSBY (1926-2001)

Zero defects

• Total quality is requirements

accomplishment, where system is

prevention, standard is zero defects and

measure is the price of non-conformance.

MVP in Quality History

8 Software Quality

CROSBY’s steps(1)

1. Make it clear that management is committed to quality

2. Form quality improvement teams with representatives from each department

3. Determine how to measure where current and potential quality problems exist

4. Evaluate the cost of quality and explain its use as a management tool

5. Raise the quality awareness and personal concern of all employees

6. Take formal actions to correct problems identified through previous steps

7. Establish a committee for the zero defects program

9 Software Quality

CROSBY’s steps(2)

8. Train all employees to actively carry out their part of the quality improvement program

9. Hold a “zero defects day” to let all employees realize there has been a change

10. Encourage individuals to establish improvement goals for themselves and their groups

11. Encourage employees to communicate to management the obstacles they face in attaining their improvement

12. Recognize and appreciate those who participate

13. Establish quality councils to communicate on a regular basis

14. Do it all over again to emphasize that the quality improvement program never ends

10 Software Quality

Crosby’s absolutes

• Quality means conformance to requirements –if you

intend to do it right the first time, then everyone must

know what it is

• Quality comes from prevention. Vaccination is the way

to prevent organizational disease. Prevention comes

from training, discipline, example, leadership, and so

forth.

• Quality performance standard is zero defects –errors

should not be tolerated

• •Quality measurement is the price of nonconformance

11 Software Quality

MVP in Quality History

SHIGEO SHINGO (1909-1990)

POKA-YOKE Systems (to avoid

(yokeru) errors without intention

(poka))

•To make human error impossible

•To highlight errors

12 Software Quality

Others Quality definitions

• Requirements conformity and functional confiability

(Deming).

• The totality of features and characteristics of a product or

service that bears on its ability to satisfy given needs (ISO).

• “An effective system for integrating the quality

maintenance and quality improvement efforts of the

various sectors of an organization so as to enable

marketing, engineering, production, and service at the most

economic levels which will allow for full customer

satisfaction.” (Feingenbaun, Deming & Juran).

13 Software Quality

Quality’s views

• Based on user (to fit the purpose)

• Based on manufacturer (to fulfill

requirements).

• Based on the product (economic)

• Based on the value (cheap price)

• Transcendental (innate excellence)

14 Software Quality

Quality management

Programmed

Quality

(Organization)

Obtained Quality

(Material &

Human Resources)

Needed

Quality

(Customer)

Expected

Quality

15 Software Quality

Quality elements

Key elements in quality management are:

• Good practices: Methodology, processes

under control to analyze and to optimize.

• People: Plans developers and plans

executors.

• Tools: Which helps in quality management.

• Metrics and measures: Data to evaluate and

to improve processes. 16 Software Quality

Quality advantages

• Reducing deadlines.

• Reducing costs.

• Reducing defects.

• Increasing customer satisfaction.

• Increasing productivity and profits.

17 Software Quality

Software features

• It is abstract.

• It is developed, not manufactured.

• Cost are about design, not about production.

• Fault function is different, time doesn’t it

worse.

• Complex maintenance.

• It is supposed to be easy to make changes.

• Software with errors is not rejected. 18 Software Quality

Software quality

Three different levels:

• Software product level.

• Project level, quality should be present at every phase during development.

• Process level, to manage every organization process.

19 Software Quality

Quality management

PROJECT MANAGEMENT

PRODUCT MANAGEMENT

PROCESS MANAGEMEN

CMMI SPICE

Integration

Manag.

Scope

Manag.

Time

Manag.

HHRR

Manag.

Communication

Manag. Quality

Manag.

Costs

Manag.

Risk

Manag.

Logistic

Manag.

Safety Testing

To prove

safety

Problems

diagnostic

To plan

safety Adjustment

Performance Testing

Assessment Problems

diagnostic

To plan

capacity Adjustment

Functional Testing

To automate

cases of use

To execute

testing

scenarios

Testing

Plan

To analyze defect

reports

Requirement Manag.

Business Requirement

Testing

strategy

Cases of

use

Testing Requirement

20 Software Quality

Environment for Quality

Management

Reports & Analysis

Quality

Objectives

Testing

Development

Requirement

Management

Testing

Execution

Testing

Strategy

Defects

Management

Testing files

Management

Deliveries

Management

Support and environment management

Environment

Management

Shared

services

Tools

Management

21 Software Quality

Product Quality

• Reliability.

• Functionality.

• Usability.

• Efficiency.

• Maintainability.

• Portability.

22 Software Quality

Quality during the Development

Process

• Systematic series of actions leading to reach

an objective.

• It should be oriented, be capable of and

legitimate.

• It must be well planed.

• Planning have to provide every needed

resource to reach objectives.

23 Software Quality

Immature Organization

• Reactionary (to immediate problems).

• Processes specification (poor and without rigor).

• Project management (improvised, individual level).

• Product quality (sacrificed many times).

• Product or process evaluation (subjective).

• Successful projects (by heroes). 24 Software Quality

Mature Organization

• Well communicated and processes are planed.

• Roles and responsibilities well defined at levels of project and organization.

• Change adaptation (market and technology).

• Quality and customer satisfaction (with processes and products).

• Heroes mobility (they can transfer their experiences).

25 Software Quality

What to do? To commit to Quality

How? To promote a cultural change

companywide

Standards

UNE

EN

ISO

Normas

AENOR Asociación

Española de Normalización y

Certificación

CEN European Committee

Standardization

ISO International

Standard Organization

Organization

Spanish

European

International

SCOPE

27 Software Quality

(ISO 8402:1994) Terminology

Quality management and quality assurance –

vocabulary

Quality management system [Wikipedia]

http://www.iso.org/iso/iso_catalogue/catalogue_ics/catalogue_detail_ics.htm?csnumber=20115

•This standard is a revision of ISO 8402:1986

•It has been also revised by ISO 9000:2000

28 Software Quality

ISO 8402 - Terminology

Quality: “Set of features and characteristic of a

product or service that bears on its ability to

satisfy stated or implied needs”.

Quality control: “Set of operational techniques

and activities to fulfill requirements of quality”. (see definitions in standard)

29 Software Quality

ISO 8402 - Terminology

Quality guarantee: “Set of systematic and

planned actions needed to provide that a

product or service will fulfill the given

quality requirements”.

30 Software Quality

ISO 8402 - Terminology

Quality management: … “Aspect of management

function, which determines and applies quality

police, objectives and responsibilities, and they

are performed by quality planning, quality

control, quality assurance and quality

improvement”.

31 Software Quality

ISO 8402 - Terminology

Quality management system: “System

including organizational structure,

responsibilities, procedures, processes and

resources needed to implement quality

management”.

32 Software Quality

Software quality

Software quality is the grade in which a system, compound or process fulfills its requirements and the needs of a customer or user”

(IEEE, Std. 610-1990). IEEE Standard Glossary of Software Engineering Terminology

33 Software Quality

QC vs. QA

Quality Control (QC)

• Reactive.

• Product oriented.

• Control team responsibility.

• Verify present features.

Reviews

Inspections

Tests

Quality Assurance (QA)

• Preventive y Proactive.

• Process oriented.

• Organization responsibility.

• Identify weakness of processes.

Auditory

Definitions

Training

34 Software Quality

Quality

improvement

Quality

control

Quality guaranty

Total Quality

time

Defects detection

Defects prevention

Continuous improvement

Quality evolution

35 Software Quality

Quality evolution

Quality

Control

Inspection techniques during

production to avoid faulty

goods.

• To satisfy technical

requirement of a

product.

Quality

Guaranty

Organizational systems and

procedures to avoid faulty

goods production.

• Customer satisfaction.

• Error prevention.

• Cost reduction.

• To be competitive.

Total Quality

Business administration theory

focused on the permanent

satisfaction of customer

expectations.

• To satisfy external and

internal customer.

• To be highly

competitive.

• Continuous

improvement.

36 Software Quality