Program transformations and their semi-automatic composition [Elektronische Ressource] : a pragmatic approach to invasive middleware application engineering / Andreas Ingmar Schmied
273 pages
English

Program transformations and their semi-automatic composition [Elektronische Ressource] : a pragmatic approach to invasive middleware application engineering / Andreas Ingmar Schmied

Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
273 pages
English
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

Faculty of Engineering and Computer ScienceInsitute of Distributed SystemsFakultät für Ingenieurwissenschaften und InformatikInstitut für Verteilte SystemeProgram Transformations and theirSemi-Automatic CompositionA Pragmatic Approach to InvasiveMiddleware Application EngineeringDissertation zur Erlangung des Doktorgrades Dr.rer.nat.der Fakultät für Ingenieurwissenschaften und Informatikder Universität UlmAndreas Ingmar Schmied aus München2009Amtierender Dekan: Prof. Dr.-Ing. Michael WeberGutachter: Prof. Franz J. Hauck Prof. Dr. Helmuth A. PartschTag der Promotion: 26. Oktober 2009To my grandparentsOtto and Melitta Hollenzwho passed away too early to meetmy wife and their first great grandsonand witness the finish of this thesis.AbstractProgram generation has a long tradition in the development of distributed, middle-ware-based applications. During the last decade, aspect-oriented programming andmodel-driven architectures have been established as engineering techniques thatfurther improve the development process. Altogether, generation, the separationof concerns, and domain-specific abstract modelling have added flexibility tomiddleware application engineering. Yet, the requirements of ambitious, invasiveconcerns cannot be fulfilled.This thesis presents the LLTS transformation system and a pragmatic approachfor the semi-automatic composition of imperative transformations.

Sujets

Informations

Publié par
Publié le 01 janvier 2009
Nombre de lectures 3
Langue English
Poids de l'ouvrage 2 Mo

Extrait

Faculty of Engineering and Computer Science
Insitute of Distributed Systems
Fakultät für Ingenieurwissenschaften und Informatik
Institut für Verteilte Systeme
Program Transformations and their
Semi-Automatic Composition
A Pragmatic Approach to Invasive
Middleware Application Engineering
Dissertation zur Erlangung des Doktorgrades Dr.rer.nat.
der Fakultät für Ingenieurwissenschaften und Informatik
der Universität Ulm
Andreas Ingmar Schmied aus München
2009Amtierender Dekan: Prof. Dr.-Ing. Michael Weber
Gutachter: Prof. Franz J. Hauck Prof. Dr. Helmuth A. Partsch
Tag der Promotion: 26. Oktober 2009To my grandparents
Otto and Melitta Hollenz
who passed away too early to meet
my wife and their first great grandson
and witness the finish of this thesis.Abstract
Program generation has a long tradition in the development of distributed, middle-
ware-based applications. During the last decade, aspect-oriented programming and
model-driven architectures have been established as engineering techniques that
further improve the development process. Altogether, generation, the separation
of concerns, and domain-specific abstract modelling have added flexibility to
middleware application engineering. Yet, the requirements of ambitious, invasive
concerns cannot be fulfilled.
This thesis presents the LLTS transformation system and a pragmatic approach
for the semi-automatic composition of imperative transformations. Our contri-
butions foster a transformation-based integration of concerns that exhaust the
existing mechanisms for middleware extension, pure generators, and additive
aspect weaving. Our approach enables detailed transformations of existing code
and the composition of unwittingly interfering concerns.
In the first part, this thesis proposes software transformation as a vehicle to
integrate ambitious concerns into existing programs. For this purpose, the LLTS
transformation system provides a strong, imperative language, that allows low-
level manipulations without losing the ability of abstraction. Its multi-model
capabilities enable the correlation of artefacts from separate sources of information
and support the modularised construction of middleware-related concerns.
In the second part, this thesis addresses the composition of concerns as a compo-
sition of transformations. Independent transformations are processed in isolation
and are composed a posteriori. The approach detects interference based on built-in
and user-defined conflict criteria. The author of a composite can resolve conflicts
with declarative correction rules and by means of metaprogramming. The pre-
sented solution benefits from the flexibility of the LLTS base system and advocates
an evolutionary process of incremental refinement for composite transformations.
iiiZusammenfassung
Die Entwicklung verteilter, Middleware-basierter Anwendungen stützt sich tradi-
tionell auf die Generierung von Programmcode. Im vergangenen Jahrzehnt haben
Aspektorientierung und modellgetriebene Entwicklung als Teil der Methodik an
Bedeutung gewonnen und zum Fortschritt des Entwicklungsprozesses beigetra-
gen. Insgesamt haben Generierung, Modularisierung von Querschnittsaspekten,
und domänenspezifisches abstraktes Modellieren das Erstellen von Middleware-
Anwendungen flexibilisiert. Dennoch können diese Techniken alleine die An-
*forderungen anspruchsvoller und invasiv wirkender Belange nicht erfüllen.
Diese Arbeit stellt das LLTS Transformationssystem vor und erweitert es um
einen pragmatischen Ansatz zur semi-automatischen Komposition imperativer
Transformationen. Die hier gezeigten Verfahren dienen der transformations-
gestützten Integration von Belangen, die mit herkömmlichen Mitteln zur Er-
weiterung von Middleware, mit reinen Generatoren, und dem additiven Einweben
von Aspektcode nicht realisierbar sind. Der vorgestellte Ansatz ermöglicht die
feingranulare Transformation von bestehendem Code und die Komposition von
interferierenden Aspekten.
Im ersten Teil stellt diese Arbeit Softwaretransformation als Vehikel vor, um die
Logik anspruchsvoller Belange in existierenden Quellcode einzubringen. LLTS
definiert zu diesem Zweck eine leistungsfähige imperative Sprache, die ohne
Verzicht auf Abstraktion Manipulationen auf niedriger Ebene im Code ermöglicht.
Ihre Fähigkeit der simultanen Bearbeitung mehrerer Modelle erlaubt die Korrela-
tion von Artefakten aus unabhängigen Informationsquellen und unterstützt die
modularisierte Konstruktion von Aspektcode für Middleware-Systeme.
Im zweiten Teil adressiert diese Arbeit die Komposition von Belangen aus
dem Blickwinkel der Komposition von Transformationen. Unabhängige Trans-
formationen werden zunächst voneinander isoliert verarbeitet und a posteriori
zusammengeführt. Hierbei lassen sich Interferenzen mittels vorgegebener und
benutzerdefinierter Konfliktkriterien aufspüren. Der Autor einer Komposition
kann Konflikte mit Hilfe deklarativer Korrekturregeln und durch Metaprogram-
mierung des Transformationscodes auflösen. Dieser Ansatz profitiert insbesondere
von der Flexibilität der LLTS Basis und plädiert für einen evolutionären Entwick-
lungsprozess inkrementell verfeinerbarer, komponierbarer Transformationen.
* Der Begriff „Belange“ paraphrasiert hier „nicht-funktionale Eigenschaften“ bzw. „Querschnittsaspekte“
und deren modularisierte Umsetzung. Im Englischen haben sich neben „Non-functional Requirements“
die Begriffe „Aspect“, „Crosscutting Concerns“ und „Separation of Concerns“ etabliert.
iiiiv

  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents