timed use case maps jameleddine hassine concordia university, montreal, canada urn meeting, ottawa,...
TRANSCRIPT
![Page 1: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/1.jpg)
Timed Use Case Maps
Jameleddine Hassine
Concordia University, Montreal, Canada
URN Meeting, Ottawa, January 16-18, 2008
![Page 2: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/2.jpg)
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
![Page 3: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/3.jpg)
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
![Page 4: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/4.jpg)
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
![Page 5: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/5.jpg)
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.)
![Page 6: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/6.jpg)
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
![Page 7: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/7.jpg)
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
![Page 8: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/8.jpg)
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
![Page 9: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/9.jpg)
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
![Page 10: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/10.jpg)
10
Timed Use Case Maps
![Page 11: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/11.jpg)
11
Signature of Timed UCM Constructs
![Page 12: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/12.jpg)
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) or slow (y>=5)
![Page 13: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/13.jpg)
13
CTS-Based Semantics of Timed UCM
![Page 14: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/14.jpg)
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
e3e2e1
duration(a) = 2, delay(a) =0duration(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…
![Page 15: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/15.jpg)
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
e3e2e1
duration(a) = 2, delay(a) =0duration(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…
![Page 16: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/16.jpg)
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.
![Page 17: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/17.jpg)
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
![Page 18: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/18.jpg)
18
TA-based Semantics of Timed UCM
Root start point
Plug-in’ start point
Start point triggered by the environment
||
![Page 19: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/19.jpg)
19
Responsibility
Atomic Responsibility with Delay
Urgent Responsibility with Duration
Responsibility with
variable update
Untimed Responsibility
TA-based Semantics of Timed UCM
![Page 20: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/20.jpg)
20
OR-Fork OR-Join
AND-Fork AND-Join
Synchronous Timer
Stub
Root map end point Plugin end point
TA-based Semantics of Timed UCM
![Page 21: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/21.jpg)
21
Segment 1: [SP1;R1;R2]Segment 2: [SP2;R5]Segment 3: [R3;EP1]Segment 4: [R4]Segment 5: [R6; EP2]
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:
![Page 22: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/22.jpg)
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
![Page 23: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/23.jpg)
23
Step Semantics for Interleaving Model:
Configuration Transitions
![Page 24: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/24.jpg)
24
Step Semantics for Interleaving Model:
Time Transition
![Page 25: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/25.jpg)
25
Step Semantics for True Concurrency Model:
Configuration Transitions
![Page 26: Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008](https://reader036.vdocument.in/reader036/viewer/2022062321/56649ee15503460f94bf2248/html5/thumbnails/26.jpg)
26
Step Semantics for True Concurrency Model:
Time Transition