Configuration: a service needed in OROCOS
Christian Schlegel <[email protected]>
| Newsgroups | gmane.science.robotics.orocos.user |
|---|---|
| Organization | FAW Ulm |
| Message-ID | <[email protected]> |
> In order to prepare the meeting and the project, I now officially > invite everybody to start thinking about the strategic parts of the > project. I have some designs I would like to launch during the > following weeks; other people who have a broad and detailed vision on > some aspects of the software should also take the opportunity to > present them for open discussion on the mailinglist. Dear all, Just to pick up that call I would like to draw attention to the important aspect of the interaction of software frameworks and system architectures. In our opinion designing a software framework is not only implementing just another framework. In particular with respect to robotics we are convinced that such a framework has to provide structures to tailor module implementations to fit the system architecture. I do not believe that it makes sense to state a system architecture as guideline for a software framework. Rather I hold the view that there are many patterns needed all the time in all kinds of architectures. A flexible framework should support particularly suitable and often needed patterns. By designing our framework "SmartSoft" we have divided the provided patterns into classes like communication services, module configuration etc. Communication services are further divided into push and pull services, events etc. An often neglected aspect in many frameworks for example concerns module configuration and I would like to stress its importance. A configuration class for examples allows to select different activity states based on a finite state automaton. This automaton can be extended but has to provide a minimum set of states like error, deactivated etc. When one wants to deactivate a module at run time, it is the job of the configuration class within a module to reach the desired state in an ordered and safe way. This for example includes cancelling pending queries of the module etc. Therefore there is an interference between the configuration class and other communication mechanisms. Why do I think that the configuration class is so important ? Because it allows a clear semantic for activation and deactivation of modules which is the key to situation dependent activities of a complex system. And that is something needed in every architecture to arrange the concert of all kind of different modules. Christian Schlegel -- --------------------------------------------------------------------- Christian Schlegel FAW Ulm (Research Institute for Applied Knowledge Processing) PO Box 2060 D-89010 Ulm Germany Tel. : ++49 (731) 501 8949 Fax : ++49 (731) 501 999 email: [email protected] WWW : http://www.faw.uni-ulm.de/ ---------------------------------------------------------------------