Lesson 9
Lesson 9
pecified standards define a set of development criteria that guide the manner in
which software is engineered.
If the criteria are not met, lack of quality will almost surely result.
roject-specific policies, procedures and standards must be tailored from the organization-wide
templates.
uality must be controlled; that is, the organization must ensure that the appropriate procedures are
followed for each project
Standards exist to help an organization draft an appropriate software quality assurance plan.
SO 9000-3
NSI/IEEE standards
External entities can be contracted to verify that an organization is standard-compliant.
A Software Quality Plan
ISO
ISO9000
9000
model
model
Organization
Organization
quality
qualityplan
plan
Project
ProjectAA Project
ProjectBB Project
ProjectCC
quality
qualityplan
plan quality
qualityplan
plan quality
qualityplan
plan
o help the analyst achieve a high quality specification and a high quality design
stylized meeting conducted by technical staff with the sole purpose of uncovering quality problems
Testing Software
series of test case design methods that help ensure effective error detection
Enforcing standards
Controlling change
Measurement
rack software quality and asses the ability of methodological and procedural changes to improve software quality
onfirm those parts of a product in which improvement is either not desired or not needed
chieve technical work of more uniform, or at least more predictable, quality than what can be
achieved without reviews, in order to make technical work more manageable
Quality reviews can have different intents:
3-6x
Code Code
Code Review
10x Test
Testing Review
Testing
15-70x Customer
Maintenance Feedback
Maintenance
40-1000x
[Adapted from Pressman 4th Ed]
Cost Impact of Software
Defects
Errors from
Previous
Steps
Errors
Passed to
Next Step
116
To integration
testing...
Defect Amplification (cont’d)
94
Integration Testing
94
94
0 0 50%
47
Validation
0 47 Testing
47
0 0 50%
24
94 System Testing
0 24
24
0 12
47 0 50%
0
24
Latent Errors
Review Checklist for Systems
Engineering
Are major functions defined in a bounded and unambiguous fashion?
Are interfaces between system elements defined?
Are performance bounds established for the system as a whole and for each
element?
Are design constraints established for each element?
Has the best alternative been selected?
Is the solution technologically feasible?
Has a mechanism for system validation and verification been established?
Is there consistency among all system elements?
ncover errors in function, logic, or implementation for any representation of the software
ssure that the software has been represented according to predefined standards
alkthroughs
nspections
ound-robin reviews
dvance preparation should occur, but should involve no more that 2 hours of work for each person
eview leader - Appointed by the project leader; evaluates the product for readiness, generates
copies of product materials, and distributes them to 2 or 3 reviewers
eviewers - Spend between 1 and 2 hours reviewing the product, making notes, and otherwise
becoming familiar with the work
ecorder - The individual who records (in writing) all important issues raised during the review
Review Reporting and
Recordkeeping
Review Summary Report
ho reviewed it?
erve as an action item checklist that guides the producer as corrections are made
Guidelines for FTR
Review the product, not the producer
Set an agenda and maintain it
Limit debate and rebuttal
Enunciate the problem areas, but don’t attempt to solve every problem that is noted
Take written notes
Limit the number of participants and insist upon advance preparation
Develop a checklist for each product that is likely to be reviewed
Allocate resources and time schedules for FTRs
Conduct meaningful training for all reviewers
Review your earlier reviews (if any)
Reviewer’s Preparation
Be sure that you understand the context of the material
Skim all product material to understand the location and the
format of information
Read the product material and annotate a hardcopy
Pose your written comments as questions
Avoid issues of style
Inform the review leader if you cannot prepare
Results of the Review Meeting
All attendees of the FTR must make a decision
ccept the product without further modification
eject the product due to severe errors (and perform another review after
corrections have been made)
ot an objective measure
ust consider that there are widely varying consequences for different errors
IO Mapping
Subset of inputs
Input
InputSet
Set causing erroneous
outputs
Software
Software
Output
OutputSet
Set
Erroneous
outputs
Input Set
User A Erroneous
Inputs Inputs
User B User C
Inputs Inputs