CAmkES: Development

Development of CAmkES-based Embedded Systems

As in general (non-embedded) component-based software development, the development of CAmkES-based embedded systems has four stages: design, implementation, deployment, and runtime. These are shown below.

Four stages of CAmkES based development
  • Design: At design time the functionality of a component is defined through an IDL (interface definition language) and an ADL (architecture description language). It could also be possible to define the non-functional requirements and properties (e.g., temporal requirements and properties) of components. The tools used in this stage include an IDL and ADL compiler to generate skeleton code for components and their compositions.
  • Implementation: At the implementation stage the component functionality is implemented based on skeleton code generated during the first stage.
  • Deployment: During deployment, CAmkES tools initilise the instance of a component. At the end of this stage, all the component, stub, and glue code is compiled and linked into executable images.
  • Run-time: The component code is loaded into the runtime environment for execution. Before this can happen a boot image file must be created using specific tools for this purpose. Once this image is booted component instances are created and initialised and the component-based system is started.