Download as pdf or txt
Download as pdf or txt
You are on page 1of 17

Software Engineering College of Arts, Media and Technology ,CMU.

Kittitouch

Quality Factor The need for comprehensive software quality requirements

Classifications of software requirements into software quality factors  McCall’s factor

model

The various attributes of software and its use and maintenance, as defined in software

requirements documents ,can be classified into content groups called quality factors.

There is a need for a comprehensive definition of requirements that will cover all

attributes of software and aspects of the use of software, including usability aspects,

reusability aspects, maintainability aspects, and so forth in order to assure the full

satisfaction of the users.

McCall’s factor model  Product operation factors: Correctness, Reliability, Efficiency,

Integrity, Usability.  Product revision factors: Maintainability, Flexibility, Testability. 

Product transition factors: Portability, Reusability, Interoperability.

McCall’s factor model  Product operation factors: Correctness, Reliability, Efficiency,

Integrity, Usability.

Reliability requirements deal with failures to provide service. They determine the

maximum allowed software system failure rate, and can refer to the entire system or to

one or more of its separate functions.

Correctness requirements are defined in a list of the software system’s required outputs.

▪ ▪ ▪ ▪ ▪ ▪ The output mission Accuracy of output Completeness of the output information

Up-to-date of the information Availability of the information The standard for coding and

documenting of software system


Integrity requirements deal with the software system security, that is, requirements to

prevent access to unauthorized persons, to distinguish between the majority of

personnel allowed to see the information (“read permit”) and a limited group who will be

allowed to add and change data (“write permit”), and so forth.

Efficiency requirements deal with the hardware resources needed to perform all the

functions of the software system in conformance to all other requirements. The main

hardware resources to be considered are the computer’s processing capabilities

(measured in MIPS – million instructions per second ,etc.)

Usability requirements deal with the scope of staff resources needed to train a new

employee and to operate the software system. End of 3-1

McCall’s factor model  Product revision factors: Maintainability, Flexibility, Testability.

Maintainability requirements determine the efforts that will be needed by users and

maintenance personnel to identify the reasons for software failures, to correct the

failures, and to verify the success of the corrections. This factor’s requirements refer to

the modular structure of software, the internal program documentation, and the

programmer’s manual, among other items.

The capabilities and efforts required to support adaptive maintenance activities are

covered by the flexibility requirements. These include the resources(i.e. in man-days)

required to adapt a software package to a variety of customers of the same trade, of

various extents of activities, of different ranges of products and so on. This factor’s

requirements also support perfective maintenance activities.

Testability requirements deal with the testing of an information system as well as with its

operation. Testability requirements for the ease of testing are related to special features
in the programs that help the tester, for instance by providing predefined intermediate

results and log files.

McCall’s factor model  Product transition factors: Portability, Reusability,

Interoperability.

Portability requirements tend to the adaptation of a software system to other

environments consisting of different hardware, different operating systems.

Reusability requirements deal with the use of software modules originally designed for

one project in a new software project currently being developed.

Interoperability requirements focus on creating interfaces with other software systems or

with other equipment firmware (for example, the firmware of the production machinery

and testing equipment interfaces with the production control software).  Interoperability

requirements can specify the name(s) of the software or firmware for which interface is

required. They can also specify the output structure accepted as standard in a specific

industry or applications area.

Some quality factors not included in the typical client’s requirements document may, in

many cases, interest the developer. The following list of quality factors usually interest

the developer whereas they may raise very little interest on the part of the client: 

Portability  Reusability  Verifiability

quality factors is examined by design reviews, software inspections, software tests, and

so forth. Comprehensive discussions of design reviews, software testing, software

quality metrics and other tools for verifying and validating the quality of software are

provided in the balance of this book.


Chapter 3:Daniel Galin. SOFTWARE QUALITY ASSURANCE From theory to

implementation. Pearson Education Limited,2004.

Quality concept

TOTAL QUALITY APPROACH TO QUALITY MANAGEMENT @WisnuDewobroto

TOPICS ➤ What is Quality ➤ The Total Quality approach defined ➤ Two views of

Quality ➤ Key Elements of Total Quality ➤ Total Quality Pioneers ➤ Key to Total

Quality Success ➤ The Future of Quality Management in the twenty - First century

TOTAL QUALITY CONCEPT

