Inspection of Software Requirements Document Gursimran Singh Walia North Dakota State University Training 2: Inspection using.

Slides:



Advertisements
Similar presentations
Henry Lieberman MIT Media Lab AI in End-User Software Engineering Henry Lieberman, MIT (presenting) Raphael Hoffmann, Michael Toomim, U. Washington, Seattle.
Advertisements

Relational Database and Data Modeling
Configuration management
Test process essentials Riitta Viitamäki,
Requirements Specification and Management
Test Execution and Defect management. 2 Module Objectives Introduction to Test Execution Checklist of Test Execution Defect management Defect Classification.
Chapter 4 Quality Assurance in Context
System integrity The term system integrity has the following meanings: That condition of a system where in its specified operational and technical parameters.
Event Review Using HFACS (Template)
8/28/2005ECEN5543 Req Elicitation1 Targets of Requirements Engineering ECEN 5543 SW Engineering of Standalone Programs University of Colorado, Boulder.
An Object-Oriented Architecture Supporting Web Application Testing Presented By: Bhavdeep Singh.
1 CS 426 Senior Projects Chapter 3: The Requirements Workflow [Arlow & Neustadt, 2005] February 10, 2009.
SIM5102 Software Evaluation
Managing Reuse Presented by: Aisha Al-Hammadi. Outline Introduction History. The technical and managerial advantages of Reusing Solutions. The main challenges.
Soft. Eng. II, Spr. 2002Dr Driss Kettani, from I. Sommerville1 CSC-3325: Chapter 9 Title : Reliability Reading: I. Sommerville, Chap. 16, 17 and 18.
In the spring of 2009, a friend who runs an ecommerce Web site asked one of the authors for help explaining why his application was running so slowly.
Lesson-21Process Modeling Define systems modeling and differentiate between logical and physical system models. Define process modeling and explain its.
Software Documentation Written By: Ian Sommerville Presentation By: Stephen Lopez-Couto.
Com S 362: Object-Oriented Analysis and Design Class, Responsibilities, Collaborations, CRC Cards Com S 362: Object-Oriented Analysis and Design Oct 18,
Management Information Systems
Software Engineering 2003 Jyrki Nummenmaa 1 USE CASES In this lecture: Use cases - What are use cases? - Why to use use cases? - How to write.
PROCESS MODELING Chapter 8 - Process Modeling
Software Testing Content Essence Terminology Classification –Unit, System … –BlackBox, WhiteBox Debugging IEEE Standards.
What is Sure BDCs? BDC stands for Batch Data Communication and is also known as Batch Input. It is a technique for mass input of data into SAP by simulating.
Identifying Reasons for Software Changes Using Historic Databases The CISC 864 Analysis By Lionel Marks.
Four Phases of Report Authoring Targeted for Executives and Upper Management By: Ben Aminnia President, L.A. SQL Server Professionals Group
FCS - AAO - DM COMPE/SE/ISE 492 Senior Project 2 System/Software Test Documentation (STD) System/Software Test Documentation (STD)
2/6/01D-1 © 2001 T. Horton CS 494 Object-Oriented Analysis & Design Using PARTS to Illustrate Requirements Concepts.
TESTING PRINCIPLES BY K.KARTHIKEYAN. PRINCIPLES Principle 1. Testing is the process of exercising a software component using a selected set of test cases,
This chapter is extracted from Sommerville’s slides. Text book chapter
Copyrighted material John Tullis 10/17/2015 page 1 04/15/00 XML Part 3 John Tullis DePaul Instructor
From Quality Control to Quality Assurance…and Beyond Alan Page Microsoft.
L8 - March 28, 2006copyright Thomas Pole , all rights reserved 1 Lecture 8: Software Asset Management and Text Ch. 5: Software Factories, (Review)
Databases Shortfalls of file management systems Structure of a database Database administration Database Management system Hierarchical Databases Network.
Chapter 9 Database Systems Introduction to CS 1 st Semester, 2014 Sanghyun Park.
1 CS Tutorial 5 Frid. Oct 23, 2009 Design Document Tutorial.
Inspection of Software Requirements Document Gursimran Singh Walia North Dakota State University Training 1: Inspecting SRS using.
Health and Career Education 6 – Planning and Goals - Assignment 1.2 Assessment: Marks are assigned for each question. There are a total of 17 possible.
Handling Exceptions. 2 home back first prev next last What Will I Learn? Describe several advantages of including exception handling code in PL/SQL Describe.
Defect resolution  Defect logging  Defect tracking  Consistent defect interpretation and tracking  Timely defect reporting.
Capstone Project Phase Two! Design Phase – Functional Specification Document.
Creating DDL and Database Event Triggers. 2 home back first prev next last What Will I Learn? Describe events that cause DDL and database event triggers.
CS212: Object Oriented Analysis and Design Lecture 32: Use case and Class diagrams.
INFO 637Lecture #71 Software Engineering Process II Product Implementation INFO 637 Glenn Booker.
Approaches to ---Testing Software Some of us “hope” that our software works as opposed to “ensuring” that our software works? Why? Just foolish Lazy Believe.
SWE 513: Software Engineering
1 Chapter 12 Configuration management This chapter is extracted from Sommerville’s slides. Text book chapter 29 1.
BMTS 242: Computer and Systems Lecture 1: Introduction to Computer System Yousef Alharbi Website
1 test10b Software Testing Necessary to measure and certify quality in software.
Observing the Current System Benefits Can see how the system actually works in practice Can ask people to explain what they are doing – to gain a clear.
1 Unified Modeling Language Michael K. Wildes University of California, Riverside – Extension Program Presentation 2.
Testing Overview Software Reliability Techniques Testing Concepts CEN 4010 Class 24 – 11/17.
Software Test Plan Why do you need a test plan? –Provides a road map –Provides a feasibility check of: Resources/Cost Schedule Goal What is a test plan?
1 Introduction to MBProject. 2 Part I: MBProject and how it is used. Part II: What MBProject might do in the future. Also, as-built data collection and.
It’s Capstone Time! March 6, Important Dates: Project needs to be completed and turned in on Thursday, April 10 th Class Presentation will be scheduled.
Lawson Mid-America User Group Spring 2016 Meeting.
Use Cases Discuss the what and how of use cases: Basics Examples Benefits Parts Stages Guidelines.
Builderstorm Review – Learn Our Business Perspective!
Testability.
Inspecting Software Requirement Document
Using Human Errors to Inspect SRS
Status Report of EDI on the CAA
Use Cases Discuss the what and how of use cases: Basics Benefits
Approaches to ---Testing Software
Chapter 9 Database Systems
27th International Symposium on Software Reliability Engineering
IT6004 – SOFTWARE TESTING.
Human Errors and the Error Abstraction Process
Software Quality Engineering
Test Cases, Test Suites and Test Case management systems
Presentation transcript:

Inspection of Software Requirements Document Gursimran Singh Walia North Dakota State University Training 2: Inspection using Error Abstraction and Classification Method

Error - Faults As per IEEE standard terminology: Fault is a concrete manifestation of an error in a software artifact Error is a defect in the human thought process made while trying to understand given information, solve problems, or to use methods and tools. In the context of software requirements specifications, an error is a basic misconception of the actual needs of a user or customer. 2

3 Fault List Requirements Inspection What caused that fault? Error List Re- Inspection New Fault List New Fault List Training 1:

Outline How to abstract errors from faults: – Error Abstraction and Error Classification – Error Form Re-inspecting SRS using errors to find more faults – New Fault Form 4 Fault List Error List New Fault List New Fault List

Abstracting Errors from Faults How to abstract errors from faults: – Error Abstraction and Error Classification – Error Form 5 Fault List Error List

Error Abstraction Error abstraction process helps to abstract errors/mistakes from the faults. It includes doing: – Analysis of the fault lists Why each fault (in your fault report form) represents a defect in the SRS? – Grouping of the related faults Group faults based on their categories or nature (e.g., G, MF, MP, MI, ME, AI, II, IF, WS) – Eliciting the underlying reasons for the occurrence of the faults Find pattern in the grouped faults and think of some believed reasoning for these faults to have occurred – Write down the errors ( Mapping errors to faults ) 6

