Date post: | 28-Dec-2015 |
Category: |
Documents |
Upload: | ashlynn-chapman |
View: | 225 times |
Download: | 0 times |
Software InspectionSoftware Inspection
A basic tool for defect removalA basic tool for defect removal Urgent need for QA and removal can Urgent need for QA and removal can
be supported by inspectionbe supported by inspection Various software artifacts available at Various software artifacts available at
the end of the Software development the end of the Software development can only be inspected and not can only be inspected and not tested.tested.
Different degrees of inspection Different degrees of inspection
Generic inspection processGeneric inspection process
Planning and preparationPlanning and preparation
Goals and objectivesGoals and objectives
Software artifacts to be inspectedSoftware artifacts to be inspected
Who are performing inspectionsWho are performing inspections
Who else need to be involvedWho else need to be involved
What are the process , techniques and What are the process , techniques and follow-up activitiesfollow-up activities
Inspection or collectionInspection or collection
Corresponds to the execution of QA Corresponds to the execution of QA activitiesactivities
Inspection meetingInspection meeting Focus on identifying faults in the Focus on identifying faults in the
software artifactssoftware artifacts Record the inspection resultsRecord the inspection results
Correction and follow upCorrection and follow up
Faults to be correctedFaults to be corrected Design or code owner need to fix the Design or code owner need to fix the
design or codedesign or code Follow up activity to verify the fixFollow up activity to verify the fix Close interaction between inspection Close interaction between inspection
technique and the inspection technique and the inspection process.process.
Informal desk checks, Informal desk checks, reviews, and walkthroughsreviews, and walkthroughs
Informal desk checks refers to informal Informal desk checks refers to informal check and inspection of technical check and inspection of technical documents produced by oneself.documents produced by oneself.
Reviews refer to informal check or Reviews refer to informal check or inspection of technical documents inspection of technical documents produced by someone else.produced by someone else.
Focus should be on logical and Focus should be on logical and technical problemstechnical problems
Defect Detection Defect Detection TechniquesTechniques
Checklist based defect detectionChecklist based defect detection
Checklist for major features and functionsChecklist for major features and functions
In requirement and specification inspections.In requirement and specification inspections.
Component in design inspections , data Component in design inspections , data structures and data definitions.structures and data definitions.
Property based checklistProperty based checklist
Checklist for coding style and standard , Checklist for coding style and standard , conformance to development methodologies , conformance to development methodologies , coupling between different modulescoupling between different modules
INSPECTIONSINSPECTIONS
Quality improvement & cost reduction Quality improvement & cost reduction technique.technique.
Design & code inspectionsDesign & code inspections
Cost effectiveness of the programCost effectiveness of the program
Fundamental Process and the requirement Fundamental Process and the requirement for inspectionsfor inspections
INSPECTION PROCESSINSPECTION PROCESS
Primary PurposePrimary Purpose::1.Identify potential defects during 1.Identify potential defects during
preparation & validate .preparation & validate .2.Validate the fact that identified items are 2.Validate the fact that identified items are
actual defects.actual defects.3.Record the existence of the defect.3.Record the existence of the defect.4.Provide the record to the developer to use 4.Provide the record to the developer to use
in making fixesin making fixes
SECONDARY PURPOSESECONDARY PURPOSE
1.To provide traceability of requirements to 1.To provide traceability of requirements to design.design.
2.To provide sound base for the next phase2.To provide sound base for the next phase
3 To Increase programming quality.3 To Increase programming quality.
4.To Increase product quality.4.To Increase product quality.
5.Lower life cycle cost.5.Lower life cycle cost.
6.To provide feel of program maintainability6.To provide feel of program maintainability
INSPECTION PHASESINSPECTION PHASES
PlanningPlanning
The moderator is responsible for the entire The moderator is responsible for the entire inspection process for the software product.inspection process for the software product.
1.Assure the identification of team1.Assure the identification of team
2.Adequate preparation 2.Adequate preparation
3.Avaialability of material to be inspected and 3.Avaialability of material to be inspected and conformance to standardconformance to standard
4.Preparation of check list4.Preparation of check list
PLANNINGPLANNING
Determine the need for an overviewDetermine the need for an overview Place for inspection meetingPlace for inspection meeting Schedule the time & placeSchedule the time & place Serve a notice to all parties involvedServe a notice to all parties involved Assign the role of reader to a selected Assign the role of reader to a selected
member of the inspection teammember of the inspection team
PREPARATIONPREPARATION
At least five working days before the start At least five working days before the start of inspection meeting, the material must of inspection meeting, the material must be provided.be provided.
Must not go exceed two hours.Must not go exceed two hours. Defects are recorded on inspection –defect Defects are recorded on inspection –defect
log form.log form.
INSPECTION MEETINGINSPECTION MEETING
Defects are discussed and recorded. The Defects are discussed and recorded. The moderator is responsible for proper moderator is responsible for proper conduct of the meeting.conduct of the meeting.
Verification of defectsVerification of defects Defects are recorded by each team Defects are recorded by each team
member, the defect type is noted & at the member, the defect type is noted & at the end of the inspection defects are counted.end of the inspection defects are counted.
Must be limited to finding defectsMust be limited to finding defects
REWORKREWORK
The author correct the defects.The author correct the defects.
Corrections are verified.Corrections are verified.
Must discuss the corrections with moderator.Must discuss the corrections with moderator.
May be recommended for further inspection.May be recommended for further inspection.
INSPECTION TYPESINSPECTION TYPES
HIGH LEVEL DESIGN INSPECTIONHIGH LEVEL DESIGN INSPECTION
LOW LEEVEL DESIGN INSPECTIONLOW LEEVEL DESIGN INSPECTION
CODE INSPECTIONCODE INSPECTION
HIGH LEVEL DESIGN HIGH LEVEL DESIGN INSPECTIONINSPECTION
During the high level design phase, overall design for a During the high level design phase, overall design for a module function is produced.module function is produced.
For each function, the design specification will provide:For each function, the design specification will provide:
1.1. The source of design (new, other contract, etc)The source of design (new, other contract, etc)
2.2. A graphical presentation of the function allocation to A graphical presentation of the function allocation to hardware resources hardware resources
3.3. A graphical presentation of function flowA graphical presentation of function flow
4.4. A description of scheduling, timing, and synchornizationA description of scheduling, timing, and synchornization
5.5. A definition of interfacesA definition of interfaces
6.6. The process of decompositionThe process of decomposition
HIGH LEVEL DESIGN HIGH LEVEL DESIGN INSPECTIONINSPECTION
7. The design definition as follows:7. The design definition as follows: Retained modules: reference to the existing Retained modules: reference to the existing
preliminary (i.e. high level) design specification, preliminary (i.e. high level) design specification, as applicableas applicable
Modified modules: reference to the existing Modified modules: reference to the existing preliminary (i.e high level) design specification, preliminary (i.e high level) design specification, where applicable, and a narrative description of where applicable, and a narrative description of the changesthe changes
New modules: high level description of the New modules: high level description of the interfaces and processing.interfaces and processing.
LOW LEVEL DESIGN LOW LEVEL DESIGN
Low level reflects back on the overall design Low level reflects back on the overall design objectives. Key objectives considered in designing objectives. Key objectives considered in designing software are:software are:
1.1. Accuracy with high performanceAccuracy with high performance
2.2. Reliability and fault tolerance, enabling the system Reliability and fault tolerance, enabling the system to continue to perform in the event of hardware to continue to perform in the event of hardware intermittent failure or other unexpected intermittent failure or other unexpected occurences;occurences;
3.3. Flexibility to accommodate change and growth;Flexibility to accommodate change and growth;
4.4. Easy testability andEasy testability and
5.5. That it be readily maintainableThat it be readily maintainable
KEY FEATURES OF LOW KEY FEATURES OF LOW LEVEL DESIGNLEVEL DESIGN
Detail design module is developed and inspections are Detail design module is developed and inspections are held for all modules which meet any of the following held for all modules which meet any of the following criteria:criteria:
1.1. New module development;New module development;
2.2. Any change to the external interface or function of an Any change to the external interface or function of an existing module;existing module;
3.3. A structural change in an existing module; andA structural change in an existing module; and
4.4. A 40 percent or greater change in the source lines of code A 40 percent or greater change in the source lines of code in an existing module. This % presumes that the size in an existing module. This % presumes that the size requirements as specified in the military standards are requirements as specified in the military standards are adhered to. In the case of unrestricted module size, where adhered to. In the case of unrestricted module size, where the module is large, this percentage criterion may not be the module is large, this percentage criterion may not be proper. proper.
CODE INSPECTIONS CODE INSPECTIONS
A code inspection is held for all new codes A code inspection is held for all new codes or code from another task being modified or code from another task being modified to meet the requirements of the new task to meet the requirements of the new task or contract. The code inspection is not or contract. The code inspection is not performed until after there has been an performed until after there has been an error free compilation. error free compilation.
CODE INSPECTIONCODE INSPECTION
It serves the following purpose:It serves the following purpose:1.1. Verification that the code conforms to the Verification that the code conforms to the
requirements specification, design specification requirements specification, design specification and interface design specification requirements and interface design specification requirements for operational software. for operational software.
2.2. Confirmation that the design has been correctly Confirmation that the design has been correctly converted to the target language. converted to the target language.
3.3. Early audit of code quality by the software Early audit of code quality by the software developer’s peers.developer’s peers.
4.4. Early detection of errors.Early detection of errors.5.5. Verification that the code meets level to level Verification that the code meets level to level
module interface requirements. module interface requirements.
INSPECTION DEFECT INSPECTION DEFECT TYPES TYPES
Design defectDesign defect Logic defectLogic defect Syntax defectSyntax defect Standards defectStandards defect Data defectData defect Interface defectInterface defect Return code/ message defectReturn code/ message defect Requirements change defectRequirements change defect Performance improvement defectPerformance improvement defect
Inspection PrerequisitesInspection Prerequisites
A team of technically competent ,trained A team of technically competent ,trained inspectorsinspectors
A trained moderatorA trained moderator Proper planning and distribution of materialProper planning and distribution of material Full preparation prior to the inspection Full preparation prior to the inspection
meetingmeeting Completely design or cleanly compiled codeCompletely design or cleanly compiled code Updated resource requirementsUpdated resource requirements
Responsibilities of the Responsibilities of the moderatormoderator
Complete The SQE training courseComplete The SQE training course Check the entry criteriaCheck the entry criteria Preview the material for Preview the material for
conformance to standardsconformance to standards Team size and mix is properTeam size and mix is proper Assure there are at least five days of Assure there are at least five days of
preparationpreparation
During inspection/After During inspection/After inspectioninspection
Adequate attendanceAdequate attendance Adequate preparationAdequate preparation Lead the inspection meetingLead the inspection meeting Log defectsLog defects Require re-inspection for major defects,Require re-inspection for major defects,
specification changes, or greater then 50 specification changes, or greater then 50 defects per 1000 LOCdefects per 1000 LOC
After InspectionAfter Inspection
Review results with the authorReview results with the author Provide the manager with an estimate Provide the manager with an estimate
of rework completion dataof rework completion data Eliminate duplicate defect log entries Eliminate duplicate defect log entries
and send summary to SQEand send summary to SQE Verify correction of all defect log Verify correction of all defect log
entriesentries Add completion notice and send copy Add completion notice and send copy
to SQEto SQE
Responsibilities of Responsibilities of InspectorsInspectors
Attend the SQE training classesAttend the SQE training classes Thoroughly all materialThoroughly all material Assure understanding of function, Assure understanding of function,
consult author if necessaryconsult author if necessary Record detected defects on inspection Record detected defects on inspection
defect log form prior to inspectiondefect log form prior to inspection
Responsibilities of ManagerResponsibilities of Manager
Establish scheduleEstablish schedule Meet with moderator and authorMeet with moderator and author Monitor individual inspection timeMonitor individual inspection time Review SQE defect summary for Review SQE defect summary for
defect trends and perform defect defect trends and perform defect trends analysistrends analysis