Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008.

Slides:



Advertisements
Similar presentations
The Quest for Correctness Joseph Sifakis VERIMAG Laboratory 2nd Sogeti Testing Academy April 29th 2009.
Advertisements

Model Checking for an Executable Subset of UML Fei Xie 1, Vladimir Levin 2, and James C. Browne 1 1 Dept. of Computer Sciences, UT at Austin 2 Bell Laboratories,
The cardiac pacemaker – SystemJ versus Safety Critical Java Heejong Park, Avinash Malik, Muhammad Nadeem, and Zoran Salcic. University of Auckland, NZ.
Simulation Verification of Different Constraints in System Level Design in SystemC Piyush Ranjan Satapathy CS220 Class Project Presentation.
UPPAAL Introduction Chien-Liang Chen.
UPPAAL Andreas Hadiyono Arrummaisha Adrifina Harya Iswara Aditya Wibowo Juwita Utami Putri.
CSE 522 UPPAAL – A Model Checking Tool Computer Science & Engineering Department Arizona State University Tempe, AZ Dr. Yann-Hang Lee
Run Time Monitoring of Reactive System Models Mikhail Auguston Naval Postgraduate School Mark Trakhtenbrot Holon Academic Institute of.
1 Simulator-Model Checker for Reactive Real-Time Abstract State Machines Anatol Slissenko University Paris 12 Pavel Vasilyev University Paris 12 University.
Automatic Verification of Component-Based Real-Time CORBA Applications Gabor Madl Sherif Abdelwahed
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Spin Tutorial (some verification options). Assertion is always executable and has no other effect on the state of the system than to change the local.
PTIDES: Programming Temporally Integrated Distributed Embedded Systems Yang Zhao, EECS, UC Berkeley Edward A. Lee, EECS, UC Berkeley Jie Liu, Microsoft.
Temporal Specification Chris Patel Vinay Viswanathan.
Ordering and Consistent Cuts Presented By Biswanath Panda.
Causality Interface  Declares the dependency that output events have on input events.  D is an ordered set associated with the min ( ) and plus ( ) operators.
Model Checking. Used in studying behaviors of reactive systems Typically involves three steps: Create a finite state model (FSM) of the system design.
Chess Review November 21, 2005 Berkeley, CA Edited and presented by A Semantic Unit for Timed Automata Based Modeling Languages Kai Chen ISIS, Vanderbilt.
Simulation.
Models of Computation for Embedded System Design Alvise Bonivento.
Specification Formalisms Book: Chapter 5. Properties of formalisms Formal. Unique interpretation. Intuitive. Simple to understand (visual). Succinct.
1 Ivan Lanese Computer Science Department University of Bologna Italy Concurrent and located synchronizations in π-calculus.
Presenter: PCLee Design Automation Conference, ASP-DAC '07. Asia and South Pacific.
Verifying Distributed Real-time Properties of Embedded Systems via Graph Transformations and Model Checking Gabor Madl
Chess Review May 11, 2005 Berkeley, CA Formal Semantics of Metamodeling Frameworks Ethan Jackson ISIS, Vanderbilt University Semantic Anchoring Infrastructure.
November 18, 2004 Embedded System Design Flow Arkadeb Ghosal Alessandro Pinto Daniele Gasperini Alberto Sangiovanni-Vincentelli
CprE 458/558: Real-Time Systems
End-to-End Design of Embedded Real-Time Systems Kang G. Shin Real-Time Computing Laboratory EECS Department The University of Michigan Ann Arbor, MI
A Mystery Esterel –small no type inference, subtyping, … no recursion, functions, … no pointers, malloc, GC, … no complex data structures, libraries,
Department of Computer Science 1 CSS 496 Business Process Re-engineering for BS(CS)
CSC 8310 Programming Languages Meeting 2 September 2/3, 2014.
Lecture 6 Template Semantics CS6133 Fall 2011 Software Specification and Verification.
(1) Modeling Digital Systems © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
Maria-Cristina Marinescu Martin Rinard Laboratory for Computer Science Massachusetts Institute of Technology A Synthesis Algorithm for Modular Design of.
Cheng/Dillon-Software Engineering: Formal Methods Model Checking.
Some Useful Circuits Lecture for CPSC 5155 Edward Bosworth, Ph.D. Computer Science Department Columbus State University.
Timed UML State Machines Ognyana Hristova Tutor: Priv.-Doz. Dr. Thomas Noll June, 2007.
UPPAAL Ghaith Haddad. Introduction UPPAAL is a tool for modeling, validation and verification of real-time systems. Appropriate for systems that can be.
Hardware Supported Time Synchronization in Multi-Core Architectures 林孟諭 Dept. of Electrical Engineering National Cheng Kung University Tainan, Taiwan,
Transformation of Timed Automata into Mixed Integer Linear Programs Sebastian Panek.
1 H ardware D escription L anguages Modeling Digital Systems.
- 1 - Embedded Systems - SDL Some general properties of languages 1. Synchronous vs. asynchronous languages Description of several processes in many languages.
Timed I/O Automata: A Mathematical Framework for Modeling and Analyzing Real-Time Systems Frits Vaandrager, University of Nijmegen joint work with Dilsun.
1 Capturing Requirements As Use Cases To be discussed –Artifacts created in the requirements workflow –Workers participating in the requirements workflow.
Communicating Real-Time State Machines (CRSM) State machines that communicate synchronously Unique unidirectional channels are used for the communication.
System Testing Beyond unit testing. 2 System Testing Of the three levels of testing, system level testing is closest to everyday experience We evaluate.
Describing Early Security Requirements using Use Case Maps Jameleddine Hassine King Fahd University of Petroleum and Minerals, Dhahran, Saudi Arabia
State Modeling. Introduction A state model describes the sequences of operations that occur in response to external stimuli. As opposed to what the operations.
HACNet Simulation-based Validation of Security Protocols Vinay Venkataraghavan Advisors: S.Nair, P.-M. Seidel HACNet Lab Computer Science and Engineering.
Modelling and Analysis of Time-related Properties in Web Service Compositions Raman KazhamiakinParitosh K. PandyaMarco Pistore
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
Properties as Processes : FORTE slide Properties as Processes: their Specification and Verification Joel Kelso and George Milne School of Computer.
Model Checking Lecture 1. Model checking, narrowly interpreted: Decision procedures for checking if a given Kripke structure is a model for a given formula.
Ordering of Events in Distributed Systems UNIVERSITY of WISCONSIN-MADISON Computer Sciences Department CS 739 Distributed Systems Andrea C. Arpaci-Dusseau.
Winter 2007SEG2101 Chapter 121 Chapter 12 Verification and Validation.
Operational Semantics Mooly Sagiv Tel Aviv University Sunday Scrieber 8 Monday Schrieber.
T imed Languages for Embedded Software Ethan Jackson Advisor: Dr. Janos Szitpanovits Institute for Software Integrated Systems Vanderbilt University.
Model Checking Lecture 1: Specification Tom Henzinger.
Introduction to distributed systems description relation to practice variables and communication primitives instructions states, actions and programs synchrony.
Simulation Examples And General Principles Part 2
CS Spring 2010 CS 414 – Multimedia Systems Design Lecture 35 – Synchronization (Part 3) Klara Nahrstedt Spring 2010.
State Modeling. Introduction A state model describes the sequences of operations that occur in response to external stimuli. As opposed to what the operations.
Distributed Systems Lecture 6 Global states and snapshots 1.
UPPAAL Real-Time Systems Lab. Seolyoung, Jeong.
SS 2017 Software Verification Timed Automata
Gabor Madl Ph.D. Candidate, UC Irvine Advisor: Nikil Dutt
On Using Linearly Priced Timed Automata for Flow Analysis
Model Checking for an Executable Subset of UML
CSEP590 – Model Checking and Automated Verification
Abstraction.
Presentation transcript:

Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008

