SlideShare a Scribd company logo
1 of 21
Introduction to Software Review Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences University of Hawaii
Objectives ,[object Object],[object Object],[object Object]
Optimal Review ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Families of Review Methods ,[object Object],Minimal overhead Developer training Quick turnaround Defect discovery Ambiguity resolution Training Method Family Typical Goals Typical Attributes Little/no preparation No formal process No measurement ,[object Object],Some formal process Multiple stages Wide range of discussion Inspections Detect and remove all defects efficiently and effectively. Very formal process Measurement Verification
Methods vs. Optimality ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
What reviews do that testing doesn't ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],N o R e v s . R e v s Req Design Code Test R R R Req Design Code Test
Industry experience ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
There are many  different kinds of review TekInspect Development Method Non-Cleanroom Cleanroom FTR inFTR Code Inspection (Fagan76) Inspection (Gilb93) 2-Person Inspection (Bisant89) N-Fold Inspection (Martin90) Walkthrough (Yourdon89) Verification- based Inspection (Dyer92) Active Design Reviews (Parnas85) FTArm (Johnson94) ICICLE (Brothers90) Scrutiny (Gintell93) CAIS (Mashayekhi94) Manual Tool-Based Code Reading (McConnell93) Software Review (Humphrey90) Phased Insp. (Knight93)
Inspection:  the most formal review Preparation Orientation Planning Review Meeting Rework Verify Ensure rework was done correctly Correct defects. Consolidate issues. ,[object Object],[object Object],Choose team, materials, dates.
Planning ,[object Object],[object Object],[object Object],[object Object],Planning Orientation Preparation Review Mt. Rework Verify
Orientation ,[object Object],[object Object],[object Object],[object Object],[object Object],Planning Orientation Preparation Review Mt. Rework Verify
Preparation ,[object Object],[object Object],Planning Orientation Preparation Review Mt. Rework Verify
Example Issue Classification ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Review Meeting ,[object Object],[object Object],[object Object],[object Object],[object Object],Planning Orientation Preparation Review Mt. Rework Verify
Rework ,[object Object],[object Object],[object Object],[object Object],Planning Orientation Preparation Review Mt. Rework Verify
Verify ,[object Object],[object Object],[object Object],[object Object],Planning Orientation Preparation Review Mt. Rework Verify
ICS Software Engineering  Technical Reviews
Goals for our Tech. Reviews ,[object Object],[object Object],[object Object],[object Object]
Initial approach:  Checklist-based technical review ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Goals for the semester ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Bonus: How to ask questions ,[object Object],[object Object],[object Object],[object Object]

More Related Content

What's hot

Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
Er. Nancy
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
Chankey Pathak
 
Software Quality Attributes
Software Quality AttributesSoftware Quality Attributes
Software Quality Attributes
Hayim Makabee
 

What's hot (20)

Software development process models
Software development process modelsSoftware development process models
Software development process models
 
Software testing
Software testingSoftware testing
Software testing
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Software Requirements
Software RequirementsSoftware Requirements
Software Requirements
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineering
 
Software design
Software designSoftware design
Software design
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies
 
Agile development, software engineering
Agile development, software engineeringAgile development, software engineering
Agile development, software engineering
 
Software Verification & Validation
Software Verification & ValidationSoftware Verification & Validation
Software Verification & Validation
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
 
Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance
 
component based development model
component based development modelcomponent based development model
component based development model
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineering
 
Unit3 software review control software
Unit3 software review control softwareUnit3 software review control software
Unit3 software review control software
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & Specification
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement Analysis
 
Software Quality Attributes
Software Quality AttributesSoftware Quality Attributes
Software Quality Attributes
 

Viewers also liked

Software quality assurance lecture 1
Software quality assurance lecture 1Software quality assurance lecture 1
Software quality assurance lecture 1
Abdul Basit
 
Introduction to automated quality assurance
Introduction to automated quality assuranceIntroduction to automated quality assurance
Introduction to automated quality assurance
Philip Johnson
 
Software Reliability and Testing
Software Reliability and TestingSoftware Reliability and Testing
Software Reliability and Testing
mdfachowdhury
 
