Abstract:

Due to the many possible interactions with an ever changing environ-
ment, combined with stringent requirements regarding temporal behaviour,
robustness, availability, and maintainability, large-scale embedded systems are
very complex in their design. Coordination models offer the potential of separat-
ing functional requirements from other aspects of system design. In this paper
we present a software architecture for large-scale embedded systems that incor-
porates an explicit coordination model. Conceptually the coordination model
consists of application processes that interact through a shared data space - no
direct interaction between processes is possible. Starting from this relatively
simple model we derive successive refinements of the model to meet the require-
ments that are typical for large-scale embedded systems. The software architec-
ture has been applied in the development of commercially available command-
and-control, and traffic management systems. Experience confirms that due to
the very high degree of modularity and maximal independence
between modules, these systems are relatively easy to develop and integrate
in an incremental way. Moreover, distribution of processes and data, fault-tolerant
behaviour, graceful degradation, and dynamic reconfiguration are directly sup-
ported by the architecture.

CV: