Robson Ytallo Silva de Oliveira

Slides:



Advertisements
Similar presentations
Software Construction
Advertisements

CLEANROOM SOFTWARE ENGINEERING
Testing Without Executing the Code Pavlina Koleva Junior QA Engineer WinCore Telerik QA Academy Telerik QA Academy.
1 Software Testing and Quality Assurance Lecture 2 Software Verification & Validation.
SE curriculum in CC2001 made by IEEE and ACM: Overview and Ideas for Our Work Katerina Zdravkova Institute of Informatics
Planning a measurement program What is a metrics plan? A metrics plan must describe the who, what, where, when, how, and why of metrics. It begins with.
Copyright 2002 Prentice-Hall, Inc. Chapter 1 The Systems Development Environment 1.1 Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer.
University of Southern California Center for Systems and Software Engineering ©USC-CSSE1 Ray Madachy, Barry Boehm USC Center for Systems and Software Engineering.
SDLC. Information Systems Development Terms SDLC - the development method used by most organizations today for large, complex systems Systems Analysts.
Verification and Validation
1 Software Inspections and Walkthroughs Author: A. Frank Ackerman Presented by Cynthia Johnson EEL6883.
CIS 321—IS Analysis & Design
S T A M © 2000, KPA Ltd. Software Trouble Assessment Matrix Software Trouble Assessment Matrix *This presentation is extracted from SOFTWARE PROCESS QUALITY:
Software Inspections and Walkthroughs By. Adnan khan.
CSI315 Web Applications and Technology Overview of Systems Development (342)
Page 1 MODEL TEST in the small GENERALIZE PROGRAM PROCESS allocated maintenance changes management documents initial requirement project infrastructure.
Introduction to SDLC: System Development Life Cycle Dr. Dania Bilal IS 582 Spring 2009.
Copyright 2002 Prentice-Hall, Inc. Chapter 1 The Systems Development Environment 1.1 Modern Systems Analysis and Design.
Module 4: Systems Development Chapter 13: Investigation and Analysis.
“Enhancing Reuse with Information Hiding” ITT Proceedings of the Workshop on Reusability in Programming, 1983 Reprinted in Software Reusability, Volume.
Mining Windows Kernel API Rules Jinlin Yang 09/28/2005CS696.
Chapter 14: Inspection  Basic Concept and Generic Process  Fagan Inspection  Other Inspection and Related Activities.
CSE403 Software Engineering Autumn 2001 Technical Reviews Gary Kimura Lecture #19 November 14, 2001.
Software Inspection A basic tool for defect removal A basic tool for defect removal Urgent need for QA and removal can be supported by inspection Urgent.
1 Chapter 2 The Process. 2 Process  What is it?  Who does it?  Why is it important?  What are the steps?  What is the work product?  How to ensure.
Dr. Tom WayCSC Code Reviews & Inspections CSC 4700 Software Engineering.
Chapter 13: Developing and Implementing Effective Accounting Information Systems
程建群 博士 (Dr. Jason Cheng) 年 03 月 Software Engineering Part 06.
Chapter 2 Process: A Generic View
SAS_08_Preventing_Eliminating_SWfaults_Goseva-Popstojanova Preventing and Eliminating Software Faults through the Life Cycle PI: Katerina Goseva-Popstojanova.
Copyright 2002 Prentice-Hall, Inc. 1.1 Modern Systems Analysis and Design Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 1 The Systems Development.
Formal Technical Reviews Matt Graham 18 November 2004 EECS 814 University of Kansas.
SAS ‘05 Reducing Software Security Risk through an Integrated Approach David P. Gilliam, John D. Powell Jet Propulsion Laboratory, California Institute.
Lecture 14 Maintaining the System and Managing Software Change SFDV Principles of Information Systems.
(1) Introduction to Software Review Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences University of Hawaii.
Chapter 12: Software Inspection Omar Meqdadi SE 3860 Lecture 12 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
What Type of Defects are Really Discovered in Code Reviews. Mika V
27/3/2008 1/16 A FRAMEWORK FOR REQUIREMENTS ENGINEERING PROCESS DEVELOPMENT (FRERE) Dr. Li Jiang School of Computer Science The.
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
© Michael Crosby and Charles Sacker, 2001 Systematic Software Reviews Software reviews are a “quality improvement process for written material”.
Banaras Hindu University. A Course on Software Reuse by Design Patterns and Frameworks.
Advances In Software Inspection
Inspection of Software Requirements to support Project/Quality Management an Empirical Study Stefan Biffl Institut für Softwaretechnik Technische Universität.
CASE Tools and their Effect on Software Quality
Chapter 1 Assuming the Role of the Systems Analyst.
Contents 1 Description of 1 Description of Initiative Initiative 3 Year 2: Updated 3 Year 2: Updated Training/Metrics Training/Metrics 2 Year 1: NASA 2.
1 Software Testing and Quality Assurance Motivation and Review of Software Verification & Validation (2)
Faculty Economics & Business EBS 2033 Systems Development Lecture 1 The Systems Development Environment Lecturer: Puan Asleena Helmi.
OHT 15.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Templates The contribution of templates to software quality The organizational.
Chapter 1 The Systems Development Environment
Software Quality Control and Quality Assurance: Introduction
Chapter 1 The Systems Development Environment
Fundamentals of Information Systems, Sixth Edition
Systems Analysis & Design N106
Chapter 1 The Systems Development Environment
Lecture 15: Technical Metrics
Business System Development
Chapter 1 The Systems Development Environment
Chapter 9: Research Issues in Software Engineering
System Development Life Cycle (SDLC)
Chapter 1 The Systems Development Environment
Chapter 14: Inspection Basic Concept and Generic Process
Software Engineering Experimentation
Need for the subject.
System Development Life Cycle (SDLC)
Project Management: Inspections and Reviews Formal Specifications
Software Engineering with Reusable Components
Chapter 1 The Systems Development Environment
Testing and Inspection Present and Future
Presentation transcript:

