6 research outputs found
Towards Managing Variability in the Safety Design of an Automotive Hall Effect Sensor
ABSTRACT This paper discusses the merits and challenges of adopting software product line engineering (SPLE) as the main development process for an automotive Hall Effect sensor. This versatile component is integrated into a number of automotive applications with varying safety requirements (e.g., windshield wipers and brake pedals). This paper provides a detailed explanation as to why the process of safety assessment and verification of the Hall Effect sensor is currently cumbersome and repetitive: it must be repeated entirely for every automotive application in which the sensor is to be used. In addition, no support is given to the engineer to select and configure the appropriate safety solutions and to explain the safety implications of his decisions. To address these problems, we present a tailored SPLEbased approach that combines model-driven development with advanced model composition techniques for applying and reasoning about specific safety solutions. In addition, we provide insights about how this approach can reduce the overall complexity, improve reusability, and facilitate safety assessment of the Hall Effect sensor
Views: Customizable Abstractions for Context-Aware Applications in MANETs
Programming applications for highly dynamic environments such as mobile ad hoc networks (MANETs) is complex, since the working context of applications changes continuously. This paper presents "views" as abstractions for representing and maintaining context information, tailored to applications in MANETs. An application agent can define a view by declaratively describing the context information it is interested in. A supporting middleware platform, called ObjectPlaces, ensures that the information represented by a view continuously reflects the agent's context information, despite the dynamic situation in a MANET. We elaborate on the distributed protocol that ObjectPlaces uses to maintain the information of views, and give a thorough evaluation
ABSTRACT Timing driven architectural adaptation
Computing devices are becoming computing platforms. Not the operating system and hardware characteristics will determine the footprint of an application, but the resources that are available at runtime. To function well in both high and low resource availability situations, applications have to adapt themselves at runtime. This paper presents a light-weight mechanism for specifying timing driven adaptation at the architectural level. A key contribution is the introduction of architectural quality reflection and adaptation points. Reflection points encapsulate end-2-end monitoring of timing constraints. Adaptation points offer run-time adaptation based on component and component group reconfigurations. Because of the clear separation of reflection and adaptation, the logic that links constraint violations to adaptation actions can work on two different levels. Constraint violations can be explicitly linked to adaptation actions for inter-application adaptation, or they can trigger adaptation actions of other applications to free up resources. A special requirement of this logic is that it does not rely on resource profiling information or finegrained resource monitoring mechanisms. We will elaborate more on the details of these concepts and discuss their implementation and use on Draco, a Java based component platform