Plummeting hardware costs are leading to an explosion of interest in new applications of embedded systems. Component-based software development (CBSD) would be ideally suited to the development of families of flexible, adaptable embedded systems applications, but unfortunately the state-of-the-art does not support the special requirements of embedded applications, particularly meeting the sever resource-constraints and the expression and validation of non-functional constraints. PECOS seeks to enable CBSD for embedded systems by defining a meta model as well as a repository for components that reflects non-functional requirements, integrating these additional features in a graphical composition environment, and developing an ultra light component environment that allows to run the composed application on the embedded system.
The PECOS project aims to enable component-based software development for embedded systems. While focusing on architectural issues it touches upon the whole software development life cycle and addresses the major technological deficiencies of state-of-the-art component technology with respect to embedded systems by developing:
(i) a Component Model for embedded system components addressing behaviour specification and non-functional properties and constraints;
(ii) a Component Repository utilising this model, supporting a composition environment and interfacing to a component specification environment;
(iii) an interactive Composition Environment for composing embedded applications from components, validating functional (e.g. interfaces) and non-functional compositional constraints (e.g. power-consumption, code size), generating the application executable for the embedded device and monitoring their execution,(iv) an Ultra-light Component Environment to install, run, test, and tune component-based applications on resource limited embedded systems and enable their management. By providing a coherent approach and methodology for programming of component-based embedded systems PECOS enables an efficient and competitive embedded system development.
To achieve PECOS's objectives, the work plan comprises the following work packages with the focus on the user's needs, specification of components, construction of applications out of components, management of existing components and deployment of software components for embedded systems:
(i) Requirements and case study. The case study is used as basis for the requirements and for the validation of (ii) ... (iv). It is end user centric and concentrates on development of embedded devices for industrial automation;
(ii) Component Model and Repository. PECOS aims to apply, build upon and extends existing standard modelling and specification media (e.g. UML, OCL, XML, IDL). These (general) specification techniques will be investigated to identify their appropriateness to embedded system development. Wherever needed, enhancements will be suggested to facilitate the description of components and component architectures with emphasis on non-functional properties and constraints, such as real-time constraints, memory footprint, and run-time power consumption. A key deliverable will be a component repository to support the storage and retrieval of embedded system components conforming to the component model;
(iii) Composition Environment. A composition environment will be developed to support graphical composition of software components. This component environment will be able to check the non-functional properties and to retrieve and use components stored in the component repository;
(iv) Ultra-light component environment. This run-time environment will enable embedded component-based applications to run under very limited resources. Depending on the available resources of the embedded device this runtime system will provide component distribution and (un)installation, component versioning, and support for profiling/debugging. The elaborated results will be validated by an implementation of an embedded device for industrial automation. This case study will also demonstrate the benefits of component-based software development.
Consequently the following milestones reflect the major achievements of PECOS:
M1: Requirements of case-study (embedded devices for industrial automation);
M2: Component model (Meta model for component and architecture specification);
M3: Component repository prototype;
M4: Composition environment prototype;
M5: Ultra-light component environment (Java-based and C++/C-based prototypes);
M6: Embedded system prototype based on PECOS technology.
Funding SchemeCSC - Cost-sharing contracts
1181 NC Amstelveen