Robson Ytallo Silva de Oliveira Code Inspection Robson Ytallo Silva de Oliveira November 15, 2018

Overview Introduction Code Inspection Techniques Code Inspection : A Survey Summary Concluding Remarks November 15, 2018

Introduction “The software inspection process is generally considered a software engineering best practice” [Wheeler, 1996]. November 15, 2018

Introduction Code Inspection Goals Find and fix defects In Software Reuse Make the code easier to understand and change Improve the maintainability of the code Minimizing redundancies Improving language proficiency Improving safety and portability November 15, 2018

Introduction Real Example of Benefits NASA (Jet Propulsion Laboratory) Saved $25,000 per Inspection Around 300 Inspections Saved $7,5 million November 15, 2018

Code Inspection Techniques The Relevant Techniques Formal Technical Review Pratical Model Variants of the Pratical Model November 15, 2018

Code Inspection Techniques Formal Technical Review (FTR) Five-Step Inspection Method Overview Preparation Inspection Meeting Rework Followup November 15, 2018

Code Inspection Techniques Pratical Model Three-Step Preparation Collection Repair November 15, 2018

Code Inspection Techniques Variants of the Pratical Model Active Design Review (ADR) Phased Inspection (PI) N-Fold Inspections High Price November 15, 2018

Code Inspection : A Survey Before 1976 From 1976 until today Several Variants New Techniques New Models Tools November 15, 2018

Compiler Writers’ Responsability Static Inspection Advantage [Hatton, 1995] Compiler Writers’ Responsability Static Inspection Advantage Disadvantage November 15, 2018

[Porter et al., 1997] Cost-Benefits Experiment for Code Inspection Techniques Conclusions Advantage Problems Measurement Problems Discontinuing Treatments Simplified Instrumentation November 15, 2018

[Porter et al., 1997] Motivation Real Group x Nominal Group [Votta et al., 1985] Preparation X Inspection Meeting Real Group x Nominal Group Experiment 1 Conclusion Paper’s Conclusion November 15, 2018

[Wood et al., 1997] [Basili et al., 1980] Conclusion Techniques Comparation Techniques Combination Conclusion November 15, 2018

[Johnson, 1998] November 15, 2018

“Build organizational knowledge bases on review.” [Brykczynski, 1999] Checklists Update “Build organizational knowledge bases on review.” [Johnson, 1998] Size November 15, 2018

[Travassos et al., 1999] Reading Techniques Importance in OO Designs Problem November 15, 2018

[Kimble et al., 2000] An Alternative Source Code Analysis Parser Modified Notation Control Flow Diagram – CFD Thread Analysis November 15, 2018

