Nutzungsszenarien introspektiver Modelle Abschlussvortrag Bachelorarbeit Wirtschaftsinformatik Julian Sommerfeldt
Agenda Begriffsklärungen & Motivation Datenmodellvisualisierung Round Trip Engineering 26.07.2010 Julian Sommerfeldt
Agenda Begriffsklärungen & Motivation Datenmodellvisualisierung Round Trip Engineering 26.07.2010 Julian Sommerfeldt
Implementierungsartefakte lat. introspicere: „hineinschauen“ Programmcode in Tricia Konzentriert sich auf das Wesentliche Beschreibt und abstrahiert die Realität Modell Introspektion Implementierungsartefakte 26.07.2010 Julian Sommerfeldt
Modell Motivation Wie lassen sich die gewonnen Modelle nutzen? Welche Stakeholder haben wann an welcher Verarbeitung der Informationen Interesse? Modell Datenmodell Interaktionsmodell Berechtigungsmodell ? 26.07.2010 Julian Sommerfeldt
Motivation Wie lassen sich die gewonnen Modelle nutzen? Welche Stakeholder haben wann an welcher Verarbeitung der Informationen Interesse? Modell Datenmodell Interaktionsmodell Berechtigungsmodell ? 26.07.2010 Julian Sommerfeldt
Agenda Begriffsklärungen & Motivation Datenmodellvisualisierung Round Trip Engineering 26.07.2010 Julian Sommerfeldt
Das Tricia Datenmodell ist komplex 26.07.2010 Julian Sommerfeldt
Beispiel für ein Datenmodell 26.07.2010 Julian Sommerfeldt
Das Tricia Metamodell 26.07.2010 Julian Sommerfeldt
Datenmodellvisualisierung Komplexe Strukturen Längere Einarbeitung nötig Fortlaufende Änderungen Bedarf nach konsistenter, informativer, visueller Darstellung 26.07.2010 Julian Sommerfeldt
Funktionale Anforderungen Die Darstellung der unterschiedlichen Relationen ist vor allem in technischer Hinsicht eine Herausforderung. 26.07.2010 Julian Sommerfeldt
Funktionale Anforderungen Anpassbarer Detaillierungsgrad Exportfunktionen Diagramme werden auch außerhalb des Programms genutzt. Als Bild abspeichern. Gewisse Assets werden immer wieder abgefragt. Diese mit Positionsangaben speichern und später neu laden. 26.07.2010 Julian Sommerfeldt
Technische Realisierungsalternativen Web vs. Desktop Verfügbarkeit Installation Realisierung Introspective Modeling Framework Entscheidung für Desktopapplikation (Eclipse) Graphical Editing Framework vs. Netbeans Visual Library Handhabung Integration 26.07.2010 Julian Sommerfeldt
Implementierung - Überblick 26.07.2010 Julian Sommerfeldt
Implementierung - DataModel 26.07.2010 Julian Sommerfeldt
Agenda Begriffsklärungen & Motivation Datenmodellvisualisierung Round Trip Engineering 26.07.2010 Julian Sommerfeldt
Round Trip Engineering 26.07.2010 Julian Sommerfeldt
Problemstellungen Metamodell-Kompatibilität ist notwendig, um weiterhin Introspektion zu ermöglichen. Synchronität zwischen dem Code, der Sicht und dem Modell, das bearbeitet wurde. Codegenerierung Sichten sind Abstraktionen vom Code Nicht der gesamte Code ist introspektiv Code kann nicht komplett neu generiert werden Feingranulare Änderungen sind notwendig 26.07.2010 Julian Sommerfeldt
Nicht der gesamte Code ist introspektiv public final StringProperty name = new StringProperty() { final ChangeListener updateUrlName = new InstantChangeListener() { @Override public void change(Diff diff) { UrlNameProperty.updateUrlName(urlNameQuery(), urlName, get()); } }; 26.07.2010 Julian Sommerfeldt
Entwurf Mockups der Dialoge zur Bearbeitung der Modelle. 26.07.2010 Julian Sommerfeldt
Implementierung - Übersicht 26.07.2010 Julian Sommerfeldt
Implementierung - AST 26.07.2010 Julian Sommerfeldt
Implementierung - RefactoringModel 26.07.2010 Julian Sommerfeldt
Implementierung - Refactoring Eclipse benutzt für Refactoring-Aufgaben das LTK Refactoring Framework. Das Framework bietet Schnittstellen und integrierte Funktionen an: Preview Integration in die Eclipse-History Leicht zu erstellende Dialoge 26.07.2010 Julian Sommerfeldt
Refactoring - Ablauf 26.07.2010 Julian Sommerfeldt
Round Trip Engineering Ergebnisüberblick Round Trip Engineering visualisierung Datenmodell- Import Javadoc 26.07.2010 Julian Sommerfeldt
Vielen Dank für die Aufmerksamkeit! Fragen? 10.05.2010 Julian Sommerfeldt