The value of the marker variable v satisfies the
inequality 1
≤
v
≤
2. Only during this continuous
time interval is the event available to the process and
its environment. A process is considered to be the
STOP process if it cannot engage in any communi-
cation or synchronize in any event within the inter-
val that precedes the event.
-The enabling intervals can also be defined in
terms of functions over a set of marker variables,
P = ... E.P’ . E = {s | s
∈
rel(x, v)}
The bound variable x sets the upper limit of the
interval. If the preceding event occurs at time t
0
, then
rel(x,v) = [v-t
0,
x+v-t
0
, ], since the times for events
are absolute and the times for intervals are relative to
the preceding event. When there are no marker vari-
ables referenced, the enabling interval is defined
relative to the immediate preceding event.
-Finally, it should be noted that only determinis-
tic processes can be described in CSP+T formal de-
scription language.
In order to obtain a CSP+T model of the system,
it is necessary to represent every analysis entity of
the System Requirements Model (SRM) by a class
of CSP+T processes. Following this approach, we
intend to write a process CSP+T prototype for every
DTP, CTP, DS, CS, continuous data flow, etc.
3 A FORMAL SPECIFICATION
FROM THE SRM
A series of transformation rules will allow us to cre-
ate a CSP+T model for every transformation scheme
that appears in any diagram of the SRM.
Definition 1. Given the set of SA/RT analysis
entities E, proc an injective application, such that
P= proc(E) ∈ CSP +T, we define,
Interface(P)
⊆
comm_act(P) – {
τ
},
as a set of actions that model the data or control
flows on which the analysis entity interacts with its
environment. P is a syntactically correct process
term of CSP+T that models the entity E.
Modelling process interface (rule 1). inter-
face(P) is made up of an input communication sym-
bol for every entity O, which is the origin of a com-
munication towards P, and, vice-versa, of an output
communication for every destination entity D, where
O and D are analysis entities with the only limitation
being that both of them cannot be of type DS.
Renaming is obviously necessary when several
entities D
1
, D
2
, …, D
n
on a DFD accept the same
input flow and, vice-versa, when several entities, O
1
,
O
2
, …, O
n
accept the same output flow, as otherwise
the CSP communications could deadlock. The con-
trol transformation process (CTP) interface is mod-
elled in the same way by including events with a
special meaning in comm_act. These are called e, d,
t, after the SA/RT synchronization events enable,
disable, trigger, that a CTP uses to control its DTPs.
Modelling continuous data flows (rule 2). Con-
tinuous data flows cannot be directly modelled by
means of communication events in CSP+T, since in
the latter the communication is understood to be a
synchronous message passing between 2 processes
and a continuous flow of data denotes an uninter-
rupted communication between different processes.
It is therefore necessary to write an extra process
(termed S in the rule) for each continuous data flow.
Modelling State Transition Diagrams (rule 3).
Every CTP, called P, of the lower level in the SRM
hierarchy is represented by a unique STD from the
point of view of control specification. An STD can
be defined as a tuple (Q, C, A, T, q) in which:
− Q is a set of states.
− C is a set of conditions, i.e., every condition
denotes the occurrence of an external event, which
corresponds to an input flow of control in P, or to
the occurrence of an internal event which is different
from any internal control flow in P, such as the in-
ternal action τ.
− A is a set of actions. An action causes the exe-
cution of an activity in the system. It can be easily
identified since it corresponds to an output control
flow in a DTP, or to the occurrence of an internal
event of an STD.
− T is a set of transitions. A transition is a tuple
of the form (q
l
, c, a, q
2
) in which q
1
, q
2
∈
Q, c
∈
C or
is null, a
∈
A or is null, and its interpretation is: if in
state q
1
, condition c is satisfied, then action a will be
performed and also a change to state q
2
will occur.
Either c or a can be nul.
− q is the initial state of the STD and q
∈
Q.
The transition concept can be extended to spec-
ify timing constraints in the system by describing
enabling intervals and marker events.
Timing constraints. These constraints can be
described as a set R of tuples (e
1
, I, e
2
) in which e
1
∈
(C ∪A), and e
1
receives the name of the marker
event, I is a real number interval of the form [
α
,
β
],
where
α
,
β
∈
R
+
, and
α≤β
or I is an interval relative
to the preceding event or to the event e
1
. I(e
1
) de-
notes the interval I in the following text and e
2
∈
C
or e
2
∈
A receives the name of a restricted event.
The interpretation of a timing constraint R is as fol-
lows: event e
2
can only occur within the interval of
time I from the occurrence of event e
1
, where both
events can represent the satisfaction of a condition c
or the execution of an action a.
If the restricted event coincides with condition c,
this means that the condition is satisfied during the
time interval I to which it is restricted, the satisfac-
tion of the condition outside the interval not being
considered. In the case of the restricted event being
ICEIS 2005 - INFORMATION SYSTEMS ANALYSIS AND SPECIFICATION
68