Formal Methods and Testing: Possible Attributes for Success A. J. Cowling Department of Computer Science University of Sheffield.

Slides:



Advertisements
Similar presentations
Auto-Generation of Test Cases for Infinite States Reactive Systems Based on Symbolic Execution and Formula Rewriting Donghuo Chen School of Computer Science.
Advertisements

Formal Modelling of Reactive Agents as an aggregation of Simple Behaviours P.Kefalas Dept. of Computer Science 13 Tsimiski Str Thessaloniki Greece.
Ossi Taipale, Lappeenranta University of Technology
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
’05 Eur Ing Dr. A. J. (Tony) Cowling Senior Lecturer Verification and Testing Research Group Department of Computer Science, U. of Sheffield Homepages:
Train Control Language Teaching Computers Interlocking By: J. Endresen, E. Carlson, T. Moen1, K. J. Alme, Haugen, G. K. Olsen & A. Svendsen Synthesizing.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 23 Slide 1 Software testing.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 23 Slide 1 Software testing.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Process Models.
Department of CIS University of Pennsylvania 1/31/2001 Specification-based Protocol Testing Hyoung Seok Hong Oleg Sokolsky CSE 642.
How do we make sense of modeling and model analysis? Oleg Sokolsky Department of Computer and Information Science University of Pennsylvania Workshop on.
Physical Symbol System Hypothesis
1 CMSC 132: Object-Oriented Programming II Software Development III Department of Computer Science University of Maryland, College Park.
Maria-Florina Balcan A Theoretical Model for Learning from Labeled and Unlabeled Data Maria-Florina Balcan & Avrim Blum Carnegie Mellon University, Computer.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
5/24/011 Advanced Tool Integration for Embedded Systems Assurance Insup Lee Department of Computer and Information Science University of Pennsylvania.
Romaric GUILLERM Hamid DEMMOU LAAS-CNRS Nabil SADOU SUPELEC/IETR.
Software Testing Verification and validation planning Software inspections Software Inspection vs. Testing Automated static analysis Cleanroom software.
System/Software Testing
AMOST Experimental Comparison of Code-Based and Model-Based Test Prioritization Bogdan Korel Computer Science Department Illinois Institute of Technology.
Chapter 2 The process Process, Methods, and Tools
Objectives Understand the basic concepts and definitions relating to testing, like error, fault, failure, test case, test suite, test harness. Explore.
Compositional IS Development Framework Application Domain Application Domain Pre-existing components, legacy systems Extended for CD (ontologies) OAD Methods.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
CSC 480 Software Engineering Lecture 14 Oct 16, 2002.
Software Processes lecture 8. Topics covered Software process models Process iteration Process activities The Rational Unified Process Computer-aided.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Model-based Methods for Web Service Verification.
Towards a Formal Model of Context Awareness Mikkel Baun Kjærgaard Jonathan Bunde-Pedersen Department of Computer Science University of Aarhus.
University of Toronto Department of Computer Science © Steve Easterbrook. This presentation is available free for non-commercial use with attribution.
Framework for the Development and Testing of Dependable and Safety-Critical Systems IKTA 065/ Supported by the Information and Communication.
Department of CS and Mathematics, University of Pitesti State-based Testing is Functional Testing ! Florentin Ipate, Raluca Lefticaru University of Pitesti,
Lecture 7: Requirements Engineering
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Software Testing Reference: Software Engineering, Ian Sommerville, 6 th edition, Chapter 20.
Grey Box testing Tor Stålhane. What is Grey Box testing Grey Box testing is testing done with limited knowledge of the internal of the system. Grey Box.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Software Verification, Validation and Testing.
1 Introduction to Software Engineering Lecture 1.
A Static Approach to Consistency Verification of UML Models Andrea Baruzzo Department of Computer Science University of Udine MoDeV.
Lyra – A service-oriented and component-based method for the development of communicating systems (by Sari Leppänen, Nokia/NRC) Traditionally, the design,
Testing Techniques Software Testing Module ( ) Dr. Samer Hanna.
Universität Dortmund Chapter 6A: Validation Simulation and test pattern generation (TPG) EECE **** Embedded System Design.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 20 Slide 1 Defect testing l Testing programs to establish the presence of system defects.
Access Control Policy Tool (ACPT) Ensure the safety and flexibility in composing access control policies Current features: Allows policy authors to conveniently.
1 Quality Attributes of Requirements Documents Lecture # 25.
Towards Interoperability Test Generation of Time Dependent Protocols: a Case Study Zhiliang Wang, Jianping Wu, Xia Yin Department of Computer Science Tsinghua.
Open Incremental Model Checking (OIMC) and the Role of Contracts Model-Based Programming and Verification.
Policy Evaluation Testbed Vincent Hu Tom Karygiannis Steve Quirolgico NIST ITL PET Report May 4, 2010.
Winter 2011SEG Chapter 11 Chapter 1 (Part 1) Review from previous courses Subject 1: The Software Development Process.
CS451 Lecture 10: Software Testing Yugi Lee STB #555 (816)
Properties Incompleteness Evaluation by Functional Verification IEEE TRANSACTIONS ON COMPUTERS, VOL. 56, NO. 4, APRIL
Plan 1.Introduction a)What is a Program Fault? b)Deterministic/Non-Deterministic Programs 2.A Refinement Calculus 3.Relative Correctness for Non Deterministic.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
Quality Assurance in the Presence of Variability Kim Lauenroth, Andreas Metzger, Klaus Pohl Institute for Computer Science and Business Information Systems.
Duminda WijesekeraSWSE 623: Introduction1 Introduction to Formal and Semi- formal Methods Based on A Specifier's Introduction to Formal Methods (J. Wing)
IEEE TRANSACTIONS ON COMPUTERS, VOL. 56, NO. 4, APRIL 2007 P ROPERTIES I NCOMPLETENESS E VALUATION BY F UNCTIONAL V ERIFICATION 1.
Whole Test Suite Generation. Abstract Not all bugs lead to program crashes, and not always is there a formal specification to check the correctness of.
White-Box Testing Techniques I Prepared by Stephen M. Thebaut, Ph.D. University of Florida Software Testing and Verification Lecture 7.
Testing Overview Software Reliability Techniques Testing Concepts CEN 4010 Class 24 – 11/17.
Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Adaptive Choreographies Joint work with Mila Dalla Preda, Jacopo Mauro and Maurizio.
SOFTWARE TESTING LECTURE 9. OBSERVATIONS ABOUT TESTING “ Testing is the process of executing a program with the intention of finding errors. ” – Myers.
Defect testing Testing programs to establish the presence of system defects.
SOFTWARE TESTING AND QUALITY ASSURANCE. Software Testing.
GROUP MEMBERS AYAZ JAVED BITF06A002 SADAF SARFARAZ BITF06A003 SAMIN ATIQA BITF06A028 BILAL KHALID BITF06A042.
Testing Integral part of the software development process.
1 Testing Implementations Of Access Control Systems (New Proposal) Ammar Masood: Graduate Student Arif Ghafoor (ECE) and Aditya Mathur (CS) Purdue University,
Modelling and implementation of correct by construction healthcare workflows Petros Papapanagiotou Jacques Fleuriot This research is supported by EPSRC.
Topics  Direct Predicate Characterization as an evaluation method.  Implementation and Testing of the Approach.  Conclusions and Future Work.
SysML v2 Formalism: Requirements & Benefits
Presentation transcript:

Formal Methods and Testing: Possible Attributes for Success A. J. Cowling Department of Computer Science University of Sheffield

CSEE&T 2001University of Sheffield Department of Computer Science Rationale The Number of Different Methods Many formal and semi-formal methods exist New ones are still being created Their Usefulness Determining which are useful requires empirical work The number of methods would imply a lot of work Therefore priorities need to be set Technical Features Some methods appear to be more successful than others Possibly because of their technical features These would be more appropriate candidates for study

CSEE&T 2001University of Sheffield Department of Computer Science Role of Models Requirements Model Specification Model Design Model Implementation Model Development Process Required V & V Formal steps Testing

CSEE&T 2001University of Sheffield Department of Computer Science Testing and Models Basic Testing Methods Base the generation of test cases on one of these models –Black-box testing uses the specification model –White-box testing uses the implementation model Hybrid Testing Methods Combine the approaches – eg: –Black-box methods to generate the test sets –White-box methods to measure their coverage May provide more effective testing than individual basic methods –At least, according to some papers State-based Testing Uses state-machine models for specification and implementation Extended models (eg the X-machine) allow powerful results: –absence of faults up to some bounds, –under some assumptions, complete absence of faults

CSEE&T 2001University of Sheffield Department of Computer Science Key Formal Methods Model Checking Requires state-based specification models Shows whether required properties hold for the models Can handle very large systems (10^20 states) Machine Model Verification Uses state-based specification and implementation models (eg B) Can verify that implementation is consistent with specification Refinement Typically uses relational models (eg Z, VDM) Refinement steps produce correct-by-construction implementations Discontinuities in the models need to be accommodated –Retrenchment has been proposed for this

CSEE&T 2001University of Sheffield Department of Computer Science Attributes for Success Role of Models Successful approaches appear to all be model-based State machine models are particularly successful Extended state-machine models even more so Differences between Models The different stages require different models for one system Any form of V & V must accommodate these differences –ie must represent design transformations –currently an interest within model-driven architecture It appears that successful methods: –explicitly handle multiple models, and –explicitly represent the differences between them.