[Adams, 2000] Before 1976 Inspections and Reviews’ Necessities Apollo 11 Inspections and Reviews’ Necessities November 15, 2018

[Nandivada et al., 2000] The 9 Quadrant Model for Code Reviews November 15, 2018

[Nandivada et al, 2000] November 15, 2018

[Siy et al., 2001] Motivation Proposal Results Conclusions Minor defects Proposal Classify soft maintenance issues Cost benefit model Survey Results Conclusions November 15, 2018

[Biffl et al., 2001] Statistical Model Economic Model Conclusions Inspection Effectiveness Economic Model Inspection Benefits Conclusions Best mix of Reading Techniques Optimal Team Size Additional Inspector November 15, 2018

[Biffl et al., 2001] Reinspections Cost-Benifit Model Conclusion November 15, 2018

“Build organizational knowledge bases on review.” [Wohlin et al., 2002] Benchmarking Inspection Benchmarking “Build organizational knowledge bases on review.” [Johnson, 1998] Conclusion November 15, 2018

“Investigate computer-mediated review technology.” [Tyran et al., 2002] Real Group vs Nominal Group Group Support Systems – GSS “Investigate computer-mediated review technology.” [Johnson, 1998] Conclusion November 15, 2018

[Parnas et al., 2003] Inspection Methods vs Informal Reviews Workshop on Inspection in Software Engineering – WISE IEEE Software Magazine IEEE Transactions on Software Engineering The future of inspection Refine the software Inspection Process Systems with Real-Time requirements and Concurrent Activities Tool Supported Software Inspection November 15, 2018

[Thelin et al., 2003] Usage-based Reading Technique (UBR) Conclusion November 15, 2018

[Travassos et al., 2004] Framework ISPIS Integration Mechanism Historical Data Conclusion “Build organizational knowledge bases on review.” “Investigate computer-mediated review technology.” [Johnson, 1998] November 15, 2018

[Remillard, 2005] Source Code Review Systems Bugzilla CodeStriker It isn’t Formal Inspections Supported CodeStriker Pure text files Recommendation November 15, 2018

November 15, 2018

Summary November 15, 2018

Concluding Remarks FTR – Some Variants Cost-Benefit Future Real-Time Requirements Concurrent Activities November 15, 2018

Towards a well-defined requirements for software components inspection Meetings Preparation Reviews Cost Benefit Tools Models Benchmarking November 15, 2018

References HATTON, Les et al. Static Inspection: Tapping the whells of software. 1995. PORTER, Adam et al. An Experiment to Assess the Cost-Benefits of Code Inspections in Large Scale Software Development. 1997. PORTER, Adam et al. Assessing Software Review Meetings: Results of a Comparative Analysis of Two Experimental Studies. 1997. WOOD, Murray et al. Comparing and Combining Software Defect Detection Techniques: A Replicated Empirical Study. 1997. November 15, 2018

References JOHNSON, Philip. Reengineering Inspection. 1998. BRYKCZYNSKI, Bill. A Survey of Software Inspection Checklists. 1999. TRAVASSOS, Guilherme et al. Detecting Defects in Object-Oriented Designs: Using Reading Techniques to Increase Software Quality. 1999. KIMBLE, James et al. An Alternative Source Code Analysis. 2000. ADAMS, Tom. The God of Inspection. 2000. November 15, 2018

References NANDIVADA, Ravi et al. The 9 Quadrant Model for Code Reviews. 2000. SIY, Harvey et al. Does The Modern Code Inspection Have Value?. 2001. BIFFL, Stefan et al. Influence of Team Size and Defect Detection Technique on Inspection Effectiveness. 2001. BIFFL, Stefan et al. Investigating the Cost-Effectiveness of Reinspections in Software Development. 2001. November 15, 2018

References WOHLIN, Claes et al. Software Inspection Benchmarking - A Qualitative and Quantitative Comparative Opportunity. 2002. TYRAN, Craig et al. Improving Software Inspections with Group Process Support. 2002. PARNAS, David et al. The Role of Inspection in Software Quality Assurance. 2003. THELIN, Thomas et al. Prioritized Use Cases as a Vehicle for Software Inspections. 2003. November 15, 2018

References TRAVASSOS, Guilherme et al. ISPIS: A Framework Supporting Software Inspection Processes. 2004. REMILLARD, Jason. Source Code Review Systems. 2005. November 15, 2018

That's All Folks November 15, 2018