Software Reviews Software reviews are the filter for the software engineering process Applied at various different points and serve to uncover errors that.

Slides:



Advertisements
Similar presentations
Chapter 24 Quality Management.
Advertisements

1.Quality-“a characteristic or attribute of something.” As an attribute of an item, quality refers to measurable characteristics— things we are able to.
INFO 631 Prof. Glenn Booker Week 1 – Defect Analysis and Removal 1INFO631 Week 1.
Software Project Management Lecture # 11. Outline Quality Management ( chapter 26 - Pressman )  Software reviews  Formal Inspections & Technical Reviews.
Formal Technical Reviews
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 6/e (McGraw-Hill 2005). Slides copyright 2005 by Roger Pressman.1.
SE382 Software Engineering Lecture 21b
WHY BOTHER TO UNIT TEST Suprinder Pujji. OVERVIEW What is Unit testing Emphasis of Unit testing Benefits of Unit Testing Popular Misconceptions Prevailing.
The Design Process. Analysis Think – what should the final design do? List customer requirements Consider constraints – balance tradeoffs Define specifications.
OHT 7.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Software development methodologies: - The software development life cycle.
OHT 7.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Software development methodologies: - The software development life cycle.
‘all aspects of software production’ - Software engineering is not just concerned with the technical processes of software development but also with activities.
Incremental Model Requirements phase Verify Specification phase Verify
Software Quality Assurance
Quality Planning & Defect Estimation
Software Engineering II Lecture 1 Fakhar Lodhi. Software Engineering - IEEE 1.The application of a systematic, disciplined, quantifiable approach to the.
S oftware Q uality A ssurance Part One Reviews and Inspections.
Validation Metrics. Metrics are Needed to Answer the Following Questions How much time is required to find bugs, fix them, and verify that they are fixed?
Quality Planning And Defect Estimation Presented by Basker George.
Project Proposal Document Optimization 15 February 2007 Team members: Chris Catalano Chun-Yu Chang Chris Joson David Matthes.
NSF Engineering Research Center for Reconfigurable Manufacturing Systems University of Michigan College of Engineering Reconfigurable System for Turbine.
Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.1.
SEN 460 Software Quality Assurance. Bahria University Karachi Campus Waseem Akhtar Mufti B.E(UIT), M.S(S.E) AAU Denmark Assistant Professor Department.
Software Engineering Lecture 8: Quality Assurance.
More SQA Reviews and Inspections. Types of Evaluations  Verification Unit Test, Integration Test, Usability Test, etc  Formal Reviews  aka "formal.
Software Project Management Lecture # 12. Outline Quality Management ( chapter 26 - Pressman )  SQA  Who does it?  SQA Activities  Software reviews.
6/22/2016 Tom Gilchrist Cost and Impact of Errors/Defects Errors are introduced in all activities. The longer errors go undetected and.
Requirements Errors Lecture # 14.
Review Techniques SEII-Lecture 16
The Value of Managing the Review Process
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Software Quality Control and Quality Assurance: Introduction
Software Quality Engineering
Personal Software Process Team Software Process
Software Engineering Lecture #41
Software Quality Engineering
Software Project Management
Software Quality Assurance
Software Economics Phase Yield
Iterative Waterfall Model
Quality Quality is “a characteristic or attribute of something.”
Software Engineering Lecture #2
The Design Process.
Software Engineering Lecture #39
Software Engineering Lecture #45
Software Engineering Lecture #25
Software Engineering Lecture # 17
Software Engineering Lecture #26
Program Restructuring
Error Tracking Defect removal efficiency DRE = E / (E+D)
Defects yet to be fixed Defects Time Total reported defects
Baseline – IEEE definition
KEY PROCESS AREAS (KPAs)
Quality Measurable characteristic Cyclomatic complexity Cohesion
The Project Reel’s five step approach for successful projects
Software Project Management
Software Engineering Lecture # 01
Software Engineering Lecture #35
Extreme Programming.
Software Engineering Lecture #40
Software Engineering Lecture #16
20. The Software-Quality Landscape
Software Engineering Lecture # 19
Software Engineering Lecture #29
Integrating quality activities in
Software Engineering Practices
Testing and Inspection Present and Future
Software Engineering Lecture #28
3. Software Quality Management
Presentation transcript:

Software Reviews Software reviews are the filter for the software engineering process Applied at various different points and serve to uncover errors that can be removed Purify the software engineering activities

Recap

Software Engineering II Lecture 28 Fakhar Lodhi

Software Engineering II Lecture 28 Fakhar Lodhi

The V-Model Requirements Acceptance Test Inspection Architecture Integration Test Inspection Design Unit Test Inspection The V-Model Code Inspection

Importance of reviews “Technical work needs reviewing for the same reason that pencils needs erasers: To err is human. The second reason that we need technical reviews is although that people are good at catching errors, large class of errors escape the originator more easily than they escape anyone else”. Freedman

Importance of reviews A review – any review – is a way of using the diversity of a group of people to: Point out needed improvements in the product of a single person or team Confirm those parts of a product in which improvement is either not desired or no needed Achieve technical work of more uniform, or at least more predictable, quality than can be achieved without reviews, in order to make technical work more manageable. Freedman

Defect Removal Efficiency Jones 1997 Design Inspection Code Inspection Quality Assurance Testing Worst 30% 37% 50% 55% 65% 75% 77% 85% 95% Median 40% 53% 70% 80% 87% 90% 97% 99% Best 60% 93% 99.9% Sample size – 1500 projects

Defect Amplification Model Defects Detection Errors from previous step Errors Passed Through Percentage Efficiency for error detection Errors passed To next step Amplified Errors 1:x Newly generated errors Development Step

10 37 94 0% 6 0% 10 20% 4 *1.5 27 * 3 10 25 25 Preliminary Design Errors passed through Amplification Factor Errors detected in this stage Errors detected in this stage Amplified Errors 10 37 94 0% 6 0% 10 20% Newly generated errors 4 *1.5 27 * 3 Errors passed to next step Errors passed to next step = 116 - 0.2*116 = 94 Errors passed to next step 10 25 25 Errors detected in this stage Preliminary Design Detailed Design Code /Unit test Total Errors/Defects 6+4*1.5+25 = 37 Total Errors/Defects 10+27*3+25 = 116 Errors passed to next step = 94 – 0.5*94 = 47 Errors passed to next step = 47 – 0.5*47 = 24 94 47 24 12 94 50% 47 50% 24 50% Final Defects left unidentified Errors detected in this stage Errors detected in this stage Integration test Validation test System test Errors detected in this stage Total Defects 47+0+0 = 47

After Introducing Inspections at the Design and Code Level Errors passed to next step = 29 - 0.5*29= 15 Errors passed to next step = 60 - 0.6*60= 24 Errors detected in this stage 3 15 24 70% 2 50% 5 60% 1 *1.5 10 * 3 10 Errors passed to next step 25 25 Preliminary Design Detailed Design Code /Unit test Total Defects 2+1.5+25=29 Total Defects 5+10*3+25=60 24 12 6 3 24 50% 12 50% 6 50% Integration test Validation test System test