Back to Search
Start Over
Modelltransformationen als Mittel der modellbasierten Entwicklung von Software-Systemen
- Publication Year :
- 2007
- Publisher :
- Technical University of Munich, 2007.
-
Abstract
- Im Software Engineering werden heutzutage verstärkt modellbasierte Entwicklungsansätze eingesetzt, in denen konzeptuelle Modelle mit präzise definierter Semantik für die Beschreibung von Software-Systemen verwendet werden. Durch die Beschränkung auf wesentliche Merkmale und die Möglichkeit die Struktur der Modelle und Modelloperationen in geeigneter Weise zu beschränken tragen diese Ansätze maßgeblich zur Steigerung der Effizienz des Entwicklungsprozesses und der Qualität der erstellten Software-Produkte bei. Die Bearbeitung konzeptueller Modelle erfolgt in der Regel durch geeignete Beschreibungstechniken, anhand derer sich Sichten auf ein konzeptuelles Modell bilden lassen. Im Rahmen dieser Arbeit werden Techniken erarbeitet, mit denen sich Beschreibungstechniken durch Transformationen ihrer abstrakten Syntax in ein einheitliches konzeptuelles Modell integrieren lassen. Oftmals werden im Verlauf eines Software-Entwicklungsprozesses konzeptuelle Modelle eines Systems auf verschiedenen Abstraktionsebenen erstellt, die im Idealfall in Teilen durch automatisierte Verfeinerungsabbildungen auseinander hervorgehen. Hierzu werden Verfahren entwickelt, die eine konsistente Verfeinerung und Erweiterung konzeptueller Modelle ermöglichen. Ein klar definierter Entwicklungsprozess bietet Entwicklern zudem die nötige Hilfestellung bei der Spezifikation und Erstellung eines Software-Systems. Zu diesem Zweck wird ein Framework für die Definition flexibler Entwicklungsprozesse geschaffen, in dem Entwicklungsschritte als Transformationen eines Modells der im Entwicklungsprozess erstellten Artefakte definiert werden. Die Beschaffenheit korrekter Modelle wird durch Metamodelle definiert. Bedingt durch ihre einfache Abbildbarkeit auf eine Werkzeugunterstützung sind im Software Engineering vor allem objektorientierte Metamodelle weit verbreitet. Um die erarbeiteten Konzepte zur modellbasierten Entwicklung umsetzen zu können, wird die "Bidirectional Object-Oriented Transformation Language" (BOTL) als geeigneter Mechanismus für die Transformation objektorientierter Modelle entwickelt. Die Sprache verfügt über eine formale Semantik und bietet eine Reihe von Verifikationstechniken zum Nachweis der Ausführbarkeit von Transformationsspezifikationen und der syntaktischen Korrektheit der erzeugten Modelle. Der Einsatz von BOTL für die Realisierung eines modellbasierten Entwicklungsansatzes wird dargestellt und ihre Verwendung für die Umsetzung der verschiedenen Techniken exemplarisch anhand der KOGITO-Methodik für das Requirements Engineering demonstriert. Die Realisierbarkeit der erarbeiteten Ansätze zur Modelltransformation in der Praxis wird anhand eines im Rahmen der Arbeit entstandenen Werkzeuges belegt. Das Werkzeug erlaubt die graphische Spezifikation von BOTL-Transformationen und deren automatisierte Verifikation. Eine Transformationskomponente ist schließlich in der Lage objektorientierte Modelle in unterschiedlichen Darstellungen, wie Java-Objektgeflechte oder XMI, gemäß einer BOTL-Spezifikation zu transformieren. Today in software engineering model based development approaches are applied more and more. Within these approaches conceptual models with precisely defined semantics are used for the description of software systems. By the restriction of models to the essential characteristics of systems and the possibility to restrict the structure of models and model operations in a suitable manner, these approaches contribute essentially to the efficiency of the development process and to the quality of the created software products. The manipulation of conceptual models usually takes place through suitable description techniques which allows one to build views onto a conceptual model. Techniques are developed within this thesis that allow one to integrate description techniques into a common conceptual model by transformations of the description techniquesÂ’ abstract syntaxes. Conceptual models are often created at different levels of abstraction during a software development process. Ideally more concrete models can be derived (partially) automatically by refinement mappings. Therefore methods are developed that allow a consistent refinement and extension of conceptual models. Further, an unambigeously defined development process offers developers the needed assistance for the specification and the creation of a software system. Therefore a framework for the definition of flexible development processes is built which defines development steps as transformations of the model of artifacts created during the development process. The structure of correct models is defined by metamodels. Since object-oriented metamodels can be mapped very easily to a tool support, these kinds of metamodels are very widespread in software engineering. In order to be able to implement the presented concepts on model driven development processes the "Bidirectional Object-Oriented Transformation Language" (BOTL) is introduced as a mechanism for the transformation of object-oriented models. The Language comprises formal semantics and offers a number of verification techniques that allow to verify whether a transformation specification is executable and whether it will create syntactically correct models or not. The use of BOTL for the realization of a model based development approach is presented and the application of the different techniques is shown exemplary on the basis of the requirements engineering methodology KOGITO. The viability of the presented approaches for model transformations is verified by a tool support that was developed within this thesis. The tool allows the graphical specification of BOTL transformations and their automated verification. Ultimately a transformation component is able to transform object oriented models of different technical formats like Java object structures or XMI according to a BOTL specification.
Details
- Language :
- German
- Database :
- OpenAIRE
- Accession number :
- edsair.od.......518..b53f46fc935a43039eb96d414a209347