Unit 6-energy-resources
Unit 6-energy-resourcesUnit 6-energy-resources
Unit 6-energy-resources
anuragmbst
 
Chapter 8 software quality assurance and configuration audit
Chapter 8 software quality assurance and configuration auditChapter 8 software quality assurance and configuration audit
Chapter 8 software quality assurance and configuration audit
Cliftone Mullah
 

Viewers also liked (20)

Introduction To Software Quality Assurance
Introduction To Software Quality AssuranceIntroduction To Software Quality Assurance
Introduction To Software Quality Assurance
 
Software Faults, Failures and Their Mitigations | Turing100@Persistent
Software Faults, Failures and Their Mitigations | Turing100@PersistentSoftware Faults, Failures and Their Mitigations | Turing100@Persistent
Software Faults, Failures and Their Mitigations | Turing100@Persistent
 
Qa
QaQa
Qa
 
Software quality assurance lecture 1
Software quality assurance lecture 1Software quality assurance lecture 1
Software quality assurance lecture 1
 
Introduction to automated quality assurance
Introduction to automated quality assuranceIntroduction to automated quality assurance
Introduction to automated quality assurance
 
CMS & Chrome Extension Development
CMS & Chrome Extension DevelopmentCMS & Chrome Extension Development
CMS & Chrome Extension Development
 
Физика элементарных частиц: от микромира к проблемам Вселенной
Физика элементарных частиц: от микромира к проблемам ВселеннойФизика элементарных частиц: от микромира к проблемам Вселенной
Физика элементарных частиц: от микромира к проблемам Вселенной
 
Redundancy schemes for deduplicated cloud storage systems
Redundancy schemes for deduplicated cloud storage systemsRedundancy schemes for deduplicated cloud storage systems
Redundancy schemes for deduplicated cloud storage systems
 
Software Reliability and Testing
Software Reliability and TestingSoftware Reliability and Testing
Software Reliability and Testing
 
DFA minimization algorithms in map reduce
DFA minimization algorithms in map reduceDFA minimization algorithms in map reduce
DFA minimization algorithms in map reduce
 
Building testable chrome extensions
Building testable chrome extensionsBuilding testable chrome extensions
Building testable chrome extensions
 
Unit 6-energy-resources
Unit 6-energy-resourcesUnit 6-energy-resources
Unit 6-energy-resources
 
DFA Minimization
DFA MinimizationDFA Minimization
DFA Minimization
 
Optimization of dfa
Optimization of dfaOptimization of dfa
Optimization of dfa
 
Chapter 8 software quality assurance and configuration audit
Chapter 8 software quality assurance and configuration auditChapter 8 software quality assurance and configuration audit
Chapter 8 software quality assurance and configuration audit
 
DFA Minimization in Map-Reduce
DFA Minimization in Map-ReduceDFA Minimization in Map-Reduce
DFA Minimization in Map-Reduce
 
Lec 3 ---- dfa
Lec 3  ---- dfaLec 3  ---- dfa
Lec 3 ---- dfa
 
software failures
 software failures software failures
software failures
 
How To Review Software Requirements
How To Review Software RequirementsHow To Review Software Requirements
How To Review Software Requirements
 
Software Testing - Defect Metrics & Analysis
Software Testing - Defect Metrics & AnalysisSoftware Testing - Defect Metrics & Analysis
Software Testing - Defect Metrics & Analysis
 

Similar to Introduction to Software Review

Software testing
Software testingSoftware testing
Software testing
thaneofife
 
Aim (A).pptx
Aim (A).pptxAim (A).pptx
Aim (A).pptx
14941
 
Software Inspection And Defect Management
Software Inspection And Defect ManagementSoftware Inspection And Defect Management
Software Inspection And Defect Management
Ajay K
 
Testing techniques
Testing techniquesTesting techniques
Testing techniques
cnpltesters
 
CHAPTER 1 BASIC CONCEPTS AND PRELIMINARIES
CHAPTER 1 BASIC CONCEPTS AND PRELIMINARIESCHAPTER 1 BASIC CONCEPTS AND PRELIMINARIES
CHAPTER 1 BASIC CONCEPTS AND PRELIMINARIES
Samruddhi Sheth
 

