Projects - Ideals - Symposium 2007

The Project

Partners

People

Publications

Symposia

 


Ideals Final Symposium
Evolvability of Software Intensive Systems

December 18, 2007
Eindhoven, Netherlands

Overview of new methods, approaches and techniques for reducing software engineering effort and lead time in high-tech systems development

To view the program, click here
 

Ideals project
IDEALS is an applied research project that addresses problems with evolvability of embedded control systems in an industrial setting. The project is carried out by ASML, Delft University of Technology, Eindhoven University of Technology, University of Twente, Center for Mathematics and Computer Science and the Embedded Systems Institute. The project started in 2003 and will finish at the beginning of 2008. IDEALS is financially supported by the Netherlands Ministry of Economic Affairs.

Rationale Ideals project
Evolvability is one the most difficult challenges the high-tech industry is currently facing. The time and effort required to modify and extend a complex embedded systems is typically huge and unpredictable, thereby severely threatening time-to-market constraints. Consequently it is of increasing importance to make systems better evolvable. This is exactly the goal of the Ideals project.

During the symposium the IDEALS partners, and three external speakers, will present various concepts, methods and technologies to make embedded systems more evolvable. At the end of the symposium senior managers from high-tech industry and professors are invited in a panel discussion to give their opinion about the development and introduction of new Model Driven Engineering and Aspect Oriented Programming concepts.

New concepts in an industrial context
The effort and lead time to evolve the embedded control system of software-intensive high-tech systems is typically huge. In the IDEALS project we identified two major causes for this. The first one is concerned with similar code that recurs in many parts of the system, the so-called cross-cutting concerns. The second one is concerned with the lack of effective design abstractions.

Both the causes and the main solutions will be presented by researchers from the IDEALS project in cooperation with ASML engineers.

You will find dedicated sessions for:

Handling recurring code (Aspect Oriented Programming and Refactoring)

  • Analyzing the variability in large software implementations;
  • Discovering faults in exception handling as an example of recurring code;
  • Experiences with addressing reoccurring code at ASML.

Effective abstractions (Model Driven Engineering)

  • Embedded systems modeling, analysis and synthesis;
  • Checking consistency between design documentation and source code;
     
Guest speakers
To broaden the context, the following external speakers, with a research and/or industrial background, will present their knowledge and experience in the field of model driven engineering and aspect-oriented approaches.
 
Stephen J. Mellor (key note)

Stephen J. Mellor is an internationally recognized pioneer in creating effective, engineering approaches to software development. In 1985, he published the widely read Ward-Mellor trilogy “Structured Development for Real-Time Systems”, and in 1988, the first books defining object-oriented analysis. Stephen also published “Executable UML: A Foundation for Model-Driven Architecture” in 2002. His latest book “MDA Distilled: Principles of Model-Driven Architecture” was published in 2004. In 1985, he founded a company, Project Technology, Inc., that was sold to Mentor Graphics in 2004, where he became Chief Scientist of the Embedded Systems Division. He is now a consultant. He is active in the Object Management Group, chairing the consortium that added executable actions to the UML. He is now working on the executable UML foundation standard at the OMG.  Perhaps surprisingly, he is also a signatory to the Agile Manifesto. Stephen acts as Chair of the “IEEE Software” Advisory Board, and is an adjunct professor at the Australian National University.
 

Uwe Hohenstein, Siemens AG
Dr. Uwe Hohenstein is a senior research scientist in the Corporate Technology division within Siemens AG since 1989. His responsibility is to coach the efficient and effective use of various database technologies in modern software architectures. He was involved in several huge projects in the field of automation and telecommunication, e.g., defining database layers and improving performance. He did a lot of research in the area of database benchmarking, data migration, and federated database systems. His current research interests particularly comprise the use and applicability of Aspect-Orientation in the field of databases. He contributes to an industrial research project on Aspect-Oriented Software Development.
 
Thomas Cottenier, Motorola
Thomas Cottenier is a researcher in the area of software engineering for concurrent and distributed systems. For the past three years, Thomas has been implicated in the development of a platform that integrates Aspect-Oriented Software Development (AOSD) and Model-Driven Development for the development of network infrastructure control software at Motorola, Schaumburg, USA. Thomas has also been actively involved in the deployment of custom AOSD solutions in different business units at Motorola, including the Wireless Broadband division and the Mobile Devices division.
Thomas holds a PhD in Computer Science from the Illinois Institute of Technology, Chicago and an Electrical Engineering degree in telecom systems from the Université Libre de Bruxelles, Belgium.
 

Parallel sessions

 
Time table Ideals  symposium, December 18th , 2007
 
Time Topic Location Speaker
  9:30   9:45 Welcome Auditorium Ed Brinksma (ESI)
  9:45 10:00 Problem statement and project expectations Auditorium Tammo vd Berg (ASML)
Frans Beenker (ESI)
10:00 10:15 Symposium overview Auditorium Remco van Engelen (ASML)
10.15 11.00 Parallel session 1 (solutions in an industrial context)    
Analyzing the variability in large software implementations Auditorium Arie van Deursen (TU Delft & CWI)
Spreker ASML
Checking consistency between design documentation and source code Zernike Gurcan Gulesir (UT)
Spreker ASML
11.00 11.30 Break Röntgen  
11:30 12:15 Keynote speaker
The Gap Between Specification and Design
Auditorium Stephen J. Mellor
12:15 13:30 Lunch break + demos Röntgen  
13:30 14:15 Parallel session 2 (solutions in an industrial context)    
Discovering faults in exception handling as an example of recurring code Zeeman Magiel Bruntink (CWI)
Spreker ASML
Experiences with Addressing Crosscutting Concerns at ASML Zernicke Pascal Durr (UT)
Spreker ASML
Embedded Systems Modeling, Analysis and Synthesis  Auditorium Jeroen Voeten (ESI)
 Luc Engelen (TU/e)
