Die Entwicklung moderner Softwaresysteme erfordert den Einsatz anspruchsvoller Softwareentwicklungsprozesse und -methoden. Aufwand, der einmal in die Methodenentwicklung investiert wird, kann systematisch in Projekten ausgenutzt werden. Wir verwenden die Bezeichnung „Method Engineering“ für die systematische Entwicklung von Softwareentwicklungsmethoden. Im ersten Teil dieser Dissertation stelle ich Softwareentwicklungsmethoden und Ansätze des Method Engineering vor, die ich entwickelt habe, und charakterisiere sie. Sie beschäftigen sich insbesondere mit der modellbasierten und modellgetriebenen Entwicklung von betrieblichen Informationssystemen, Multimediasystemen und anspruchsvollen interaktiven System sowie einigen verwandten Domänen. Zwei formale Methoden, die in den Softwareentwicklungsmethoden eingesetzt werden, werden außerdem erläutert: dynamische Metamodellierung (mit Zeit) und visuelle Kontrakte. Der zweite Teil ist der detaillierten Beschreibung der von mir entwickelten Meta-Methode MetaME für die Modellierung und Anpassung von Softwareentwicklungsmethoden gewidmet. Sie kombiniert Ideen der Metamodellierung, des Method Engineering und der Entwicklung von (Modellierungs-) Sprachen. Die Meta-Methode umfasst eine Produkt- und eine Prozessdimension. Artefakttypen werden von Konzepten des Software Engineering abgeleitet, und sie bilden gemeinsam die Produktdimension. In der Prozessdimension werden Softwareentwicklungsaufgaben als Operationen beschrieben, die auf den Artefakten ausgeführt werden. Diese Aufgaben werden als Aktivitäten im Ablauf der Methode ausgeführt. Der dritte Teil enthält eine Auswahl meiner wichtigsten Forschungsarbeiten, die ich zu dem Themenbereich Softwareentwicklungsmethoden und deren systematische Entwicklung publiziert habe. |