Web-scheme transformers by-example

Author
S. Lechner
PhD Thesis
PT0401 (2004)
Resources
Copy

Abstract (English)

When defining a scheme of a web application, modelers repeatedly perform modelling tasks like ``after having defined an entity type, add a page class for displaying the entity type's content''. Thereby, a scheme is extended again and again in a similar manner. For such recurrent tasks, it would be convenient for modelers to have web scheme transformers (short transformers) that, when applied to a scheme, automatically perform such tasks. Extensive reuse of well-tested transformers facilitates the modelling process, contributes to rapid prototyping, and improves a web application's quality. This thesis introduces TBE (Transformers-By-Example), which is a language for defining and applying web scheme transformers. TBE follows a by-example approach, where a modeler defines a transformer by giving a generic example of a web scheme before and after transformation instead of specifying operations that perform the transformation. These operations are derived by TBE based on the provided generic examples. Transformers are thereby defined graphically and in a notation that is similar to one with which modelers are familiar. In order to facilitate their flexible use, the behavior of a transformer can be individually adapted for each particular application. The concept of defining transformers by-example can be introduced in various languages and tools for modelling web applications. This is demonstrated by WebML, which is a popular web modelling language, and by WebRatio, which is a commercial tool for editing WebML schemes. A prototype of TBE is described, too.

Keywords: web / scheme / conteputal design / transformer / by-example

Abstract (German)

Komplexe Webapplikationen werden zunehmend konzeptuell mit Hilfe eines Schemas entworfen, das schrittweise erweitert und verfeinert wird. Dabei kristallisieren sich Muster von Entwurfsschritten heraus, nach denen Schemata unabhängig vom Anwendungskontext immer wieder in sehr ähnlicher Weise erweitert und verfeinert werden. Es wäre daher von Vorteil, wenn Anwender wiederkehrende Entwurfschritte automatisieren könnten, anstatt sie immer wieder manuell durchzuführen. Dieses Automatisieren von Entwurfsschritten wird durch „Transformer“ ausgedrückt, die, wenn man sie auf ein Schema anwendet, dieses entsprechend erweitern und verfeinern. Der Einsatz solcher Transformer beschleunigt den Entwurfsprozess, unterstützt prototyping-orientierte Entwicklung von Webapplikationen und verbessert deren Qualität. Diese Arbeit stellt die Sprache TBE (Transformer-by-example) für das Definieren und Anwenden von Transformern vor. In TBE wird ein Transformer durch zwei generische Beispielschemata (d.h. „by-example“) beschrieben wird, die jeweils das Schema vor und nach der Transformation widerspiegeln. Dadurch wird ein Transformer im Wesentlichen in der gleichen (grafischen) Notation definiert, in der auch Schemata definiert werden. Aus diesen Beispielen leitet TBE ab, wie die Transformation durchzuführen ist, wenn der Transformer auf ein Schema angewandt wird. Eine weitere Besonderheit von TBE ist, dass das Verhalten vordefinierter Transformer individuell angepasst werden kann. Diese Flexibilität ist speziell für den Einsatz im Entwurfsprozess notwendig. Die Konzepte von TBE sind unabhängig von einer konkreten Modellierungssprache definiert, sodass verschiedene Sprachen für den konzeptuellen Entwurf von Webapplikationen gleichermaßen um das Definieren und Anwenden von Transformern erweitert werden können.

Schlagwörter: Web, Schema, Konzeptueller Entwurf, Transformer