Title: An Integrated Framework for Scenarios and State Machines
1An Integrated Framework forScenarios and State
Machines
Rance
Cleaveland
Department of Computer Science
University of Maryland, College
Park
- Bikram Sengupta
- IBM Research
- India
2Outline
- Background
- Motivation
- Triggered Message Sequence Charts (TMSCs)
- Communicating State Machines (CSMs)
- Acceptance Trees
- Combining TMSCs and CSMs
- An Integrated Framework
- Semantics
- Case Study
- Automated Resuscitation and Stabilization System
(ARSS) - Conclusions and Future Work
3Motivation
- Heterogeneous specifications, featuring a mixture
of high-level requirements and lower-level design
artifacts, are motivated by several development
methodologies - In spiral system development processes,
requirements elicitation and system design often
proceed hand-in-hand - Intermediate stages of refinement-based
strategies contain a mixture of design elements
and requirements - UML supports notations for both requirements
modeling and operational design - However, research in the area of heterogeneous
specifications has remained confined to the more
theoretical domains of process algebra, temporal
logic and mu-calculus - We need to explore how these ideas may be adapted
to more accessible notations used in practice - We propose a framework for heterogeneous system
specifications consisting of a mix of - Higher-level scenario-based requirements,
expressed as Triggered Message Sequence Charts
(TMSCs) - State-machine-based subsystem designs, given as
Communicating State Machines (CSMs)
4Triggered Message Sequence Charts (TMSCs)
Q
P
a
trigger
Conditional Scenario
b
action
terminates
extensible
Partial Scenario
5Communicating State Machines
A2
A1
6Acceptance Trees the must pre-order
- P ltmust Q, if Q is more deterministic than P
acceptance set
P1
P2
7Combining TMSCs and CSMs
- TMSCs and CSMs both specify system behavior in
terms of sequences of events that may occur - A scenario shows only one possible interaction
between instances, and is inherently incomplete - Conditional and partial TMSC scenarios make the
behavior even more incomplete - In CSMs, the individual behavior of each instance
is generally given over all interactions, hence
they are more complete - Any common account of TMSCs and CSMs should
- Be able to express both underspecified as well as
fully specified behavior in a uniform manner - Provide operators to weave together multiple
scenarios and to allow networks of CSMs to be
formed - Prescribe when a CSM correctly implements a
TMSC specification, or, more generally, when one
heterogeneous specification refines another - An acceptance tree-based framework will have the
right ingredients - Execution-based
- Behavior may be expressed at various levels of
detail through acceptance sets - Must-preorder may be used to check the
relationship between scenarios, state-machines,
and a mixture of these notations, once they are
expressed as acceptance trees
8Example From TMSCs to Acceptance Trees
abc
X
Y
9A Common Framework
- H M (single TMSC)
- S (single ISM)
- X (variable)
- H H (communicating
parallel comp) - H H (interleaving
parallel comp) - H H (delayed choice)
- H H (internal
choice) - H /\ H (logical AND)
- H H (sequential
composition) - recX . H (recursive
operation)
10Semantics of Heterogeneous Expressions
- Combine acceptance trees of sub-expressions
- Semantics is compositional
- If P ltmust Q then P op R ltmust Q op R
11Case Study Automated Resuscitation and
Stabilization System
12Initial System Requirements
RB M1 M2 RP M3 M4 RD M5 M6
BS RB RP RD
RS BS /\ T1
13Initial Design
C1
RB M1 M2 ltmust C1
C2
RB ltmust C1, RP ltmust C2, RD ltmust C3
BS RBRPRD ltmust C1C2C3
C3
14Intermediate Heterogeneous Design
Initial Design ID
C1C2C3 ltmust ID ltmust ID /\ T1
15Refined Design New Requirement
Refined Design RD
ID ltmust RD HS2 RD /\ T2
16Final Design
RD /\ T2 ltmust FD
RS BS /\ T1 ltmust C1C2C3 /\ T1
ltmust RD ltmust RD /\ T2 ltmust FD
17Conclusions
- Requirements and design phases often overlap in
practice - Need for a common framework that would allow
requirements and design notations to
inter-operate - We presented a framework for heterogeneous
specifications involving - Requirements expressed as TMSCs
- Design elements represented as CSMs
- Semantics is based on acceptance trees
- Precise notion of refinement in terms of the
must pre-order - Supports principled evolution of higher-level
requirements to lower-level operational
specifications - Future Work
- Extend framework to cater to other notations
- Synthesize state-machines from TMSC expressions