Actors
actor model - an architectural template in which the system consists of a set of loosely coupled entities that interact through messaging.
An actor is a computational entity that, in response to a received message, can simultaneously:
- send a finite number of messages to other participants;
- create a finite number of new members;
- specify the behavior that will be used for the next message he receives.
One of the properties of such a system is that the spread of failure is reduced, and, as a result, individual entities become more reliable.
Erlang programming language has been specifically designed for telephone switches and supports the actor model.
State machines
A template that is commonly used in real time and with embedded software is government machines. State machines can be implemented on top of actors, but they also provide a mechanism for representing complex states and related behavior.
Finite state machines (FSM) are an opportunity, but they are quickly starting to become large and difficult to maintain due to State Explosion . A more expressive formalism that solves this problem is Hierarchical State Machines (HSM), as originally developed by David Harel .
A later implementation of the same semantics that are suitable for object-oriented design is the UML state machine, see section 15 of the UML specification . This defines the model for the final machines complete with the semantics of their implementation.
source share