Marc Hamilton (ASML)
14:15 15:00 Parallel session 3 (external speakers)    
  Motorola: Aspect-oriented software development and model-driven development for the development of network infrastructure control software at Motorola. Auditorium Thomas Cotteniers
  Siemens AG: Efficient and effective use of various aspect oriented technologies in modern software architectures. Zernike Uwe Hohenstein
15:00 15:40 Break Röntgen  
15:40 16:15 Panel discussion
Discussion with senior industrial management and professors about introduction and application of Model Driven Engineering and Aspect Oriented Programming in industry.
Auditorium Ed Brinksma (ESI)
16:15 16:30 Ideals impact, lessons learned and outlook Auditorium Tammo van den Berg (ASML)
16:30 16:40 Wrap-up + closure Auditorium Ed Brinksma (ESI)
16:40 17:30 Drinks Röntgen  
 
More information about the lectures
Analyzing the variability in large software implementations; Arie van Deursen (TU Delft & CWI)
Idioms-based implementations of crosscutting concerns, such as the return code idiom, often exhibit significant variability, despite the use of a prescribed idiom. This variability paralyses (automated) migration efforts. A method and various aspect-oriented software development techniques will be presented to prevent variability and support automated migration

Checking consistency between design documentation and source code; Gurcan Gulesir (UT)
The development and maintenance of today’s software systems is an increasingly effort-consuming and error-prone task. A major cause of this problem is the lack of formal and human-readable documentation of software design. In practice, software design is often informally documented (e.g. texts in a natural language, ‘boxes-and arrows’ diagrams without formal syntax and semantics, etc.), or not documented at all. Therefore, the design cannot be properly communicated between software engineers, it cannot be formally analyzed, and the conformance of an implementation to the design cannot be formally verified. A solution that consists of a graphical language and tooling to check the consistency between design and source code will be presented.

The Gap Between Specification and Design; Stephen J. Mellor
Whenever we build an abstract specification language, we lose some control over that which we have abstracted away. This poses difficulties when we desire such control, but are unwilling to lose the undoubted benefits of an abstract specification language.
This problem is greater when the gap between the specification and the eventual implementation is large, which is especially the case when defining the functional behaviour of an embedded system. At this stage, the differentiation between hardware and software has not (or should not have!) been made, and the specification of software or hardware optimizations is premature.
Instead, we can treat transformations as being of equal importance as the specification model. In this way, optimations can be embedded within the transformations and so close the gap between specification and design in a general manner.

Discovering faults in exception handling as an example of recurring code; Magiel Bruntink (CWI)
Exception handling is a key component of any reliable software system. This allows the system to detect errors, and react to them correspondingly. Despite its importance exception handling is often the least well understood, documented and tested part of the system. An approach and analysis tool will be presented to reduce the number of implementation faults related to exception handling.

Experiences with Addressing Crosscutting Concerns at ASML; Pascal Durr (UT)
In the early phases of the Ideals project, several crosscutting concerns were identified within the ASML software, such as tracing, contract enforcement and error handling. A case study and a prototype implementation were executed, which demonstrated the benefits of using Aspect-Oriented Programming to address these crosscutting concerns. As a result, ASML initiated a transfer project to mature the prototype into an industrial-strength implementation. In this presentation, we discuss this process, the resulting weaver implementation, and its current usage at ASML. We present the results of an experiment with 17 ASML software engineers to quantify the effectiveness of the solution. However, there were still remaining challenges with the application of Aspect-Oriented Programming: in particular, aspects may interfere with each other. We present an approach for the detection of behavioral conflicts that is based on a novel abstraction model for representing the behavior of advice. One of the benefits of the approach is that it neither requires the application programmers to deal with the conflict models, nor does it require a formal background for the aspect programmers.

Embedded Systems Modeling, Analysis and Synthesis; Jeroen Voeten (ESI), Luc van Engelen (TU/e), Marc Hamilton (ASML)
Model driven engineering (MDE) refers to the systematic use of models as primary engineering artifacts throughout the engineering lifecycle. In this chapter we will show how executable models can be used to aid the design process of a light control subsystem of a wafer scanner. An explicit distinction is made between the model of the application logic and the platform on which it is deployed. It will be shown how the performance of this subsystem can be predicted in an early phase of the design process, before the system is implemented in terms of hardware and software components. The executable model in addition allows a prototype software implementation to be derived from it automatically in a predictable way. The executable model is expressed in POOSL, a special-purpose modeling language targeting real-time embedded systems. To allow an embedding in a future MDE environment, an experiment is performed to express a similar model in the general-purpose modeling language UML from which the executable models can be derived through model transformations. These transformations further allow one to combine an application model created in UML with a platform model created in POOSL and analyze this combined model.

 

Location
The symposium will be held at Conference Center The Strip
on the
High Tech Campus,
Prof. Holstlaan 1,
5656 AA Eindhoven

To reach The High Tech Campus, follow this link, or check the location on Google Maps
GPS Location: N 51.4107° , E 5.4563°

Time
The symposium is on December 18th, 2007, from 9:30 AM am to 5:30 PM, with lunch at noon and drinks afterwards.

Cost and Registration
Attending the symposium is free of charge. The maximum number of participants is limited to 120.

Rregistration is closed and the maximum number of participants has been reached.