ITA 09 Tutorial Session

Supporting the development of web-based applications with lightweight software generators

Prof. Dr. Andreas Schmidt

Institut für Angewandte Informatik/Hochschule Karlsruhe, Germany

Summary

Roughly speaking, the development of web-based applications may be divided into an interesting part that is mostly given by the application logics and a more mechanical, and hence boring, part, including the infrastructure code necessary for the platform, major parts of interface development, connection of the database, error treatment, etc.

In view of this situation, OMG has launched the MDA initiative and propagates an own model-driven development process based on both powerful and complex software generators. These generators usually possess a UML-based metamodel that is able in principle to generate the source code for large parts of an application. Such generators, however, require a long training period and their use often is worthwhile under certain boundary conditions (development of software families etc.) only. Within the framework of a tutorial, by contrast, various lightweight generators (e.g. code munger, inline code expander, mixed code generator) shall be developed for concrete tasks on the basis of regular expressions. It is aimed at automatically generating large parts of the mechanical, and, hence, boring code.The input of the generators consists of existing source texts, from which information is extracted and then transformed to a source code, or of simple models describing the application to be implemented.

The tutorial will be aimed at familiarizing the participants with the power of regular expressions and at demonstrating their suitability for software development. After the tutorial, the participants will be able to recognize the potential of lightweight generators in software development and also will be able to develop their own generators based on regular expressions.

The source code of the generators developed will be made available to the course participants, together with a plug and play development environment and the presented transparencies.

Presenter Biography

Professor Dr. Andreas Schmidt is working as a professor at the Department of Information Management of the University of Applied Sciences in Karlsruhe (Germany). Here, he is lecturing in the fields of database information systems and model-driven software development. Additionally, he is working as a computer scientist at the Institute for Applied Computer Science of the Forschungszentrum Karlsruhe (part of the newly founded Karlsruhe Institute of Technology - KIT). His research focuses on web-based technologies, with emphasis on databases and generative programming. Together with scientists from different branches of study, he conceives software solutions in e.g. life cycle assessment, virtual enterprises, and the field of micro- and nanostructures. He published a number of papers in these fields.

Dr. Schmidt was awarded his diploma in computer science by the University of Karlsruhe in 1995 and his PH.D in mechanical engineering in 2000. His thesis dealt with components for building distributed workflow management systems.