Logotype Mälardalenn University
This web site has been moved.
Please visit our new and improved web site at: http://www.es.mdh.se/
Startpage www.mdh.se

The Component Model and Development Environment and Process Research Directions

Researchers involved

Ivica Crnkovic (Professor), Jan Carlson (Senior Lecturer), Tomas Bures (PostDoc), Etienne Borde (PostDoc), Thomas Leveque (PostDoc), Severine Sentilles (PhD Student), Hans Hansson (Professor), Heinrich Schmidt (Adjunct Professor), Magnus Larsson (Adjunct Professor), Frank Lüders (Senior Lecturer), Antonio Cichetti (PostDoc), Mikael Åkerholm (PostDoc), Johan Fredriksson (PhD Student), Jayakanth Srinivasan (PhD Student), Markus Lindgren (PhD Student), Joakim Fröberg (PhD Student), Stig Larsson (PhD Student).

Context and research overview

The Component Model Research Direction has been responsible for developing ProCom, the component model that provides a basis on which a majority of PROGRESS activities build. A component model defines the nature of components, e.g., how they interact with each other, how they are specified and implemented, and how they can be composed into complex systems. The purpose of the Development Environment and Process Research Direction has been to develop a tool infrastructure with a set of basic tools and support for integration of other tools (provided by PROGRESS or externally), as well as guidelines for component-based development processes, and techniques for integrating such development in existing processes.

Major results

Highlight 1 - The ProCom component model [Show]

The component model provides a common basis for the activities in PROGRESS by establishing a common architectural model and defining the nature of components and their means for interaction. ProCom [1, 2] is a two-layered component model with two different notions of components and interaction patterns, addressing development both at the level of detailed control functionality and of whole distributed systems. Reuse is facilitated by a strong separation of component types and instances. The interplay between reusable components and dependencies to hardware devices has been specifically addressed [3].

Highlight 2 - Modeling and analysis support [Show]

The restricted execution semantics of ProCom, defined formally, provides the basis for detailed compositional analysis. An attribute framework [4] provides support for defining and managing in a consistent way the many functional and extra-functional component attributes used, and produced, by the different analysis techniques. The provided support includes evolution management [5] and refinement of values between hierarchically related entities [6]. Developed analysis methods include port type consistency checking and propagation, and model-level timing analysis [7]. In addition, a number of analysis techniques have been developed in cooperation with other research directions, for example error propagation, and simulation and checking of complex behavioral models.

Highlight 3 - Deployment modeling and synthesis [Show]

Runtime efficiency is addressed by a flexible synthesis mechanism that permits the developer to make trade-offs between efficiency and reuse by specifying for each architectural unit whether the generated code should be reusable in any context or optimized for maximum efficiency in the current context [8, 9]. A flattening mechanism has been developed that allows developers to select the appropriate trade-off between efficiency and reusability for individual parts of a system [10]. We have also developed the required modeling support to specify deployment decisions such as allocation of functionality to physical nodes [11].

Highlight 4 - PRIDE – the ProCom development environment [Show]

Save-IDE is the graphical development environment for SaveCCM, the predecessor of ProCom, partly developed during the first years of PROGRESS [12, 13]. Based on the experiences from Save-IDE, we developed the PRIDE tool suite [14], a publicly available (PRIDE is downloadable from www.idt.mdh.se/pride/) Eclipse based development environment supporting development using ProCom. PRIDE includes support for graphical architectural modeling of components and systems, analysis of behavior and timing, deployment modeling, code synthesis and reuse of components from component repositories. The current version of PRIDE includes graphical editors for modeling components and systems, component repository support, frameworks for managing analysis and attributes, model-level WCET analysis and fault propagation. It also includes basic support for deployment modeling and code synthesis.

Highlight 5 - Development processes for component-based embedded systems [Show]

We have investigated how CBSE is handled in current industrial processes [15], and the particular concerns when applying it in the intended domain of PROGRESS [16]. The core principles of the envisioned process for component based development of embedded systems have been formulated in the form of extensions to the well-known process model CMMI, focusing on how to exploit attribute meta-data to achieve a high level of project monitoring and control [17].

  • Mälardalen University |
  • Box 883 |
  • 721 23 Västerås/Eskilstuna |
  • 021-101300, 016-153600 |
  • webmaster |
  • Latest update: 2013.02.25