Example: Consider these faults: F1: The requirements say “The system keeps a rental transaction record for each customer giving out information and currently rented tapes for each customer.” However, an explanation of exactly what information is given out for each customer has been omitted. F9: The requirements say that when a tape is rented, the “rental transaction file is updated.” However, what it means to update the rental transaction file is not specified. The information to be stored here is not discussed. 7

Error Abstraction F1 and F9 – Missing Information (MI) class. The missing information about “ How the information in the database is to be updated?” Error can be that, “how the rentals are to be logged is not completely understood” Remember: – It is not always the case that you will find an error responsible for multiple fault (as in above example) ; Error can be responsible for single faults, and – Patterns can also be found between errors in different classes 8 Error F1 F9

Error Abstraction Abstracting errors from faults is a very creative process. To support the error abstraction process, you can use the Requirement Error Taxonomy that describes the different types of errors that can occur during the development of requirement document. 9

Requirement Error Taxonomy 10 People Errors CommunicationParticipationDomain KnowledgeSpecific ApplicationProcess Execution Other Human Cognition Process Errors Inadequate method of achieving goal ManagementElicitationAnalysisTraceability Documentation Errors Organization No Usage of Standard Specification

Error Report Form Use “Error Report Form” to log errors corresponding to each fault (from your fault list during the first inspection). 11 Fault List Fault List Error List Error List

Error Report Form / Error List 12 Fault #Page # Requirement # Fault Class DescriptionTime found Importance level Probability of causing failure Break Training 1: Fault List Training 1: Fault List Error #Fault #Description of ErrorTime foundBreak (time and date) Training 2: Error List Training 2: Error List

Error List : Example 13 Error #Fault #Description of Error Time found Break (time and date) 13…………… :30 AM 25, 7………………………………………10:00 AMBreak:10 AM; 20 th sep 312………………………………………1 PM Resume 12 PM; 21 st sep

Outline How to abstract errors from faults: – Error Abstraction and Error Classification – Error Form Re-inspecting SRS using errors to find more faults – New Fault Form 14 Fault List Error List New Fault List New Fault List

Re-inspecting SRS: Use error information to find more faults Use the error information from the "Error List" to re inspect the SRS document: – For each error in the “Error List ”, inspect the SRS for fault(s) caused by it – For each new fault found, complete a row in the "New Fault List" – An error can cause one or more faults 15 Error List New Fault List New Fault List

New Fault List 16 Error #Fault #Description of ErrorTime foundBreak (time and date) Training 2: Error List Training 2: Error List Error # (from the error-list) Description of Fault/Faults caused by the error Fault Class Page #Time Found Importance Level Probability of causing failure Breaks (Time and Date)

New Fault List : Example 17 Name: Start time & date: 2 nd Oct, 9:30 AM Error # Description of Fault/Faults caused by the error Fault Class Page # Time FoundImportance Level Probability of causing failure Breaks (Time and Date) 1. 1……………….. 2……………….. II, II 3,59:45 AM2,33,1 2. ……………….. MF 29:50 AM21 3. ……………… 39:59 AM ……………… 2……………. 3………………. EF, AI, O 4,3,1 9 10:00 AM1, 0, 22, 0, 3 Break-11:00 AM, 2 nd Resumed-1:00PM, 3 rd 5. …………….. O 251:25 PM22 6. ……………. G 321:50 PM32 7. ……………… AI 122:00 PM44 8. ………………. WS 62:20 PM …………….. 2……………. MI, AI 2, 92:50 PM1, 22, 3 End time: #########

Summary 18 Fault List Error List New Fault List New Fault List Fault #Page # Requirement # Fault Class Description………Break Error #Fault #Description of Error Time found Break (time and date) Error # (from the error-list) Description of Fault/Faults caused by the error Fault Class Page #Time Found Importance Level Probability of causing failure Breaks (Time and Date)

Timeline Today – Training 2 How to log errors and new faults during second inspection Output – Individual “Error List” and “New Fault List” from second inspection 19

Thank you!