Pecos Logo

IST Logo

PECOS: Pervasive Component Systems (IST-1999-20398)







PECOS Overview

Component-based software engineering is quickly becoming a mainstream approach to software development. Software for embedded systems, however, is typically monolithic and platform-dependent. These systems are hard to maintain, upgrade and customise, and they are almost impossible to port to other platforms. Component-based software engineering would bring a number of advantages to the embedded systems world, such as faster development times, the ability to secure investments through re-use of existing components, and the ability for domain experts to compose sophisticated embedded systems software from components at a high level of abstraction.

Unfortunately component-based software engineering cannot yet be easily applied to embedded systems development today for a number of reasons. Up to now, the mainstream IT players did not pay much attention to the (so far) relatively small embedded systems market and consequently did not provide it with suitable technologies or off-the-shelf software (such as operating systems). From a technical point of view, these choices were justified by considering the major characteristics of embedded devices, such as limited system resources (CPU power, memory, etc.) and man-machine interface functionality, the typically harsh environmental conditions, and the fact that the development and target systems are not the same.

The rapidly growing market share of embedded systems is changing the equation and making investment in component-based software engineering for embedded systems not only viable but also essential. The key for European industries to benefit from the increasingly powerful and less expensive harware, is the ability to develop and port embedded software more quickly and at acceptable costs. Vendors of embedded devices would benefit by being able to offers scalable product families, whose functionality could be tailored by flexible composition of reusable building blocks. These families are differentiated by the performance of the hardware and the provided functionality, but are based on reuse of many identical software components. All this requires that the embedded systems software be modular and composed of loosely coupled, largely self-sufficient, and independently deployable software components.

The goal of PECOS is to enable component-based software development of embedded systems by providing an environment that supports the specification, composition, configuration checking, and deployment of embedded systems built from software components. While focusing on architectural issues, it touches upon the whole software development cycle and addresses the major technological deficiencies of state-of-art component technology with respect to embedded systems by developing:

  • a Component Model for embedded system components addressing behaviour specification and non-functional properties and constraints,
  • a Composition Language based on this model, for specifying components and their compositions, and which supports and interfaces to a composition environment,
  • a 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,
  • an Ultra-light Component Environment to install, run, test, and tune component-based applications on resource-limited embedded systems and enable their management.

Back to Top

Last modified: 2002-09-23