Publications (Click on for abstracts and download links.)
| P13 |
 |
Component Based Middleware-Synthesis for AUTOSAR Basic Software. Dietmar Schreiner, Markus Schordan, Karl M. Göschka. Proceedings of the '12th IEEE International Symposium on Object/component/service-oriented Real-time distributed Computing (ISORC09)',
to appear, IEEE, 2009
Distributed real-time automotive embedded systems have to be highly dependable as well as cost-efficient due to the large number of manufactured units.
To close the gap between raising complexity and cutting costs, upcoming software standards like AUTOSAR introduce a clear separation of concerns into their
system architecture. An AUTOSAR application is built from components that deal with business logic only whereas infrastructural services are provided by
standardized middleware. Unfortunately, this middleware tends to be heavy-weight due to its coarse-grained layered design. By applying a component based design to
AUTOSAR's middleware, a custom-tailored version for each specific application and system node can be built to overcome this problem. This paper demonstrates how to
automatically synthesize component based middleware via the Connector Transformation: Component connectors in platform independent application models are utilized
to automatically assemble platform- and application specific middleware. As a result, AUTOSAR middleware becomes custom-tailored and hence light-weight and flexible.
In addition, the described synthesis algorithm is capable of incorporating timing annotations via interface contracts at model level, and thus reflects upcoming
ambitions to cover real-time constraints at middleware level within AUTOSAR. To prove our approach we successfully synthesized middleware for a demonstrator
application and compared it to its conventional counterpart.
Download: [to appear.]
|
|
| P12 |
 |
Adding Timing-Awareness to AUTOSAR Basic-Software – A Component Based Approach. Dietmar Schreiner, Markus Schordan, Jens Knoop. Proceedings of the '12th IEEE International Symposium on Object/component/service-oriented Real-time distributed Computing (ISORC09)',
to appear, IEEE, 2009
AUTOSAR as specified in its current version fosters timing-constraints at application level to support the development of real-time automotive applications. However,
the standard's actual specification does not consider any timing information for its Basic Software. In consequence, the over-all timing-behavior of software running
at a specific system node can not be calculated and thus validated at development-time. Even worse, any exchange or modification of Basic Software modules induces
unpredictable alteration in system timing, and may even lead to a severe miss of execution deadlines. Within this paper we solve this issue by using a component based
Basic Software architecture, as much as timing-aware software composition for Basic Software components. We therefore introduce timing contracts as enhancement for
existing interface contracts, specify a timing annotation language on a conceptual level, and demonstrate how to capitalize on our approach by calculating timings within
composed Basic Software architectures at development time.
Download: [to appear.]
|
|
| P11 |
 |
Source Code Based Component Recognition in Software Stacks for Embedded Systems. Dietmar Schreiner, Markus Schordan, Gergö Barany, Karl M. Göschka. Proceedings of the '2008 IEEE/ASME International Conference on Mechatronic and Embedded Systems and Applications (MESA08)',
ISBN 978-1-4244-2368-2, pp 463 - 468, IEEE, 2008
Current trends in embedded systems software aim at an increase of reusability, exchangeability and maintainability and thus at a significant reduction of
time- and costs-to-market. One way to reach these goals is the adaption of Component Based Software Engineering (CBSE) for the embedded systems domain.
Unfortunately most existing embedded systems applications are realized as coarse-grained layered or even monolithic software that can hardly be reused.
This paper demonstrates how to recognize reusable and exchangeable components within existing typically monolithic or stacked embedded systems software
via a semi-automatic analysis of the system's source code. The complexity of the proposed analysis is kept linear to code size
by utilizing expert-knowledge on the application-domain, and deployment specific configuration data. To prove our approach, a functional decomposition for an
existing automotive middleware stack is calculated and is finally compared to a human designed one.
Download: [pdf]
|
|
| P10 |
 |
Applying the Component Paradigm to AUTOSAR Basic Software. Dietmar Schreiner. In 'Programmiersprachen und Rechenkonzepte', Technischer Bericht des Instituts für Informatik der Christian-Albrechts Universität zu Kiel,
25. Workshop der GI-Fachgruppe 'Programmiersprachen und Rechenkonzepte'
Current trends in embedded systems software for the automotive domain aim at an increase of reusability, exchangeability and maintainability,
and thus at a significant reduction of time- and costs-to-market. One way to reach these goals is the adaption of Component Based Software Engineering (CBSE)
for resource constrained embedded systems. The Automotive Open System Architecture (AUTOSAR), an upcoming industry standard within the automotive domain, reflects this
fact by constituting CBSE as development paradigm for automotive applications: Application concerns are covered by software components, while infrastructural ones are
handled within layered component middleware - the AUTOSAR Runtime Environment (RTE) and the Basic Software (BSW). However, the AUTOSAR Basic Software itself is
specified as layered architecture that is only customizable on a coarse-grained level, and thus tends to be heavy-weight and less flexible. Therefore, this paper contributes
by applying the component paradigm to the AUTOSAR BSW, to improve the capabilities of standard compliant software systems. The redesigned BSW externally provides all interfaces
to the RTE prescribed by AUTOSAR, whereas the BSW's internal architecture is fully component based.
Download: [pdf]
|
|
| P09 |
 |
Building Component Based Software Connectors for Communication Middleware in Distributed Embedded Systems. Dietmar Schreiner and Karl M. Göschka. Proceedings of the '2007 ASME/IEEE International Conference on Mechatronic and Embedded Systems and Applications (MESA07)' at the '2007 ASME International Design Engineering Technical Conferences',
ASME/IEEE, ISBN: 0791838064; Paper-Nr. DETC2007-34558
Interaction in distributed component based architectures can become a rather complex and error prone issue. As it is good
practice to keep application concerns separated from infrastructural ones, component based applications typically rely on communication
middleware to cope with matters of distributed heterogeneous interaction. Unfortunately, generic middleware tends
to be monolithic, heavyweight software which is unacceptable in resource constrained embedded systems. Communication middleware
for distributed embedded systems has to be custom tailored to the application’s interaction needs and therefore shall be
as lightweight as possible. By applying the component paradigm to the communication middleware and introducing connectors as
first class architectural entities, it becomes feasible to automatically synthesize application specific middleware from the application’s
architectural models and a set of prefabricated communication primitives. We contribute by specifying these structural
designs for explicit connectors and by identifying the classes of their basic building blocks, thus providing a sound foundation
for middleware synthesis.
Download: [pdf]
|
|
| P08 |
 |
Refactoring an Automotive Embedded Software Stack using the Component-Based Paradigm. Thomas M. Galla, Dietmar Schreiner, Wolfgang Forster, Christoph Kutschera, Karl M. Göschka, Martin Horauer. Proceedings of the 'IEEE Second International Symposium on Industrial Embedded Systems (SIES07)',
ISBN 1-4244-0840-7, pp. 200 - 208, IEEE, 2007
The number of electronic systems in cars is continuously growing. Electronic systems, consisting of so-called
electronic control units (ECUs) interconnected by a communication network, account for up to 30% of a modern car’s worth.
Consequently, software plays an ever more important role, both for the implementation of functions and the infrastructure.
In order to benefit from the reuse of software modules, the major automotive companies have standardized a large number
of these modules in the context of the AUTOSAR consortium. In this paper we propose the refactoring of the AUTOSAR
stack of system software modules by applying the componentbased paradigm in order to increase the scalability of the
software stack according to the requirements of the application. We demonstrate the feasibility of this approach by performing
the refactoring of the modules FlexRay Driver and FlexRay Interface as an example and by deploying the resulting refactored
components in a sample automotive application. Finally we measure the execution time as well as the memory consumption
of the refactored components and compare these measures to the measures obtained from the corresponding ordinary AUTOSAR modules
Download: [pdf]
|
|
| P07 |
 |
A Component Model for the AUTOSAR Virtual Function Bus. Dietmar Schreiner and Karl M. Göschka. Proceedings of the ' 1st IEEE International Workshop on Software Engineering Challenges in the Automotive Domain (SECAD 2007)' at the '31st IEEE Computer Software and Applications Conference (COMPSAC 2007)', Volume 2, ISBN 978-0-7695-2870-0, pp. 635 - 641,
IEEE, 2007
To reduce time and cost to market of automotive software systems and simultaneously increase the products’
quality, the component paradigm has found broad acceptance within the automotive industry over the last few years. This
fact is reflected by upcoming domain specific software standards like AUTOSAR. In AUTOSAR application concerns are covered
by software components, while infrastructural ones are handled within layered component middleware. The so gained separation
of concerns leads to an increase in application quality, reusability and maintainability, and hence to a reduction of cost and
time to market. This paper contributes with the consequent application of the component paradigm to AUTOSAR’s layered
middleware, thereby gaining all benefits of CBSE not only for the application level but for the whole automotive software system.
The introduced component model for middleware components can flexibly be used to build resource-aware, AUTOSAR compliant,
component middleware for distributed automotive software systems and can seamlessly be integrated within the AUTOSAR
system architecture.
Download: [pdf]
|
|
| P06 |
 |
A Unified Benchmarking Process for Components in Automotive Embedded Systems Software. Wolfgang Forster and Christof Kutschera and Dietmar Schreiner and Karl M. Göschka. '10th IEEE International Symposium on Object/component/service-oriented Real-time distributed Computing' (ISORC 2007),
ISORC, ISBN 0-7695-2765-5, pp. 41 - 45, IEEE, 2007
During the last years, component based software development
has become a well accepted software engineering paradigm within the automotive industry. This fact is not
only reflected by upcoming development tools but also by newly arising automotive software standards. In component
based software engineering, applications are built by assembling small reusable building blocks, the components.
Typically more than one component implementation meets the application developer's requirements, so proper selection
of the assembled components becomes a key element of the whole procurement and engineering process. This
paper's contribution is twofold: First, a basic set of performance and dependability metrics and measures for automotive
components is identified. Second, a unified benchmarking process is proposed, that allows an unambiguous comparison
of distinct component implementations of a given component class.
Download: [pdf]
|
|
| P05 |
 |
Synthesizing Communication Middleware from Explicit Connectors in Component Based Distributed Architectures. Dietmar Schreiner and Karl M. Göschka. Proceedings of the 6th International Software Composition Symposium (SC 2007) at the 'European Joint Conferences on Theory and Practice of Software' (ETAPS 2007),
Lecture Notes in Computer Science, vol. 4829 / 2007, 'SC 2007', ISBN 978-3-540-77350-4, pp. 160 - 167, Springer Verlag, 2007
In component based software engineering, an application is build by composing trusted and reusable units of execution, the
components. A composition is formed by connecting two components' related interfaces. The point of connection, namely the connector, is an abstract
representation of their interaction. Most component models' implementations rely on extensive middleware, which handles component interaction and
hides matters of heterogeneity and distribution from the application components. In resource constrained embedded systems this middleware
and its resource demands are a key factor for the acceptance and usability of component based software. By addressing connectors as first class
architectural entities at model level, all program logic related to interaction can be located within them. Therefore the set of all explicit
connectors of a component architecture denotes the exact requirements of that application's communication and interaction needs.
We contribute by demonstrating how to use explicit connectors in model driven development to synthesize a custom tailored, component based
communication middleware. This synthesis is achieved by model transformations and optimizations using prefabricated basic building blocks for
communication primitives.
Download: [pdf]
|
|
| P04 |
 |
Modeling Component Based Embedded Systems Applications with Explicit Connectors in UML 2.0 (best poster award). Dietmar Schreiner and Karl M. Göschka. Proceedings of the '22nd Annual ACM Symposium on Applied Computing' (SAC 2007), Volume 2, ISBN 1-59593-480-4; pp. 1494 - 1495, ACM, 2007
When building a system by connecting components, the connection itself, the connector, becomes a hot-spot of abstraction
for any interaction. In contrary to most existing component models, we introduce explicit connectors as first
class architectural entities. They materialize detailed contracts regarding composition, deployment and interaction
and hence provide fine granular information on composed structures. Using explicit connectors results in customtailored
and consequently light-weight middleware, as any interaction logic is contained within them. Modeling component
architectures with explicit connectors allows the usage of off-the-shelf connector libraries. Thereby, developing
a distributed component based application becomes less complex and more competitive due to reduced costs and
increased reliability. We contribute by adopting a model driven development process for the use of explicit connectors
by extending the syntax of UML 2.0 and defining a set of required model transformations.
Download: [pdf]
[poster]
|
|
| P03 |
 |
Explicit Connectors in Component Based Software Engineering for Distributed Embedded Systems. Dietmar Schreiner and Karl M. Göschka. Proceedings of the '33rd International Conference on Current Trends in Theory and Practice of Computer Science' (SOFSEM 2007), Lecture Notes in Computer Science (ISSN 0302-9743), vol. 4362 / 2007, 'SOFSEM 2007: Theory and Practice of Computer Science, Proceedings, ISBN 3-540-69506-0, pp. 923 - 934, Springer Verlag, 2007
The increasing complexity of today's embedded systems applications imposes the requirements and constraints of distributed,
heterogeneous subsystem interaction to software engineers. These requirements are well met by the component based software engineering
paradigm: complex software is decomposed into coherent, interacting units of execution, the so called components. Connectors are a commonly
used abstraction to model the interaction between them. We consequently contribute with the application of explicit connectors for distributed
embedded systems software. Explicit connectors encapsulate the logic of distributed interaction, hence they provide well defined contracts
regarding properties of inter-component communication. Our approach allows model level validation of component composition and interaction
incorporating communication related constraints beyond simple interface matching. In addition, by using explicit connectors, the complexity
of application components is reduced without the need for any heavy weight middleware. In fact, the set of all deployed explicit connectors
forms the smallest possible, custom tailored middleware.
Download: [pdf]
|
|
| P02 |
 |
Model Level Validation of Component Based Software for Distributed Embedded Systems. Dietmar Schreiner and Karl M. Göschka. Poster at the '20th European Conference on Object-Oriented Programming (ECOOP 2006)', July 2006
When building a component based application for distributed embedded systems,
its overall behavior depends not only on the contracts applying to the
components and their interfaces, but even more so on explicit as well as
implicit connectors emerging from component composition, deployment and
interaction. Explicit connectors provide additional contracts on resource requirements
and information channels. We contribute by showing how to perform
model level validation of component and contract composition beyond
simple interface matching. Moreover, we discuss a classification of typical
component connectors to simplify application development for distributed
embedded systems. This avoids the need of extensive knowledge of communication
subsystems and the existence of any heavy weight middle-ware.
Download: [pdf]
|
|
| P01 |
 |
Organische Künstliche Intelligenz - Eine Architektur für verteilte Künstliche Intelligenzen am Beispiel Roboterfussball. Dietmar Schreiner. Master Thesis (german), June 2005
The significant increase in demand for mobile autonomous robots over the last few years has led to a boost in research and development in the fields of artificial
intelligence and robotics. This thesis proposes an architecture for a flexible extendable and scaleable artificial intelligence for robotic soccer as simplified environment of a
Multi Agent Domain. The architecture is based on the physiological functionality of the central nervous system of animals and therefore supports highly parallel,
loosely coupled, asynchronous subsystems. A software design paradigm has been developed to meet the requirements imposed by these considerations. The architecture provides
a launchpad for scientific research, and allows the development of state-of-the-art artificial intelligence for robotic soccer competitions.
Download: [pdf]
|
|
ACM, Springer-Verlag, and IEEE-mandated Copyright Notice
The documents listed above are included by the contributing authors as a means to ensure timely dissemination of scholarly and technical work on a non-commercial basis. Copyright and all rights therein are maintained by the authors or by other copyright holders, notwithstanding that they have offered their works here electronically. It is understood that all persons copying this information will adhere to the terms and constraints invoked by each author's copyright. These works may not be reposted without the explicit permission of the copyright holder. ACM, Springer-Verlag, and IEEE published documents have other restrictions given here, here, and here.
|
|