Similar to Introduction to Software Review (20)

Lecture 10 Static Testing.ppt
Lecture 10 Static Testing.pptLecture 10 Static Testing.ppt
Lecture 10 Static Testing.ppt
 
Check upload1
Check upload1Check upload1
Check upload1
 
Prvt file test
Prvt file testPrvt file test
Prvt file test
 
Software testing
Software testingSoftware testing
Software testing
 
Check upload1
Check upload1Check upload1
Check upload1
 
Chapter 15
Chapter 15Chapter 15
Chapter 15
 
chapter 7.ppt
chapter 7.pptchapter 7.ppt
chapter 7.ppt
 
Markus Clermont - Surviving in an Agile Environment - Google - SoftTest Ireland
Markus Clermont - Surviving in an Agile Environment - Google - SoftTest IrelandMarkus Clermont - Surviving in an Agile Environment - Google - SoftTest Ireland
Markus Clermont - Surviving in an Agile Environment - Google - SoftTest Ireland
 
Aim (A).pptx
Aim (A).pptxAim (A).pptx
Aim (A).pptx
 
Software Inspection And Defect Management
Software Inspection And Defect ManagementSoftware Inspection And Defect Management
Software Inspection And Defect Management
 
Agile Testing: Best Practices and Methodology
Agile Testing: Best Practices and Methodology  Agile Testing: Best Practices and Methodology
Agile Testing: Best Practices and Methodology
 
Testing techniques
Testing techniquesTesting techniques
Testing techniques
 
IT Quality Testing and the Defect Management Process
IT Quality Testing and the Defect Management ProcessIT Quality Testing and the Defect Management Process
IT Quality Testing and the Defect Management Process
 
CHAPTER 1 BASIC CONCEPTS AND PRELIMINARIES
CHAPTER 1 BASIC CONCEPTS AND PRELIMINARIESCHAPTER 1 BASIC CONCEPTS AND PRELIMINARIES
CHAPTER 1 BASIC CONCEPTS AND PRELIMINARIES
 
CTFL Module 03
CTFL Module 03CTFL Module 03
CTFL Module 03
 
Software_Testing_ppt.pptx
Software_Testing_ppt.pptxSoftware_Testing_ppt.pptx
Software_Testing_ppt.pptx
 
Stm unit1
Stm unit1Stm unit1
Stm unit1
 
Chapter Three Static Techniques
Chapter Three Static TechniquesChapter Three Static Techniques
Chapter Three Static Techniques
 
Fundamentals of Testing Section 1/6
Fundamentals of Testing   Section 1/6Fundamentals of Testing   Section 1/6
Fundamentals of Testing Section 1/6
 
Testing overview
Testing overviewTesting overview
Testing overview
 

More from Philip Johnson

Introduction to ICS 691: Software Engineering for the Smart Grid
Introduction to ICS 691: Software Engineering for the Smart GridIntroduction to ICS 691: Software Engineering for the Smart Grid
Introduction to ICS 691: Software Engineering for the Smart Grid
Philip Johnson
 
Honors thesis overview: Katie Amberg-Johnson
Honors thesis overview: Katie Amberg-JohnsonHonors thesis overview: Katie Amberg-Johnson
Honors thesis overview: Katie Amberg-Johnson
Philip Johnson
 
Introduction to Issue Driven Project Management
Introduction to Issue Driven Project ManagementIntroduction to Issue Driven Project Management
Introduction to Issue Driven Project Management
Philip Johnson
 
Introduction to Subversion and Google Project Hosting
Introduction to Subversion and Google Project HostingIntroduction to Subversion and Google Project Hosting
Introduction to Subversion and Google Project Hosting
Philip Johnson
 
Introduction to Version Control and Configuration Management
Introduction to Version Control and Configuration ManagementIntroduction to Version Control and Configuration Management
Introduction to Version Control and Configuration Management
Philip Johnson
 
A beginners guide to testing
A beginners guide to testingA beginners guide to testing
A beginners guide to testing
Philip Johnson
 
Introduction to Software Build Technology
Introduction to Software Build TechnologyIntroduction to Software Build Technology
Introduction to Software Build Technology
Philip Johnson
 
