Abstract

The tutorial presents how software frameworks can be developed for embedded systems. The Software Research Lab has successfully completed an ambitious project under a research contract for the European Space Agency and Nokia Research. The resulting framework for satellite control systems is innovative in the methodology used to design it, in the architectural solutions it proposes, and in targeting a domain that of embedded, mission-critical, hard real-time systems that has been comparatively neglected in framework research so far. The tutorial advocates the view that frameworks are artefacts offering three types of constructs to application developers: abstract interfaces, domainspecific design patterns and components. It then proceeds to describe the architecture of the framework. Inspiration for its design was drawn from an analysis of Real Time Operating Systems (RTOS) taken as models for reusable components in the embedded field. It is argued that satellite control systems can be conceptualized as collections of functionality managers similar to RTOS's and that the framework can be seen as a domain-specific extension to the operating system. This analysis of the framework architecture shows that design patterns and abstract interfaces, rather than concrete components, are the true foundation of a framework. This insight was used to propose a design process for frameworks that hinges on the division of the framework into so-called framelets. Framelets are units of design that simplify framework development by partitioning the space of designpatterns and abstract interfaces. They are to frameworks what subsystems are to individual applications. The experience from using the framelet approach in the satellite control system project is also presented. Finally, the constraints imposed on the framework architecture by the real-time character of satellite systems are discussed and it is argued that the proposed framework separates the functional architecture from scheduling issues.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.