The aim of Component-Based Software Engineering is to create applications from reusable, exchangeable and con-nectable components. But current component models lack support for important concepts of distributed embedded real-time systems. In this field a component's non-functional properties, e.g. execution time and resource usage, are as important as its functionality. In addition the non-functional properties are influenced by the platform on which the component is executed. Therefore we propose a component model that separates the component's functionality from the platform-specific issues concurrency, synchronization, and distribution. We present a technique to describe the behavior of a component that is based on Use Case Maps (UCMs) and show how to deduce from these descriptions the behavior of an application that consists of connected components. In our model the UCMs also contain information on real-time requirements of the application. Moreover we show how to adapt our components to an execution platform and how to create real-time applications with predictable properties from these components.
[1]
Marco Spuri,et al.
Deadline Scheduling for Real-Time Systems: Edf and Related Algorithms
,
2013
.
[2]
Wolfgang Weck,et al.
A Plea for Grey-Box Components
,
1997
.
[3]
Alan Burns,et al.
Real-time systems and their programming languages
,
1986,
International computer science series.
[4]
Peter David Cornwell.
Reusable component engineering for hard real-time systems
,
1998
.
[5]
Stephan Reitzner.
Virtual synchronization: uncoupling synchronization annotations from synchronization code
,
1998,
SAC '98.
[6]
Bran Selic,et al.
Real-time object-oriented modeling
,
1994,
Wiley professional computing.