Interactive Development Environments
Interactive Development EnvironmentsInteractive Development Environments
Interactive Development Environments
Philip Johnson
 
Introduction to Intermediate Java
Introduction to Intermediate JavaIntroduction to Intermediate Java
Introduction to Intermediate Java
Philip Johnson
 

More from Philip Johnson (20)

Kukui Cup 2012 Energy Data
Kukui Cup 2012 Energy DataKukui Cup 2012 Energy Data
Kukui Cup 2012 Energy Data
 
Introduction to ICS 691: Software Engineering for the Smart Grid
Introduction to ICS 691: Software Engineering for the Smart GridIntroduction to ICS 691: Software Engineering for the Smart Grid
Introduction to ICS 691: Software Engineering for the Smart Grid
 
Kukui Cup 2012 Organizing Committee February Meeting
Kukui Cup 2012 Organizing Committee February MeetingKukui Cup 2012 Organizing Committee February Meeting
Kukui Cup 2012 Organizing Committee February Meeting
 
How to plan a Kukui Cup
How to plan a Kukui CupHow to plan a Kukui Cup
How to plan a Kukui Cup
 
Honors thesis overview: Katie Amberg-Johnson
Honors thesis overview: Katie Amberg-JohnsonHonors thesis overview: Katie Amberg-Johnson
Honors thesis overview: Katie Amberg-Johnson
 
Introduction to Issue Driven Project Management
Introduction to Issue Driven Project ManagementIntroduction to Issue Driven Project Management
Introduction to Issue Driven Project Management
 
Introduction to continuous integration
Introduction to continuous integrationIntroduction to continuous integration
Introduction to continuous integration
 
Introduction to WattDepot
Introduction to WattDepotIntroduction to WattDepot
Introduction to WattDepot
 
Introduction to Subversion and Google Project Hosting
Introduction to Subversion and Google Project HostingIntroduction to Subversion and Google Project Hosting
Introduction to Subversion and Google Project Hosting
 
Introduction to Version Control and Configuration Management
Introduction to Version Control and Configuration ManagementIntroduction to Version Control and Configuration Management
Introduction to Version Control and Configuration Management
 
A beginners guide to testing
A beginners guide to testingA beginners guide to testing
A beginners guide to testing
 
Introduction to Software Build Technology
Introduction to Software Build TechnologyIntroduction to Software Build Technology
Introduction to Software Build Technology
 
Introduction to Robocode
Introduction to RobocodeIntroduction to Robocode
Introduction to Robocode
 
Codings Standards
Codings StandardsCodings Standards
Codings Standards
 
Interactive Development Environments
Interactive Development EnvironmentsInteractive Development Environments
Interactive Development Environments
 
Introduction to Intermediate Java
Introduction to Intermediate JavaIntroduction to Intermediate Java
Introduction to Intermediate Java
 
Professional Persona
Professional PersonaProfessional Persona
Professional Persona
 
01.intro
01.intro01.intro
01.intro
 
iHale Milestone 2 Kickoff
iHale Milestone 2 KickoffiHale Milestone 2 Kickoff
iHale Milestone 2 Kickoff
 
iHale Milestone 1 Feedback
iHale Milestone 1 FeedbackiHale Milestone 1 Feedback
iHale Milestone 1 Feedback
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Recently uploaded (20)

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 

Introduction to Software Review

  • 1. Introduction to Software Review Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences University of Hawaii
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8. There are many different kinds of review TekInspect Development Method Non-Cleanroom Cleanroom FTR inFTR Code Inspection (Fagan76) Inspection (Gilb93) 2-Person Inspection (Bisant89) N-Fold Inspection (Martin90) Walkthrough (Yourdon89) Verification- based Inspection (Dyer92) Active Design Reviews (Parnas85) FTArm (Johnson94) ICICLE (Brothers90) Scrutiny (Gintell93) CAIS (Mashayekhi94) Manual Tool-Based Code Reading (McConnell93) Software Review (Humphrey90) Phased Insp. (Knight93)
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17. ICS Software Engineering Technical Reviews
  • 18.
  • 19.
  • 20.
  • 21.