inspections : a flexible method to increase software quality
DESCRIPTION
Inspections : A Flexible Method to Increase Software Quality. By Sylvie Trudel CRIM [email protected]. CUSEC, Concordia University March 2002. Presentation Objectives. Provide a level of awareness on inspection practices in the software industry - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/1.jpg)
Inspections :Inspections :A Flexible Method to Increase A Flexible Method to Increase
Software QualitySoftware Quality
By Sylvie [email protected]
CUSEC, Concordia UniversityMarch 2002
![Page 2: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/2.jpg)
2
Presentation ObjectivesPresentation Objectives
Provide a level of awareness on inspection practices in the software industry
Demonstrate flexibilty in a formal technical review method
![Page 3: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/3.jpg)
3
AgendaAgenda History Why Inspect ? Inspection Objectives Inspection Method Quality Assurance And Managers Role Return On Investment Leverage and Barriers
![Page 4: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/4.jpg)
4
HistoryHistory
Created in the late 60’s (IBM) Published by Fagan in the 70’s Many methods developed over the last 10
years : We will show an adaptation of Tom Gilb and
Dorothy Graham’s work Deployed and optimized over 2000 software
inspections
![Page 5: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/5.jpg)
5
Why Inspect ?Why Inspect ? Quality : Find and correct defects
Productivity : reduce time-to-market
Efficiency : Correct defects at their point of origin
Cost : up to 1,000 times cheaper to correct an error
during analysis than during test up to 40,000 times if the defect is correct before
deployment!
![Page 6: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/6.jpg)
6
Inspection ObjectivesInspection Objectives
Find and fix defects Help the developer Reduce time-to-market Alleviate the « downstream » effect of defects Train team members (knowledge transfer) Process improvement And many more!
![Page 7: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/7.jpg)
7
Inspection Is Not...Inspection Is Not... Design Optimization Quality of design approval Level of ambition approval A discussion forum A bureaucratic routine! IT IS:
Inner consistency checking of all related documents, by peers
Verifying against defined best practices (rules, checklists)
Only done if measurably profitable
![Page 8: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/8.jpg)
8
Inspection Context Inspection Context
Inspection Process (documented)
Author
Productconsidered
ready to inspect
Sources(Physical,electronic,
or references)
Trained Inspectors
Inspection Leader
1. P
lan
2. O
pen
3. In
spec
t
4. E
xpla
in
5. E
dit
6. V
erify
7. C
lose
Roles ChecklistsRules
InspectionDatabase
InspectionForm
ProcessImprovementSuggestions
Re-inspection required
DefectsNoted
Entry/ExitCriteria
![Page 9: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/9.jpg)
9
SourcesInspection Process : Detailed ViewInspection Process : Detailed View
1. Plan the Inspection
2. Open the inspection
3. Inspect the product
4. Explain issues found
5. Edit the product
6. Verify corrections
7. Close the inspection
Not Ready
Corrections not accepted
Author
Ready
Corrections accepted
ProcessImprovementSuggestions
Productconsidered ready
to inspect
InspectionDatabase
Rules
Roles
Checklists
InspectionForm
Product(Updated)
Product(Defects noted)
Entry/ExitCriteria
![Page 10: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/10.jpg)
10
Inspecting: The Key PointsInspecting: The Key Points 2 to 5 inspectors :
at least 2 different roles the author cannot be the inspection leader the author can be an inspector with at least 2
other inspectors Inspect slowly to find more important defects :
3 to 5 pages/hour for most documents up to 20 pages/hour for code (~1,000 LOC)
Attitude, attitude, attitude! Respect, professionalism, minded to help the
author, aim for excellence, give/share/receive
![Page 11: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/11.jpg)
11
Inspection Rules : Some ExamplesInspection Rules : Some Examples
Generic Complete Clear Consistent Correct Brief Relevant
Design Loose coupling High cohesion
Requirements Testable High-level Elementary
Code Confined Complexity Style
![Page 12: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/12.jpg)
12
Most Common Inspector RolesMost Common Inspector Roles
Logic Requirements User interface
Usability Consistency
Standards Quality
Design Coupling Cohesion
Rules Algorithm Graphics Financial
![Page 13: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/13.jpg)
13
Quality Assurance RoleQuality Assurance Role Audit inspection process usage Inspect with a role such as « standard » or
« quality » Show « due diligence »
Have its own documents inspected
![Page 14: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/14.jpg)
14
Manager RoleManager Role Support inspection process usage Provide resources NEVER ask for individual inspection results Show « due diligence »
Have its own documents inspected Show enthusiasm on positive results Sanction the “outlaws” Do not inspect subordonate’s work
unless they insist
![Page 15: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/15.jpg)
15
Return On InvestistmentReturn On Investistment Ratio of rework saved by inspection hour :
According to Gilb 9.3 : 1 According to an IBM study 18 : 1
Account for : Cost of quality (inspection effort) Cost of non-quality Corollaries (hard to put numbers on)
More performant software development teams (better productivity through enhanced communication)
Organization’s reputation
![Page 16: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/16.jpg)
16
LeverageLeverage
Positive attitude towards quality Willingness to improve at all levels Customer or contractual requirements Working climate that promotes :
respect excellence innovation
![Page 17: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/17.jpg)
17
BarriersBarriers
Lack of resources Previous bad experience A blame culture Big egos, prima donna behaviours Opinion leaders who reject any process
![Page 18: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/18.jpg)
18
You certainly have questions ?You certainly have questions ?
Lets inspect!
![Page 19: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/19.jpg)
19
ReferencesReferences
Tom Gilb and Dorothy Graham, Software inspections, Addison-Wesley, 1993
Tom Gilb, Document Inspection Team Leader Course material, version 8.21, 1996
Roger S. Pressman, Software Engineering: A practitioner’s Approach, 5th édition, McGraw-Hill, 2001
Partick D’Astous, Les aspects de l’échange d’information dans un processus de génie logiciel, École Polytechnique de Montréal, 1996
Karl E. Wiegers, Software Requirements, Microsoft Press, 2000
![Page 20: Inspections : A Flexible Method to Increase Software Quality](https://reader035.vdocuments.us/reader035/viewer/2022062323/56815bda550346895dc9cab3/html5/thumbnails/20.jpg)
20
ContactContact
Sylvie Trudel
Software Engineering Specialist
(514) 840-1235 ext. 4562
CRIM Software Test Centerwww.crim.ca