ESEC/FSE 2003 Logo ESEC/FSE 2003

Helsinki, Finland, September 1-5, 2003

Conference Chairs
Program Committee

Conference Venue
Photo Gallery
Social Activities

Important Dates
Call for Papers

Program Overview
Technical Program
Doctoral Symposium


Related Events



The ESEC/FSE 2003 tutorials will be held at Tieteiden talo (the House of Sciences) on September 1-2, 2003. Tieteiden talo is in the center of Helsinki, only 10 minutes walk from Marina Congress Center, the main location of the conference. The five ESEC/FSE 2003 tutorials are:

Below you'll find the tutorial abstracts.

Half Day Tutorial T1: Feature Oriented Programming and Product-Lines

The tutorial has been cancelled. The people registered for the tutorial will be contacted via e-mail.

Speaker: Don Batory, University of Texas at Austin
Date: September 1, 2003, morning (see the program overview)
Place: Helsinki, Finland

Feature Oriented Programming (FOP) is both a design methodology and supporting tools for program synthesis. The goal is to specify a target program in terms of the features that it offers, and to synthesize an efficient program that meets these specifications. FOP has been used to develop product-lines in widely varying domains, including compilers for extensible Java dialects, fire support simulators for the U.S. Army, network protocols, and program verification tools. AHEAD is a simple mathematical model of FOP that is based on step-wise refinement, a methodology for building programs by adding one feature at a time. The incremental units of implementation/design are refinements that encapsulate the implementation of an individual feature. AHEAD models of product-lines treat base programs as constants and program refinements as functions (that add a specified feature to the input program). Application designs are thus equations - compositions of functions and constants - that are amenable to optimization and analysis. This tutorial reviews basic results on FOP, including general models and tools for synthesizing a consistent set of code and non-code artifacts by composing refinements (cross-cuts), automatic algorithms for validating refinement compositions, synthesizing product-lines of product families (e.g., tool suites), and automatic algorithms for optimizing application designs (equations).

Half Day Tutorial T2: Software Architecture Reconstruction

Speaker: Claudio Riva, Nokia Research Center
Date: September 1, 2003 afternoon (see the program overview)
Place: Helsinki, Finland

Robust and clear software architecture is often the key discriminator for the success or failure of a software project. The description of software architecture should communicate the essential decisions that have been taken during the design of the software system. Architecture reconstruction is the reverse engineering activity that aims at recovering those decisions that either have been lost (because they have not been documented or the original developers have left) or are unknown (because they originate from the system's evolution). The reconstruction is performed by examining the available artifacts (documentation, source code, experts), simulating the system behavior with dynamic analysis techniques and inferring new architectural information that is not immediately evident. This tutorial covers software architecture reconstruction. It addresses, amongst others, the following questions: How do we identify architecturally significant information? How can we extract, analyze and present it? What are the critical issues that have to be considered? How do we manage the reconstruction process in a product family? What tools are available? The tutorial will address these and other questions that are relevant for the development of large and complex software systems. The purpose of this tutorial is to introduce participants to the state of the art in software architecture reconstruction.

Half Day Tutorial T3: Semantic Web and Formal Design Methods

The tutorial has been cancelled. The people registered for the tutorial will be contacted via e-mail.

Speaker: Jin Song Dong, National University of Singapore
Date: September 2, 2003 morning (see the program overview)
Place: Helsinki, Finland

Semantic Web (SW), commonly regarded as the next generation of the Web, is an emerging area from the Knowledge Representation and the Web Communities. The software engineering community can also play an important role in the SW development. For example, semantic web ontologies can be generated from formal requirement models. Formal design methods and tools can be used to facilitate the reasoning and consistency checking for SW. On the other hand, the diversity of various formal design techniques and the need for their effective combinations require an extensible and integrated supporting environment. The success of the Semantic Web may have a profound impact on the web environment for the formal design methods, especially for extending and integrating different formalisms. This tutorial will introduce Semantic Web and demonstrate the latest investigations on the links between Semantic Web and formal design methods.

Half Day Tutorial T4: Software Evolution

Speakers: Meir M. Lehman, Middlesex University; Juan Fernández Ramil, Open University
Date: September 2, 2003 afternoon (see the program overview)
Place: Helsinki, Finland

For real-world software to remain satisfactory to its stakeholders requires its continual enhancement and adaptation. Acceptance of this phenomenon, termed software evolution, as intrinsic to real world software has led to an increasing interest in disciplined and systematic planning, management and improvement of the evolution process. The tutorial will provide insight into why software evolution occurs, why it is inevitable and intrinsic, its impact on the software process and its products. Participants will acquire familiarity with relevant concepts that include the practical significance of the global process, its feedback nature, the laws of software evolution and the implications of all these. The tutorial will also review the metrics of software evolution, modelling evolution processes using black-box and/or white-box system-dynamics, process management and improvement, resource estimation in the evolution context, rules and guidelines for evolution management. A brief outline of a theory of software evolution will also be presented.

Full Day Tutorial T5: Testing Object-Oriented Software

Speakers: Mauro Pezzč, Universitŕ degli Studi di Milano Bicocca; Michal Young, University of Oregon
Date: September 2, 2003 (see the program overview)
Place: Helsinki, Finland

Software testing and analysis are key elements of software engineering research and practice. Object-oriented software presents some new challenges for testing. Several techniques have been described in the research literature, but unified treatments remain hard to find. This tutorial brings together process and technical aspects of testing in an overall coherent framework that considers what can be simply adapted from conventional test practices and what new and extended techniques are required. Topics include test planning, test design from specification and design documentation including UML, adapting design and code inspection to object-oriented software development, intra- and inter-class structural testing, testing programs with exception-handling and threading, test oracles for object-oriented programs, regression testing, and process improvement.

  ACM LogoSigsoft Logo CEPIS Logo TTL Logo Nokia Logo Academy of Finland Logo Helsinki Logo


Latest update August 23, 2003 by 'Jukka Viljamaa@cs Helsinki FI' (replace spaces with dots)