WHAT IS QUALITY?Lets discuss

WHAT IS QUALITY? One way to understand quality as a consumer driven concept is to

consider the example of eating at a restaurant : Service Response time Food

preparation Environment Price Selection

“Performance to the standard expected by the customer Fred Smith, CEO of Federal

Express

Meeting the customer’s needs the first time and every time The General Service

Administration

“Providing our customers with products and services that consistently meet their needs

and expectations Boeing

“ Edwards Deming

QUALITY DEFINITION EXTRACTED : ➤ Quality involves meeting or exceeding

customer expectation ➤ Quality applies to products, services, people, processes, and


environments ➤ Quality in an ever changing state Quality is a dynamic state associated

with products, services, people, processes, and environments that meets or exceeds

expectations and helps produce superior value

The products, services, people, processes and environments element is critical. It

makes the point that quality applies not just to the products and services provided, but

also to the people and processes that provide them and the environments in which they

are provided.

QUALITY, VALUE AND ORGANIZATIONAL EXCELLENCE ➤ Achieving

organizational excellence is about developing the ability to consistently provide superior

value to customer over the long term. ➤ Superior value has three basic element :

Superior Quality, Superior Cost and Superior Service ➤ Quality is obviously one of the

key elements in providing superior value ➤ TOtal quality is a broad based approach

that encompasses all three of the elements of superior value.

THE TOTAL QUALITY APPROACH DEFINED ➤ Total quality consists of the continual

improvement of people, processes, products (including services) and environments. ➤

With total quality anything and everything that affects quality is a target for continual

improvement. ➤ When the total quality concept is effectively applied, the end result can

include organizational excellence, superior value and global competitiveness.

THREE LEGGED STOOL

TOTAL QUALITY

TWO VIEWS OF QUALITY

TWO VIEWS OF QUALITY


TWO VIEWS OF QUALITY

TWO VIEWS OF QUALITY

TWO VIEWS OF QUALITY

TWO VIEWS OF QUALITY

TWO VIEWS OF QUALITY

TWO VIEWS OF QUALITY

TOTAL QUALITY PIONEERS ➤ EDWARDS DEMING ➤ JOSEPH M JURAN ➤

PHILIP B CROSBY

KEYS TO TOTAL QUALITY SUCCESS

KEYS TO TOTAL QUALITY SUCCESS Organization that succeed never

approach total quality as just another management innovation or, even worse, as

a quick fix. Rather, they approach total quality as a new way of doing business.

COMMON ERROR IN ORGANIZATION ➤ Senior Management delegation and

poor leadership ➤ Team mania : The organization must undergo a cultural

change before team work can succeed ➤ Deployment process : Some

organizations develop quality initiative without concurrently developing plans for

integrating them into all elements of the organization ➤ Taking a narrow,

dogmatic approach ➤ Confusion about the differences among education,

awareness, inspiration and skill building.

SEVERAL TRENDS THAT WILL SHAPE QUALITY ➤ Increasing global

competition ➤ Increasing customer expectation ➤ Opposing economic

pressures ➤ New approaches to management


THE FUTURE OF QUALITY MANAGEMENT IN THE TWENTY FIRST

CENTURY

QUALITY MANAGEMENT CHARACTERISTICS FOR THE FUTURE

Quality Assurance Vs Quality Control

Difference between QA and QC Yogita J. Patil Sr. Software Test Engineer

Quality is an important factor when it comes to any product or service. Therefore, all

manufacturers and service providers out there constantly look for enhancing their

product or the service quality.

In order to maintain or enhance the quality of the offerings, manufacturers use two

techniques, Quality Control and Quality Assurance. These two practices make sure that

the end product or the service meets the quality requirements and standards defined for

the product or the service.

Are QA and QC same terms? 5 Big No, This both the terms are Effectively different.

Most of the time we use both terms randomly, hence to study and understand the

difference between them is important.

Let's differentiate according to below points:  Definition  Focus on  Goal 

How to Achieve  Example  Responsibility


Definition of Quality Assurance Quality Assurance is process oriented and

focuses on defect prevention. Quality Assurance is a set of activities for ensuring

quality in the processes by which products are developed.

Definition of Quality Control Quality Control is product oriented and focuses on

defect identification. Quality Control is a set of activities for ensuring quality in

products. The activities focus on identifying defects in the actual products

produced.