2 Outline Early Stages of Development Process Time in Use Case Maps Modeling Time in Use Case Maps Syntax of Timed Use Case Maps Formal Semantics of Timed Use Case Maps  Clocked Transition System (CTS)  Timed Automata (TA) Conclusion

3 Early Stages of Development Process Describe system functional requirements Scenario driven approaches Reason about the system at a high level of abstraction Facilitate moving towards design Timing and performance issues are often overlooked during the initial system design Typically regarded as separate issues and therefore described in separate models

4 Use Case Maps Capture and integrate functional requirements Causal relationships between responsibilities but no information about the relative timing of different responsibilities Real-time Systems Requirements  Time, performance and functionalities are tightly related  Correctness depends on the satisfaction of timing constraints  Time expressed in milliseconds Business Process Requirements  Helps understand the scheduling/coordination between activities  Time expressed in terms of days/weeks Timing aspects must be integrated at early stages  Detecting errors through Simulation/Testing/Verification  Reduce the cost due to the late discovery of design flaws

5 Time in Use Case Maps A timer construct (clock symbol), used to select between a normal path and a timeout path.  No quantity in timer. More like a Boolean variable. Some constraints on time distances between two locations on UCM paths  Timestamps and response time requirements attached to scenario paths Performance attributes can be attached to a start point (arrival distribution, percentiles...etc.)

6 Standard time semantics Time-guarded behavior Global/Local time Urgency: Concept that gives priority to actions over time delay. Usually used as a property of transitions.  Eager transition: they are urgent as soon as they are enabled. Time cannot progress as long as they are enabled  Lazy transitions: They are never urgent. their execution can always wait  Delayable transitions: become urgent when they are enabled and progress of time would disable them Use Case Maps Do not have

