The development of the access control system is organized into three
phases that produce two prototypes.
Prototype 1: Event-based communication . A simple client
cation that tests the correct functioning of the communication and
synchronization mechanisms: broadcaster
listener and caller
Prototype 2: Graphical animation . The graphical application that animates
the access control system. Only one car is running within the system.
Prototype 1: Event-based communication
The first prototype identifies the functional requirements of the access
control system and the interaction patterns among the system components.
The goal is to identify, develop and test a standard architecture that can then
be customized for this case study and for its possible extensions.
The components of the access control system can be classified into two
Photocell, ticket dispenser and stopping bar play the role of servers. They
receive stimuli from the car and controller and notify state transitions
by raising events. Their dynamic behaviour consists in the graphical
animation of the physical devices.
The car and controller play the role of clients. They submit stimuli to the
physical devices and wait for the event they raise. The car's dynamic
simulates the behaviour of the driver, who conducts the car along the
access lane. His or her behaviour can be completely automated or can
respond to the command that the user submits through the graphical
interface. The controller dynamics implement the sequence of phases
described in Section 11.1.3.
Two cars might be present in the system simultaneously. In reality, we
can assume that outside the access lane there is a queue of cars waiting
to enter into the car parking area. Let's consider three cars arriving at the
area: a red car, a green car and a blue car. The behaviour of the queue is as
When the red car arrives, the semaphore is green. The car proceeds
within the access lane and the semaphore goes red.
When the green car arrives, the semaphore is red. It waits for the sema-
phore to go green.
When the blue car arrives, the green car is in front of it. The blue car waits
for the green car to proceed.
When the red car enters the car parking area, the semaphore goes green,
the green car proceeds and notifies the blue car.