Quality Assurance focuses on Quality Assurance aims to prevent defects with a

focus on the process used to make the product. It is a proactive quality process.

It identifies weakness in processes to improve them.

Quality Control focuses on Quality Control aims to identify and correct defects in

the finished product. It is a reactive process.

Goal of Quality Assurance The goal of Quality Assurance is to improve

development and test processes so that defects do not arise when the product is

being developed.
Goal of Quality Control The goal of Quality Control is to identify defects after a

product is developed and before it's released.

To Achieve QA goals Establish a good quality management system and the

assessment of its adequacy. Periodic conformance audits of the operations of

the system. Prevention of quality problems through planned and systematic

activities including documentation.

To Achieve QC goals Finding & eliminating sources of quality problems through

tools & equipment so that customer's requirements are continually met. The

activities or techniques used to achieve and maintain the product quality, process

and service.

Paper Plane: Fundae Session - Contextual 19 Oct 2011 Inquiry 20

QA - Example 21 Example:  A QA audit  Process documentation 

Establishing standards  Developing checklists  Conducting internal audits

QC - Example Paper Plane: Fundae Session - Contextual 19 Oct 2011 Inquiry 22

Example:  A QC review  Performing inspections  Preforming testing

Responsible for QA Everyone on the team involved in developing the product is

responsible for Quality Assurance.


Responsible for QC Quality Control is usually the responsibility of a specific team

that tests the product for defects.

26

QA and QC 27 Working Together QC detected a recurrent problem with the

quality of the products. QC provides feedback to QA person that there is a

problem in the process or system that is causing product quality problems. QA

determines the root cause of the problem and then brings changes to the

process to ensure that there are no quality issues in future.

Cost of quality

Cost of Quality

Visible and hiddencosts Visible costs •Scrap •Rework •Warranty costs Hidden

Costs • Conversion efficiency of materials • Inadequate resource utilization •

Excessive use of material • Cost of redesign and re-inspection • Cost of resolving

customer problems • Lost customers / Goodwill • High inventory

Categories of Quality Costs Quality Costs Conformance Non-

ConformancePrevention Appraisal Internal failure External failure

Cost of quality Cost of quality = Cost of conformance + Cost of non-

conformance• Cost of conformance is the cost of providing products or services


as per the required standards. This can be termed as good amount spent.

(Prevention & Appraisal costs)• Cost of non-conformance is the failure cost

associated with a process not being operated to the requirements. This can be

termed as unnecessary amount spent.( Internal & External failure costs)

Prevention Costs Prevention costs are associated with design, implementation ,

maintenance, and planning prior to actual operation, in order to avoid defects

from happening. The emphasis is on the prevention of defects in order to reduce

the probability of producing defective products. Prevention activities lead to

reduction of appraisal costs and both type of failures ( internal and external ).The

motto is “Prevention rather than appraisal” . Activities associated withPrevention

costs Market research Quality training programs. Contract review Design review

Field trials Supplier evaluation Process plan review Process capability review

Design and manufacture of jigs and fixtures Preventive checks & maintenance

Appraisal costsAppraisal costs are spent to detect defectsto assure conformance

to quality standards.Appraisal cost activities sums up to the “costof checking if

things are correct”.Theappraisal costs are focused on the discoveryof defects

rather than prevention of defects

Activities associated with AppraisalcostsProto type testingVendor

surveillanceIncoming material inspectionProcess inspection/controlFinal

inspectionLaboratory testing / measurementDepreciation cost for

measuringQuality audits.
Internal failure costsInternal failure costs occurs when results of work fail to

reachdesignated quality standards , and are detected before transfer tothe

customer takes place.

ExamplesInternal failure costsDesign changes/ corrective actionScrap due to

design changesExcess inventoryRectification / reject disposition ofpurchased

materialRework/rejection in manufacturingDowngrading of end productDowntime

of plant & machineryTrouble-shooting & investigation ofdefects

External failure costsExternal failure costs occur when the product or service

from aprocess fails to reach designated quality standards , and is notdetected

until after transfer to the customer.

Activities associated with External failure costs Processing / investigation of

customer complaint Repair/replacement of sold goods Warranty claims Product

liability & litigation costs Interest charges on delayed payment due to quality

problems Loss of customer goodwill & sales.

Size of four categories of quality costs.The organizations which do not follow