7 1. Instantaneous (atomic) vs. Durational actions  Instantaneous semantics make modeling more compact and easier to reason about  Durational semantics help: Describe various system requirements Describe truly concurrent systems  Only responsibilities take time to execute  Control constructs (AND-Fork, OR-Fork,..etc.) are instantaneous 2. Absolute vs. Relative Time  Responsibilities use relative time  Start points use absolute time Modeling Time in Use Case Maps

8 3.Construct Enabling  Initiation and termination of enabling  R (T, T’). Responsibility R is enabled T time units after the completion of its predecessor. The enabling is offered for T’ time units  R(minDL,maxDL): Responsibility is enabled any time between minDL and maxDL after the completion of its predecessor. Upper bound maxDL is relative to the completion of the preceding construct. 4.Time Representation and Measurement  Interval-based: Measure the execution time of a responsibility  Point-based: Associated with time stamps Modeling Time in Use Case Maps

9 5.Discrete vs. Dense Time Domain 6.Global vs. Local Clocks  One Master Clock: Used within constraints associated with start points Used to measure the time between responsibilities (e.g. end-to-end scenarios)  Local Clocks Measure time taken by responsibilities Measure delay associated with responsibilities 7.Urgency  Start points and Responsibilities may be delayed  Control constructs are urgent  Transitions (edges between UCM constructs) are urgent Modeling Time in Use Case Maps

10 Timed Use Case Maps

11 Signature of Timed UCM Constructs

12 Timed UCM Formal Semantics Clocked Transition System (CTS)  Discrete Time Model Timed Automata (TA)  Dense Time Model The local clock y of the lamp is used to detect if the user was fast (y =5)

13 CTS-Based Semantics of Timed UCM

14 Configuration Transition Update system configuration defined by the three sets: H-taken, C-active and H-enabled. Triggered upon the timer expiration of either: One element of C-timers One element of T-trigger e3e2 e1 duration(a) = 2, delay(a) =0 duration(b) = 3, delay(b) =0 H-taken = {e1} C-active=[a] H-enabled = [e2] C-timers=[0] MClock = t H-taken = {e1,e2} C-active=[b] H-enabled = [e3] C-timers=[3] MClock = t+1 Configuration transition …

15 Time Transition Only MClock (incremented by a clock tick) and C-timers (decremented by a clock tick) are subject to change. Triggered when one of the following conditions is met: One responsibility, part of C-active, is still executing One construct is delayed e3e2 e1 duration(a) = 2, delay(a) =0 duration(b) = 3, delay(b) =0 H-taken = {e1} C-active=[a] H-enabled = [e2] C-timers=[2] MClock = t H-taken = {e1} C-active=[a] H-enabled = [e2] C-timers=[1] MClock = t+1 Time transition …

16 Concurrency Models and Time Evolution Interleaving Semantics At any given time t, only one construct may be executing. Sequences C-active and C-timers are reduced to one element True Concurrency Semantics At any given time t more than one responsibility may be executing. C-active, C-timers and T-trigger may have more than one element in presence of concurrent paths.

17 TA-based Semantics of Timed UCM Timed UCM specification is modeled as a network of concurrent timed automata. Associate a TA process to each timed UCM Construct Each process interacts with other processes through synchronization channels and read-write operations to global variables. The Set H of edges is used as synchronization channels

18 TA-based Semantics of Timed UCM Root start point Plug-in’ start point Start point triggered by the environment

19 Responsibility Atomic Responsibility with Delay Urgent Responsibility with Duration Responsibility with variable update Untimed Responsibility TA-based Semantics of Timed UCM

20 OR-Fork OR-Join AND-ForkAND-Join Synchronous Timer Stub Root map end pointPlugin end point TA-based Semantics of Timed UCM

21 TA-based Specification Optimization The transfer of control between sequential constructs occurs in a deterministic way (i.e., in complete order), UCM specification may be decomposed into a collection of sequential paths. Synchronization is resolved between sequential responsibilities:

22 Conclusion Extended Use Case Maps language with time Concise formal semantics for timed UCM models based on:  Clocked Transition Systems  Timed Automata CTS semantics are implemented using AsmL language  Simulation, step by step execution  Generation of timed traces TA semantics are implemented using UPPAAL model checker  Verification of Properties using Model checking Allows for formal Validation/Verification of timed UCM models

23 Step Semantics for Interleaving Model: Configuration Transitions

24 Step Semantics for Interleaving Model: Time Transition

25 Step Semantics for True Concurrency Model: Configuration Transitions

26 Step Semantics for True Concurrency Model: Time Transition