Verification & Validation

Slides:



Advertisements
Similar presentations
Computer Science Department
Advertisements

Ossi Taipale, Lappeenranta University of Technology
CSC 480 Software Engineering
© Chinese University, CSE Dept. Software Engineering / Software Engineering Topic 1: Software Engineering: A Preview Your Name: ____________________.
Reliability and Safety Lessons Learned. Ways to Prevent Problems Good computer systems Good computer systems Good training Good training Accountability.
Copyright © 2005 Department of Computer Science CPSC 641 Winter Simulation Validation Plan: –Discuss verification and validation –Define concepts.
Software Verification and Validation (V&V) By Roger U. Fujii Presented by Donovan Faustino.
C OMPUTER P ROGRAMMING 1 Introduction to Programming.
Do we need theoretical computer science in software engineering curriculum: an experience from Uni Novi Sad Bansko, August 28, 2013.
Chapter 8: Problem Solving
NASA Langley Research Center - 1Workshop on UQEE Prediction of Computational Quality for Aerospace Applications Michael J. Hemsch, James M. Luckring, Joseph.
Project Management Project Management involves the planning, monitoring, and control of the people, process, and events that occur as software evolves.
Lecture 1 What is Modeling? What is Modeling? Creating a simplified version of reality Working with this version to understand or control some.
S oftware Q uality A ssurance Part One Reviews and Inspections.
Scientific Programmes Committee Centre for Aerospace Systems Design & Engineering K. Sudhakar Department of Aerospace Engineering Indian Institute of Technology,
Software System Engineering: A tutorial
1 Chapter 5 Practice: A Generic View Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman.
Project Tracking. Questions... Why should we track a project that is underway? What aspects of a project need tracking?
Verification and Validation Overview References: Shach, Object Oriented and Classical Software Engineering Pressman, Software Engineering: a Practitioner’s.
Aircraft Design and an Engineer’s Approach to Software Testing Daniel Böhnke Integrated Aircraft Design Air Transportation Systems.
1 New Development Techniques: New Challenges for Verification and Validation Mats Heimdahl Critical Systems Research Group Department of Computer Science.
University of Virginia Software Development Processes (CS340 John Knight 2005) 1 Software Development Processes.
Slide 1V&V 10/2002 Software Quality Assurance Dr. Linda H. Rosenberg Assistant Director For Information Sciences Goddard Space Flight Center, NASA
RESEARCH IN MATHEMATİCS EDUCATION Karadeniz Technical University Fatih Faculty of Education Prof.Dr. Adnan Baki.
West Virginia University Towards Practical Software Reliability Assessment for IV&V Projects B. Cukic, E. Gunel, H. Singh, V. Cortellessa Department of.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
1 Introduction to Software Engineering Lecture 1.
For ABA Importance of Individual Subjects Enables applied behavior analysts to discover and refine effective interventions for socially significant behaviors.
Historical Aspects Origin of software engineering –NATO study group coined the term in 1967 Software crisis –Low quality, schedule delay, and cost overrun.
Formal Methods in Software Engineering
Program Development Cycle Modern software developers base many of their techniques on traditional approaches to mathematical problem solving. One such.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
SOFTWARE ENGINEERING1 Introduction. SOFTWARE ENGINEERING2 Software Q : If you have to write a 10,000 line program in C to solve a problem, how long will.
Computational Logic QMUL 26 Mar 04 Verification of Safety Critical Software Nick Tudor tel:
Chapter 12: Software Inspection Omar Meqdadi SE 3860 Lecture 12 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
1 Ch. 1: Software Development (Read) 5 Phases of Software Life Cycle: Problem Analysis and Specification Design Implementation (Coding) Testing, Execution.
MODES-650 Advanced System Simulation Presented by Olgun Karademirci VERIFICATION AND VALIDATION OF SIMULATION MODELS.
1-1 Software Development Objectives: Discuss the goals of software development Identify various aspects of software quality Examine two development life.
Software Development Problem Analysis and Specification Design Implementation (Coding) Testing, Execution and Debugging Maintenance.
Software Engineering. Acknowledgement Charles Moen Sharon White Bun Yue.
SOFTWARE ENGINEERING. Objectives Have a basic understanding of the origins of Software development, in particular the problems faced in the Software Crisis.
1 1 Slide Simulation Professor Ahmadi. 2 2 Slide Simulation Chapter Outline n Computer Simulation n Simulation Modeling n Random Variables and Pseudo-Random.
5 September 2002AIAA STC Meeting, Santa Fe, NM1 Verification and Validation for Computational Solid Mechanics Presentation to AIAA Structures Technical.
Computational Fluid Dynamics Lecture II Numerical Methods and Criteria for CFD Dr. Ugur GUVEN Professor of Aerospace Engineering.
Software Development Module Code: CST 240 Chapter 6: Software Maintenance Al Khawarizmi International College, AL AIN, U.A.E Lecturer: Karamath Ateeq.
A V&V Overview of the 31st Symposium on Naval Hydrodynamics
PREPARED BY G.VIJAYA KUMAR ASST.PROFESSOR
Introduction Edited by Enas Naffar using the following textbooks: - A concise introduction to Software Engineering - Software Engineering for students-
Testing and Debugging PPT By :Dr. R. Mall.
Lab Roles and Lab Report
Topic for Presentaion-2
Chemistry Chemistry.
Introduction SOFTWARE ENGINEERING.
Verification and Validation Overview
Chemistry Chemistry.
Introduction Edited by Enas Naffar using the following textbooks: - A concise introduction to Software Engineering - Software Engineering for students-
Chapter 10 Verification and Validation of Simulation Models
Introduction to science
Introduction to Software Testing
Verification and Validation Unit Testing
Chapter 9 – Software Evolution and Maintenance
CHAPTER 10 METHODOLOGIES FOR CUSTOM SOFTWARE DEVELOPMENT
Welcome to Corporate Training -1
Test Case Test case Describes an input Description and an expected output Description. Test case ID Section 1: Before execution Section 2: After execution.
Software Verification, Validation, and Acceptance Testing
Chapter 8 Software Evolution.
HHS Child Welfare National IT Managers' Meeting
Requirements Engineering
Logical Architecture & UML Package Diagrams
Presentation transcript:

Verification & Validation QIP Course on CFD June 2-6, 2003 K Sudhakar SKSane Amitay Isaacs Department of Aerospace Engineering Indian Institute of technology, Mumbai

Verification & Validation What? Why? When? How? Who?

Verification & Validation What? Verification & Validation No computer code can be proved to have no errors. But Can be proved wrong if evidence to this effect is collected. Process of increasing our confidence in results of a computation Practiced with rigour in critical applications. IV&V, ADA, Bangalore ISRO, DRDL, . . CFVDS - Centre for Formal Verification & Design of Software, IIT Bombay

Verification & Validation What? Verification & Validation Validation simple systems m c k Reality Validation Model Qualification Code Verification

What? Validation Validation - Is the correct model being solved? k c If resistance due to air is significant the model will be incorrect. How to confirm if model is good? Analytically integrate? Conduct experiments. Compare Possible only for simple Models. Verification - Is the model being solved correctly

Verification & Validation What? Verification & Validation Reality Model Code Verification Validation Qualification

Verification & Validation Why? Verification & Validation Affects critical performance Loss of life? Loss of prestige? Financial/Social loss Affects important performance Loss of revenue How frequently etc. Incorrect results Integrity Level scale of 0 to 4 0  No IV&V required …………… 4  rigorous IV&V required

Verification & Validation When? Verification & Validation Most effective if conducted in parallel with s/w development Concept V&V Requirements V&V Design V&V Implementation V&V Test V&V Installation & Checkout V&V Operation V&V Maintenance V&V

Verification & Validation When? Verification & Validation V&V are defined as the process of determining; ie. They are on-going activities No end point 0% 100% Confidence Cost Value Time

Verification & Validation How? Verification & Validation Are the results given by a computer program correct? How to investigate this? Any standard processes to perform V&V? IEEE Std 1012-1998, etc. Common sense, logic, discipline, . .

How? Verification Verification - Is the model being solved correctly? Solution Verification. Numerical techniques Sources of error - spatial & temporal discretisation, iterative convergence, round off ODE’s Time step adequate for all situations? Adaptive? PDEs round off, iterative convergence are better understood and can be addressed. Discretisation errors in PDE are less understood

How? Verification Verification - Is the model being solved correctly? Code Verification Coding language, Coding practices, . . . (S/W Engineering) Model to code translation Static & dynamic analysis. Statically unreachable code Dynamically unreachable code FTNCHK, FORCHEK etc.

How? Verification = Model Solution Code Answers from highly accurate solutions Analytical Benchmark Solution =

How? Verification Checks must cover all paths through the code? if (0<m=<0.9) then gama = 1.4 call abc (….) elseif (0.9<m<1.2) then gama =14. call def (. . . .) elseif (1.2=<m<2.0) call ghi ( ….) endif Verification checks m = 0.6, 0.8, 0.9, 1.3, 1.5, 2. Does not check one path. m = 0.6, 0.8, 0.9, 1.0, 1.3, 1.5, 2. Checks all paths

How? Validation Is the model correct? Conceptual Model Code Reality Results Experience Validation domain Simple systems Verification

Validation for Complex Systems How? Validation for Complex Systems Code Validation Experiments Outcome of Experiment Computational Predictions Model Experimental Prediction

Validation for Complex Systems How? Validation for Complex Systems Computational Predictions Code Computational Results of Exp outcome Model Difference Validation Experiments Outcome of Experiment

How? Validation Prediction Confidence? Predictive domain Validation domain Can validation domain cover the predictive requirements?

How? Validation x - Validation experiments x Predictive domain x Where to conduct experiments? How to assess predictive confidence?

How? Validation Computation Region 3 Region 1 Region 2 Validation Experiment Computation Region 1 Region 2 Region 3

How? Validation Design & Analysis of Computer Experiments Where to conduct computational & physical experiments for validation? How to build predictive models? How to assess predictive confidence? Computational results corrected using fixed no of physical experiments x Estimates of Predictive error

How? Validation = Real World Model Solution Answers from validation experiments Benchmark solutions Specially conducted Code Solution = Model

Verification & Validation Who? Verification & Validation Independent Verification & Validation (IV&V) Technical Independence. V&V done by people who are not involved in design & development Managerial Independence. An organization separate from that did design & development. Financial Independence. Budget for V&V is not in anyway controlled by those responsible to design & development.

Verification & Validation in CFD Less valued in CFD than in FEM (for historical reasons) AIAA Aerosp. Sciences Meeting & Exhibit 2002 DLR-F4 Wing Body 35 different CFD Calculations (Advanced research codes & commercial codes) After weeding out outliers this gave a standard deviation in CD = 0.0021 (for wind tunnel testing this figure is put at 0.0004)

Thank you

Coding Practice - Not Done! How? Coding Practice - Not Done! if (x) 100, 200, 300 200 if (y) 400, 500, 600 z= z +1 goto 750 500 xsq = x**2. goto 850 300 xcu = x**3 ….. t1 = a1*2. + b1 t2 = sqrt(t1)+c1 t3 = t2**1.3+b1 . . . real a(100) integer b(50) complex c(10) equivalence (a(1),b(1)),