Verification and Validation Yonsei University 2 nd Semester, 2014 Sanghyun Park.

Slides:



Advertisements
Similar presentations
Software Engineering COMP 201
Advertisements

Software Testing and Analysis. Ultimate goal for software testing Quality Assurance.
Verification and Validation
Verification and Validation
Software Engineering-II Sir zubair sajid. What’s the difference? Verification – Are you building the product right? – Software must conform to its specification.
©Ian Sommerville 2000Software Engineering. Chapter 22Slide 1 Chapter 22 Verification and Validation.
Software Engineering COMP 201
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Verification and Validation l Assuring that a software system meets a user's.
1 / 28 CS 425/625 Software Engineering Verification and Validation Based on Chapter 19 of the textbook [SE-6] Ian Sommerville, Software Engineering, 6.
Verification and Validation
1 Software Testing and Quality Assurance Lecture 1 Software Verification & Validation.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Verification and Validation.
Verification and Validation CIS 376 Bruce R. Maxim UM-Dearborn.
Verification and Validation
1CMSC 345, Version 4/04 Verification and Validation Reference: Software Engineering, Ian Sommerville, 6th edition, Chapter 19.
Chapter 24 - Quality Management Lecture 1 1Chapter 24 Quality management.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Verification and Validation l Assuring that a software system meets a user's.
Software Testing Verification and validation planning Software inspections Software Inspection vs. Testing Automated static analysis Cleanroom software.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Verification and Validation l Assuring that a software system meets a user's.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Verification and Validation.
Adaptive Processes © Adaptive Processes Simpler, Faster, Better Verification and Validation Assuring that a software system meets a user's needs.
Dr. Tom WayCSC Code Reviews & Inspections CSC 4700 Software Engineering.
Verification and Validation Chapter 22 of Ian Sommerville’s Software Engineering.
Verification and Validation Hoang Huu Hanh, Hue University hanh-at-hueuni.edu.vn.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 22 Slide 1 Verification and Validation Slightly adapted by Anders Børjesson.
Chapter 8 – Software Testing Lecture 1 1Chapter 8 Software testing The bearing of a child takes nine months, no matter how many women are assigned. Many.
Software testing techniques 2.Verification and validation From I. Sommerville textbook Kaunas University of Technology.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Verification and Validation l Assuring that a software system meets a user's.
Software Testing Testing types Testing strategy Testing principles.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Chapter 19 Verification and Validation.
CS.436 Software Engineering By Ajarn..Sutapart Sappajak,METC,MSIT Chapter 13 Verification and validation Slide 1 1 Chapter 13 Verification and Validation.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Software Verification, Validation and Testing.
SoftwareVerification and Validation
This chapter is extracted from Sommerville’s slides. Textbook chapter
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Chapter 19 Verification and Validation.
Verification and Validation
Ch 22 Verification and Validation
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Bzupages.com Verification and Validation.
CHAPTER 9: VERIFICATION AND VALIDATION 1. Objectives  To introduce software verification and validation and to discuss the distinction between them 
Verification and Validation Assuring that a software system meets a user's needs.
Chapter 12: Software Inspection Omar Meqdadi SE 3860 Lecture 12 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Software Engineering, 8th edition Chapter 22 1 Courtesy: ©Ian Somerville 2006 April 27 th, 2009 Lecture # 19 Verification and Validation.
Verification and Validation Assuring that a software system meets a user's needs.
©Ian Sommerville Software Engineering, 7th edition. Chapter 22 Slide 1 Verification and Validation with edits by Dan Fleck Coming up: Objectives.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Verification and Validation with edits by Dan Fleck.
This chapter is extracted from Sommerville’s slides. Textbook chapter 22 1 Chapter 8 Validation and Verification 1.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Software inspections l Involve people examining the source representation with.
References & User group Reference: Software Testing and Analysis Mauro Pezze Software Engineering Ian Sommerville Eight Edition (2007) User group:
Lecturer: Eng. Mohamed Adam Isak PH.D Researcher in CS M.Sc. and B.Sc. of Information Technology Engineering, Lecturer in University of Somalia and Mogadishu.
Verification vs. Validation Verification: "Are we building the product right?" The software should conform to its specification.The software should conform.
Pradeep Konduri Niranjan Rao Julapelly.  Introduction and Overview  Verification Vs Validation  Process  Goals  Confidence  Role of V&V in different.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Verification and Validation l Assuring that a software system meets a user's.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 22 Slide 1 Verification and Validation.
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini XVII. Verification and Validation.
Verification and Validation. Topics covered l Verification and validation planning l Program Testing l Software inspections.
Verification and Validation
Verification and Validation
Software Verification and Validation
CSC 480 Software Engineering
Verification and Validation
Verification & Validation
Verification and Validation
Verification and Validation
Verification and Validation
Verification and Validation Unit Testing
Verification & Validation
Software Engineering S o f t w a r e T e s t i n g Chapter 8
Verification and Validation
Chapter 7 Software Testing.
Presentation transcript:

Verification and Validation Yonsei University 2 nd Semester, 2014 Sanghyun Park

Topics Covered  Planning Verification And Validation  Software Inspections  Automated Static Analysis

Verification Vs. Validation  Verification  “Are we building the product right?”  The software should conform to its specification  Validation  “Are we building the right product?”  The software should do what the user really requires

V & V Goals  Verification and validation should establish confidence that the software fits for purpose  This does NOT mean completely free of defects  Rather, it must be good enough for its intended use and the type of use will determine the degree of confidence that is needed

V & V Confidence  The level of required confidence depends on the system’s purpose, the expectations of the system users and the current marketing environment for the system  Software function  How critical is the software to an organization?  User expectations  Users may have low expectations of certain kinds of software  Marketing environment  Getting a product to market early may be more important than finding defects in the program

Two V & V Techniques  Software inspections  Analyze and check system representations such as the requirement document, design diagrams, and the program source code  Static techniques as they do not require the system to be executed  Software testing  Involves executing an implementation of the software with test data and examining the outputs of the software and its operational behaviour  Dynamic techniques as it works with an executable representation of the system

Static And Dynamic V & V Formal specification High-level design Requirement specification Detailed design Software inspections Program Prototype Software testing

Types Of Testing  Defect testing  Tests designed to discover system defects  A successful defect test is one which reveals the presence of defects in a system  Validation testing  Intended to show that the software is what the customer wants – that it meets its requirement  A successful test is one that shows that a requirement has been properly implemented

Testing And Debugging  Defect testing and debugging are distinct processes  Defect testing is a process that establishes the existence of defects in a software system  Debugging is a process that locates and corrects these defects the debugging process

V & V Planning  Careful planning is required to get the most out of inspections and testing, and to control the costs of the V & V process  Planning should start early in the development process  Planning should decide on the balance between static and dynamic approaches

Test Plans As A Link Between Development and Testing t

Software Inspections  Involve people examining the source representation with the aim of discovering anomalies and defects  Do not require execution of a system so may be used before implementation  May be applied to any representation of the system (requirements, design, configuration data, etc.)  Very effective way for discovering errors

Inspection Success  Two reasons why inspections are usually more effective than testing for discovering defects:  Many different defects may be discovered in a single inspection. In testing, one defect may mask another so several executions are required  Reviewers reuse domain and programming knowledge so they are likely to have seen the types of error that commonly arise in particular programming languages and in particular types of application

Program Inspections  Intended explicitly for defect DETECTION (not correction)  Defects may be logical errors, anomalies in the code that might indicate an erroneous condition (e.g. an uninitialized variable) or non-compliance with standards

Inspection Pre-conditions  A precise specification of the code to be inspected must be available  The members of the inspection team must be familiar with the organizational standards  An up-to-date, syntactically correct version of the code must be available

The Inspection Process

Inspection Checklists  Checklist of common errors should be used to drive the inspection  Checklist varies according to programming language because of the different levels of checking provided by the language compiler  The ‘weaker’ the type checking, the ‘larger’ the checklist  Examples: Initialization, constant naming, loop termination, array bounds, etc.

Inspection Rate  About 500 source code statements per hour during overview stage  About 125 source code statements per hour during individual preparation  From 90 to 125 statements per hour during the meeting  Inspection is therefore an expensive process

Automated Static Analysis  Static program analyzers are software tools which scan the source text of a program and detect possible faults and anomalies  They parse the program text and then detect whether or not statements are well formed, make inferences about the control flow in the program, and in many cases, compute the set of all possible values for program data  Very effective as an aid to inspections. A supplement to but not a replacement for inspections

Automated Static Analysis Checks

LINT Static Analysis