You are on page 1of 20

QUALITY OF SOFTWARE

SUBMITED BY
ACHIN
PARA
SHRUTI
SHOBHIT
VANDNA
DEFINING SOFTWARE QUALITY
Quality software is fairly bug-free,
delivered on time and within budget,
meets requirements and/or
expectations, and is maintainable.
However, quality is obviously a
subjective term.
TERMS TO BE FOCUS ON FOR
EACH QUALITY
• Scale
• Test
• Worst
• Plan
• Now
PLACE OF SOFTWARE QUALITY
IN
PROJECT PLANNING
0. SELECT PROJECT

1. IDENTIFY 2. INDENTIFY
PROJECT SCOPE PROJECT
AND OBJECTIVES INFRASTRUCTURE

3. ANALYSE
PROJECT
CHARACTERISTICS

4. IDENTIFY THE
PRODUCTS AND
ACTIVITIES
REVIEW
5. ESTIMATE
EFFORT FOR
ACTIVITY
FOR
LOWER EACH
LEVEL 6. IDENTIFY ACTIVITY
DETAIL ACTIVITY RISKS

10. LOWER LEVEL 7. ALLOCATE


PLANNING RESOURCES

9. EXECUTE PLAN 8. REVIEW/


PUBLICIZE PLAN
IMPORTANCE
OF
SOFTWARE QUALITY
• INCREASING CRITICALITY OF SOFTWARE
• THE INTANGIBILITY OF SOFTWARE
• ACCUMULATING ERRORS DURING SOTWARE
DEVELOPMENT
SOFTWARE QUALITY FACTORS
OR
SOFTWARE QUALITY ATTRIBUTES
• McCall Model
He grouped software qualities into three sets of quality
factors
1. PROJECT OPERATION QUALITY FACTORS
- CORRECTNESS
- RELIABILITY
- EFFICIENCY
- INTEGRITY
- USABILITY
2. PRODUCT REVISION QUALITY FACTORS
- MAINTAINABILITY
- TESTABILITY
- FLEXIBILITY

3. PRODUCT TRANSITION QUALITY FACTORS


- PORTABILITY
- REUSABILITY
- INTEROPERABILITY
• Boehm Model
Barry W Boehm also defined a hierarchical model of
software quality characteristics, in trying to qualitatively
define as a set attributes and metrics (measurements).
He identified seven quality factors, namely
- PORTABILITY
- RELIABILITY
- EFFICIENCY
- USABILITY
- TESTABILITY
- UNDERSTANDABILITY
- FLEXIBLITY
• Capability Maturity Model (CMM)
- The Capability Maturity Model is a methodology used to
develop and refine an organization’s software
development process.
- In the United States, an influential CMM has been
developed at the Software Engineering Institute (SEI),
a part of the Carnegie- Mellon University.
- Founded in 1984.
- Levels of CMM
Level 1: Initial
Level 2: Repeatable
Level 3: Defined
Level 4: Managed
Level 5: Optimizing
CONTINOUSLY
IMPROVING
PROCESS

PREDICTABLE 5
PROCESS
STANDARD,
CONSISTEN 4
T PROCESS
3

DISPLICED
PROCESS 2

CAPABILITY MATURITY MODEL


CMM Key Process Areas
Level Key Process Areas
1. Initial Not applicable
2. Repeatable Configuration management
Quality assurance
Sub-contract management
Project tracking and oversight
Project planning
3. Defined Peer reviews
Inter-group coordination
Software product engineering
Integrated s/w mgmt
Training programee
Organization process definition
& focus
4. Managed Quality mgmt
Process measurement and
analysis
5. Optimizing Process change mgmt
technology innovation
defect prevention
• ISO 9126 Model
ISO 9126 standard was published in 1991 to tackle the
question of the definition of software quality.
ISO 9126 identifies 6 software quality characteristics:
- Functionality
- Reliability
- Usability
- Efficiency
- Maintainability
- Portability
DISASTER DUE TO LACK OF
SOFTWARE QUALITY
1.  Mariner Bugs Out (1962)
Disaster:  The Mariner 1 rocket with a
space probe headed for Venus diverted
from its intended flight path shortly after
launch.  Mission Control destroyed the
rocket 293 seconds after liftoff.
Cause:  A programmer incorrectly
transcribed a handwritten formula into
computer code, missing a single
superscript bar. 
2.  Hartford Coliseum
Collapse (1978)
Disaster:  Just hours after thousands of fans
had left the Hartford Coliseum, the steel-
latticed roof collapsed under the weight of
wet snow

Cause:  The programmer of the CAD


software used to design the coliseum
incorrectly assumed the steel roof supports
would only face pure compression
3.  CIA Gives the Soviets
Gas (1982)
Disaster:  Control software went haywire and
produced intense pressure in the Trans-
Siberian gas pipeline, resulting in the largest
man-made non-nuclear explosion in Earth’s
history.

Cause:  CIA operatives allegedly planted a


bug in a Canadian computer system
purchased by the Soviets to control their
gas pipelines.
4.  Medical Machine Kills (1985)
Disaster:  Canada’s Therac-25 radiation
therapy machine malfunctioned and
delivered lethal radiation doses to
patients.

Cause:  Because of a subtle bug called


a race condition, a technician could
accidentally configure Therac-25 so the
electron beam would fire in high-power
mode without the proper patient
shielding
5.  World War III… Almost (1983)

Disaster:  The Soviet early warning


system falsely indicated the United States
had launched five ballistic missiles. 
Fortunately the Soviet duty officer had a
“funny feeling in my gut” and reasoned if
the U.S. was really attacking they would
launch more than five missiles, so he
reported the apparent attack as a false
alarm.
Cause:  A bug in the Soviet software
failed to filter out false missile detections
caused by sunlight reflecting off cloud-
tops.
TECHNIQUES TO ENHANCE
SOFTWARE QUALITY
• INCREASING VISIBILITY
• PROCEDURAL STRUCTURE
• CHECKING INTERMEDIATE STAGES
• INSPECTION

You might also like