18-649 Project #4 Sample State Chart

Here is a very basic example of how to create a state-chart from time-triggered behavioral requirements.  This example is a very simplistic implementation of a proximity sensor on a parking-lot gate.

Note #1:  A note on transition conditions
You may have transition conditions that do not fit very well directly on the arcs themselves.  It is OK (and in most cases preferred) to list the transition conditions in a separate table.  In the example below we included it in the Transitions/States to Requirements Traceability table.  Keep in mind that if you choose to include the transition conditions on the arcs themselves it must be absolutely clear which conditions apply to each arc.

Note #2: Remember to number your arcs.

Note #3: A note on activities:
Activities that are only performed once on entry are prefaced with a *.
All other activities are performed continuously as long as the system remains in that state.


 

25. GateControl

Replication:

Instantiation:

Assumptions:

None

Input Interface:

Output Interface:

Internal State:

None

CONSTRAINTS:

None

TIME-TRIGGERED BEHAVIORS:

25.1     When CarPresent[x] is True, Gate[x] shall be commanded to Open.
25.2     When CarPresent[x] is False, Gate[x] shall be commanded to Close.


DoorControl
 

Traceaiblity from Transitions/States to Requirements (and Transition Conditions)

Transition

Requirement

Transition Conditions

GC.1

25.1

CarPresent[x] == True

GC.2

25.2

CarPresent[x] == False

State

Requirement

Activity

Gate Open

25.1

Continuous: Gate[x] = Open

Gate Closed

25.2

Continuous: Gate[x] = Close

 

Traceability from Requirements to Transitions/States

Behavior

State/Transition Arc

25.1

State Gate Open, GC.1

25.2

State Gate Closed, GC.2

 


Return to Project 4 home
Return to Course web page