TQM,there is less emphasis onprevention and their main quality efforts are on

appraisal with verylittle control on internal and external failure costs.Various

studies have shown that quality cost in manufacturingcompanies the world over

range from 20 % to 30 % of turnover and inthe case of service companies it can

go up to 40 % as illustrated ingraph on the next slide.

Size of various quality cost elements 10-15%Quality costs in % of sales 10-12%

The total quality costs 25-35 % of turnover. 4-6% 1% Preventive Appraisal

Internal External Failure Failure


Impact of TQM on costs.TQM is primarily aimed to improve the quality of the

product , highercustomer satisfaction and better working environment for

theemployees. The most dramatic impact of TQM is on reduction ofquality costs

which directly effect the profitability .This is demonstrated by the results of TQM

program in Xerox Corp .The change in various elements of quality cost before

and afterlaunching TQM by Xerox Corp is shown on the next slide.

Impact of TQM on costs. An example from Xerox Corp. 35 30 25 Internal% of

sales Failure 20 15 Internal Failure 10 Appraisal Appraisal 5 Prevention

prevention 0 Before TQM After TQM

1-10-100 Rule Cost of rectifying defect 1 Prevention Rs RsStages 10 Correction

Rs Rs R Rs s 100 Failure Rs Rs Rs Rs

cost of qualityTraditionally recorded quality cost generally account for only4 to 5

percent of sales which mainly comprise of cost ofscrap, re-work and warranty.

Hidden costs of qualityThere are additional costs of quality which are hidden and

do notappear in the account books of the company, as they are intangibleand

difficult to measure. These additional costs could be as high as20-25% of sales.

Visible and hiddencosts Visible costs •Scrap •Rework •Warranty costs Hidden

Costs • Conversion efficiency of materials • Inadequate resource utilization •

Excessive use of material • Cost of redesign and re-inspection • Cost of resolving

customer problems • Lost customers / Goodwill • High inventory

Appraisal Cost- spent to detect defects

Visible Costs

- Scrap
- Rework

- Warranty Costs

Hidden Costs

- Conversion efficiency

- Inadequate resource utilization

- Excessive use of material

- Cost of redesign and re-inspection

- Cost of resolving customer problems

- Lost of customers / Goodwill

- High Inventory

Prevention Cost -associated with design

Quality- intended while satisfying customer expectation

Defects - anything that renders the product not...

Quality Control - managing quality of the software

Quality Assurance - set of methods use to verify

Conformance - Prevention and appraisal

non-comformance - internal and external failure

Measures:

*statistical process control

*Benchmarking

*Qualitytools
people

*quality built

*quality inspected, not inspected

*employees are empowered

Process

*Continual improvement

*Good enough

6 Methodologies

Systems Development Life Cycle (SDLC) gives structure to the challenges of

transitioning from the beginning to the end of your project without forgetting a step.

Waterfall is the oldest and most straightforward of the structured SDLC methodologies

— finish one phase, then move on to the next. No going back. Each stage relies on

information from the previous stage and has its own project plan. Waterfall is easy to

understand and simple to manage.

V-Shaped Model

Also known as the Verification and Validation model,

the V-shaped model grew out of Waterfall and is characterized

by a corresponding testing phase for each development stage.


Like Waterfall, each stage begins only after the previous one has ended.

Iterative Model

The Iterative model is repetition incarnate. Instead

of starting with fully known requirements, you implement

a set of software requirements, then test, evaluate and

pinpoint further requirements. A new version of the software

is produced with each phase, or iteration. Rinse and repeat

until the complete system is ready.

Spiral Model

One of the most flexible SDLC methodologies, the S

piral model takes a cue from the Iterative model and its

repetition; the project passes through four phases over

and over in a “spiral” until completed, allowing for

multiple rounds of refinement.

Big Bang Model

A bit of an anomaly among SDLC methodologies,

the Big Bang model follows no specific process,

and very little time is spent on planning. The

majority of resources are thrown toward development,

and even the client may not have a solid grasp of


the requirements. This is one of the SDLC methodologies

typically used for small projects with only one or two software engineers.

Agile Model

By breaking the product into cycles, the Agile model

quickly delivers a working product and is considered

a very realistic development approach. The model

produces ongoing releases, each with small, incremental

changes from the previous release. At each iteration,

the product is tested.

You might also like