EMSOFT '02 Proceedings of the Second International Conference on Embedded Software
A data-centric approach to composing embedded, real-time software components
Journal of Systems and Software - Special issue: Automated component-based software engineering
Compositional reasoning for port-based distributed systems
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
Software Engineering for Experimental Robotics (Springer Tracts in Advanced Robotics)
Software Engineering for Experimental Robotics (Springer Tracts in Advanced Robotics)
GPCE '07 Proceedings of the 6th international conference on Generative programming and component engineering
Real-Time scheduling techniques for implementation synthesis from component-based software models
CBSE'05 Proceedings of the 8th international conference on Component-Based Software Engineering
Handling hardware heterogeneity through rich interfaces in a component model for autonomous robotics
SIMPAR'10 Proceedings of the Second international conference on Simulation, modeling, and programming for autonomous robots
Hi-index | 0.00 |
Component models for autonomous robots control architectures are much more constrained than traditional ones: obeying strict timing constraints, coping with a large spectrum of rapidly changing hardware (e.g. sensors and actuators), etc. Beyond introducing new concepts into components themselves, composition in such models must go much farther than the standard connection through method signature interfaces. Viewing components as full-fledged sensori-motor behaviors, our model follows the concept of rich interfaces introduced by Henzinger et al. to attach to each component all the necessary syntactical and behavioral information to make them externally composable. This paper presents two kinds of composition, parallel and by modes, their semantics, their compositionality properties and the impact of these on the composition model. A prototype implementation in Java is backed by a constructive semantics defined as a constraint system solved in this prototype with the ECLIPSe constraint programming system.