Composition of Subsystems
How to optimally compose subsystems into a larger system is the core activity of system developers, but is remains more of an art than of a science. The major challenge is to develop subsystems that are stable on their own, while still very willing to be part of a larger system. There are four different ways of composing software components:
- linking object classes by providing explicit references to each other:
- composing object classes without them knowing about each other
- composing components
- composing software services:
A composed system is stable if it can be used without the user having to know that it is a composed system in itself. Examples of commonly used compositions that are not stable are:
- Simulink blocks in feedback controllers: one often has to introduce explicit delay blocks; one cannot predict the overall performance on the basis of the performance of the individual blocks.
- Realtime aspects at the system level: only one of the components can really have the highest priority; schedulability of the activities in all components becomes exponentially harder to analyse, let alone to guarantee, when the number of components grows; IPC deadlocks become more likely, and more difficult to trace; formal verification becomes more difficult, since jitter and latency deteriorate in less predictable ways, compromising the ideal, abstract model of states with atomic and infinitely fast transitions and condition checks.
- Adding sensor processing or control blocks to a control loop: each new sensor can bring with it a device driver that requires a different sampling frequency, that provides a different spatial resolution, …
Read more about this topic: Robotics Middleware
Famous quotes containing the words composition of and/or composition:
“There was not a grain of poetry in the whole composition of Lord Fawn, and poetry was what her very soul craved;Mpoetry, together with houses, champagne, jewels, and admiration.”
—Anthony Trollope (18151882)
“If I dont write to empty my mind, I go mad. As to that regular, uninterrupted love of writing ... I do not understand it. I feel it as a torture, which I must get rid of, but never as a pleasure. On the contrary, I think composition a great pain.”
—George Gordon Noel Byron (17881824)