Code Generation 2008 Programme Information
Session TitleSupporting the Model-driven Development of Component-based Adaptive Systems

Session Type Experience Report

Duration90 minutes

Session Description It is becoming common that systems are required to dynamically reconfigure and adapt according to context fluctuations during runtime. We will demonstrate Genie, a prototype tool that supports the modelling, generation, and operation of highly reconfigurable, component-based systems. Genie offers domain-specific languages (DSLs) for the modelling and generation of adaptive systems supported by the reflective middleware families. Genie has been implemented using MetaEdit+. We will showcase how Genie is used in two substantial case-studies:
  1. the development and operation of an adaptive flood warning system called GridStix which has been deployed in prototype form on the flood plain of the River Ribble in North Yorkshire, England.
  2. a service discovery application.
Adaptation in both applications is enabled by a reflective middleware platform. The approach that supports the Genie tool systematically promotes software reuse and the use of models as first class entities to raise the level of abstraction beyond coding, by specifying solutions using domain concepts. Moreover, the approach offers a structured management of variability. During the presentation, we will elaborate on the approach proposed and illustrate its implementation.

The speaker will also discuss how in the model-driven software development area, research and industrial efforts have focused primarily on using models at design, implementation, and deployment stages of development. The potential role and significant benefits of model-driven techniques for validating and monitoring run-time behaviour will also be described.

Speaker Nelly Bencomo is a Research Associate at Lancaster University where she is also finishing herPhD. Her PhD research explored how synergies between System Families, Model-Driven Engineering (MDE), and Generative Software Development (GSD) help to produce new development paradigms to support the life cycle including the phases design, programming, testing, deployment and also execution, of reflective middleware families. More information can be found at her web pages

Prof. Gordon Blair has contributed to the preparation of this session. Prof. Blair is a founding member of the Communications and Distributed Systems (CDS) activity. He currently holds a Chair in Distributed Systems at Lancaster and is Head Of Department in Computing. He is also an Adjunct Professor at the University of Tromsų in Norway and a Visiting Researcher at the Simula Research Laboratory in Oslo. He is on the steering committee of the ACM/ IFIP Middleware series of conferences and was General Chair for this event in 1998. He is also a PC member of other numerous major conferences and workshops on communications and distributed systems. He has been primarily responsible for a large number of research projects at Lancaster.

Intended Audience Beginner and upwards.