Zwischenvortrag zur Diplomarbeit

Slides:



Advertisements
Ähnliche Präsentationen
1 Referenzmodelle für HISinOne Dr. Uwe Hübner, 02. Juli 2009.
Advertisements

Fast Fourier Transformation
V - Modell Anwendung auf große Projekte
Programmieren im Großen von Markus Schmidt und Benno Kröger.
Modellgetriebene Softwareentwicklung
K-Modeler Engineering
Informatik 12 | DAES Compilerbau Wintersemester 2010 / 2011 Dr. Heiko Falk Technische Universität Dortmund Lehrstuhl Informatik 12 Entwurfsautomatisierung.
IT-Projektmanagement
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Anwendungsfalldiagramm
Anwendungsfalldiagramm
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Universität Stuttgart Institut für Kernenergetik und Energiesysteme I nstitut für K ernenergetik und E nergiesysteme Rational Unified Process (RUP) - Definitionen.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Der Rational Unified Process - Einführung Inhalt Prozessmodelle Der Rational Unified.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme LE P MuSofT Erkundungsumgebung Entwicklung eines komponentenbasierten Systems WS 03/04.
K-Modeler Engineering
WS Algorithmentheorie 02 - Polynomprodukt und Fast Fourier Transformation Prof. Dr. Th. Ottmann.
Grundkurs Theoretische Informatik, Folie 2.1 © 2006 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 2 Gottfried Vossen Kurt-Ulrich Witt.
Christian Kästner Modellgetriebene Softwareentwicklung Eclipse Modelling Framework.
Rational Unified Process (RUP) - Definitionen
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik I Vorlesung Listen-
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
Explizite und editierbare Metainformationen für Software Muster.
Brandenburgische Technische Universität Cottbus Program Profiling Andrzej Filipiak Übung Testen von Software SoSe 2006.
Projektplan: Fachgebiet Software Engineering Übersicht © Albert Zündorf, Kassel University.
Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl
Grundschutztools
UML Begleitdokumentation des Projekts
Vorlesung Gestaltung von soziotechnischen Informationssystemen - RequirementsEngineering und Contextual Design- Thomas Herrmann, Lehrstuhl Informations-
Software Engineering in der Praxis: Eclipse Development
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering SS 2009Folie 1 Objektmodellierung Objekte und Klassen Ein Objekt ist ein Exemplar.
12. Vorlesung: Aktivitätsdiagramme
5 Methoden und Werkzeuge zur Prozessmodellierung
Erweiterung von EMF Refactor um Update Funktionalität in grafischen Editoren Thorsten Arendt, AG Taentzer, SWT FoPra-Vorstellung, 19. April 2012.
TWS/Graph HORIZONT Produkt-Präsentation Software für Rechenzentren
Unified Modeling Language Repetition / Einführung zu UML
Grundlagen ExecutionModel Simulationsumgebung
Cooperation unlimited © Zühlke Juni 2009 Hansjörg Scherer Folie 1 Cooperation unlimited TFS als BackEnd für Visual Studio und Eclipse.
Reiner Ganser Solution Architect 1stQuad Solutions GmbH Presentation Subtitle.
Seminar: Entwicklung verteilter eingebetteter Systeme WS05/06 Betreuer: Info:
Analyse von Ablaufdiagrammen
HORIZONT 1 XINFO ® Das IT - Informationssystem HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 /
HORIZONT 1 XINFO ® Das IT - Informationssystem PL/1 Scanner HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 / 540.
Ganzheitliches Projekt-, Ressourcen- und Qualitätsmanagement 1 Reports und AddOns Auf den folgenden Seiten wird Ihnen die Funktionsweise der Reports und.
NDK Enterprise Technologien Informationen Infrastruktur und Fallstudie Daniel Nydegger Studienleiter Enterprise System Entwicklung.
UML-Kurzüberblick Peter Brusten.
Paradigmenwechsel in der Unternehmensmodellierung Prof. Dr. Wolfgang Voigt Dipl.-Ing. Päd. Alexander Huwaldt UML Extrakt UML Seminar, Chemnitz
Projektmanagement Ziel und Umfang eines Softwareprojektes definieren
Agenda Rückblick 2. Aufbau der Software Benutzeroberfläche 4. Ausblick
Effiziente Codegenerierung aus UML2 Strukturdiagrammen
Managemententscheidungsunterstützungssysteme (Ausgewählte Methoden und Fallstudien) ( Die Thesen zur Vorlesung 3) Thema der Vorlesung Lösung der linearen.
PARTENARIAT ÉDUCATIF GRUNDTVIG PARTENARIAT ÉDUCATIF GRUNDTVIG REPERES KULTURELLER ZUSAMMENHALT UND AUSDEHNUNG DER IDEEN AUF EUROPÄISCHEM.
Das IT - Informationssystem
GMF (Graphical Modeling Framework)
1 (C)2006, Hermann Knoll, HTW Chur, FHO Quadratische Reste Definitionen: Quadratischer Rest Quadratwurzel Anwendungen.
Analyseprodukte numerischer Modelle
Integration existierender digitaler Bibliotheken in Lernumgebungen LEBONED (Learning Environment Based On Non Educational Digital Libraries) Dipl.-Inform.
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
Untersuchungen zur Erstellung eines
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
Unified Process Historisch-Kulturwissenschaftliche Informationsverarbeitung Übung: Planung von Softwareprojekten Dozent: Christoph Stollwerk WS 2014/2015.
Generierung von effizientem C-Code aus UML2-Strukturdiagrammen
Das IT - Informationssystem
SAP Seminar 2007 Organisationsobjekte anlegen
Monatsbericht Ausgleichsenergiemarkt Gas – Oktober
Datenbanken im Web 1.
OOSE nach Jacobson Sebastian Pohl/ST7 Betreuer: Prof. Dr. Kahlbrandt.
© WZL/Fraunhofer IPT Entwicklung einer Profilbörse für Konfigurationen von Smartphones Vortrag der Seminararbeit von Patrick Posor Aachen, den
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Entwurf Dr. Wolfgang Wörndl
1. Betreuer: Prof. Dr. Jörg Striegnitz 2. Betreuer: Dr. Martin Schindler Kontextsensitive Autocompletion für Klassendiagramme in der UML/P Florian Leppers.
 Präsentation transkript:

Zwischenvortrag zur Diplomarbeit Erweiterung der ViPER-Umgebung zur methodengestützten Entwicklung mit MeDUSA

Gliederung Einleitung Integration des Entwicklungsprozesses MeDUSA, ViPER, UML Unterstützung in anderen Werkzeugen Vision Integration des Entwicklungsprozesses Prozess - Modellierung Modelltransformation in CheatSheets Infrastruktur Unterstützung der Methode TaskWizards Widerrufen von Modelländerungen Traceability - Modell Zusammenfassung / Ausblick

MeDUSA, ViPER, UML MeDUSA: MethoD for UML2-based Design of Embedded Software Applications ViPER: Visual Modeling Platform for Embedded System ARchitectures UML: Unified Modeling Language

MeDUSA - Methodeninhalt Requirements: Erfassen der Use Cases Use Case Modelling Use Case Description Modelling Analysis: Identifizieren der Gegenstände der Problemwelt Context Modelling: Trigger, Interface Information Modelling: Entity Inter-Object Collaboration Modelling: Control, Application-Logic Intra-Object Behaviour Modelling Task-Modelling Architectural Design: Finden einer Lösung Subsystem Identification Structural System Architecture Modelling Behavioural System Architecture Modelling Task Design Consolidation Detailed Design: Entwurf der Subsysteme Subsystem Design Modelling Class Design Modelling

MeDUSA - Prozess Aufteilung in vier Phasen Jede Phase enthält Iterationen Jede Iteration enthält Aufgaben der gleichnamigen Disziplin

Prozessunterstützung Leitfragen für die Prozessunterstützung: Prozessintegration: Wie kann der Prozess in einem Werkzeug abgebildet werden? Methodenunterstützung: Wodurch kann der Entwickler bei den einzelnen Aufgaben optimal unterstützt werden? Betrachtung der Werkzeuge WayPointer Rational Software Architect Eclipse Benutzer Assistenz => Vision

WayPointer Entwicklungsumgebung auf Basis des RUP Werkzeugintegration UML 2.0 – Modellierungswerkzeug (RSA, etc.) Textverarbeitungsprogramm (MS-Word®©™) Synchronisation der Werkzeuglandschaft Aktiver Prozess Verantwortlichkeiten (Rollen-basiert) Agenten, Regeln, Vorschläge

WayPointer - Agenten Agentenbasierte Interaktionen Aufgabe, Wizard, Artefaktagent Projektspezifische Anpassungen Aktivierung der Regeln / Agenten

WayPointer - Prozessintegration Arbeitsstrukturbaum der Disziplinen und Aufgaben Keine konkrete Prozessdurchführung Keine Einschränkungen für den Entwickler Prozess Regeln Schwerpunkt: Modellkonsistenz „Aktiver Prozess“

Rational Software Architect Werkzeug für die modellgetriebene Entwicklung als Eclipse RCP Prozessunterstützung für RUP Process Browser Navigieren durch Prozessbeschreibung Statische Ansicht Process Advisor Kontextabhängige Referenzen Schwerpunkt: Prozessbeschreibung

Eclipse (Benutzer Assistenz) Allgemein: Plugin-Architektur von Eclipse erlaubt die Definition von Extension-Points Hotspots des Frameworks Erweiterung ohne Kontrollfluss (Extensions) Z. B. Hilfesystem und CheatSheets Hilfesystem erlaubt Integration von HTML Seiten Beliebig erweiterbar Navigation durch table-of-contents Dateien CheatSheets zur Ausführung von Tutorials Abläufe modellierbar Verknüpfung mit Hilfesystem Ausführung von serialisierten Aktionen Z. B. Starten eines registrierten Wizards CompositeCheatSheets zur Komposition von CheatSheets

Eclipse - Hilfesystem

Fazit Entwicklungsprozesse sehr allgemein definiert (vgl. RUP, V-Modell) projektspezifische Anpassungen (Tailoring) (UML2) Modellierungswerkzeuge enthalten meist keine Prozessunterstützung MeDUSA sehr speziell für eine Domäne Kein Tailoring notwendig Unterstützung daher konkret realisierbar

Vision Methodenunterstützung Prozessintegration Infrastruktur Konsistenzprüfungen Bewertung durch Metriken (on-the-fly) Abbilden von Objekten Berücksichtigung der Iterationen Unterstützung einer Aufgabe durch TaskWizard Prozessintegration Prozessbeschreibung im Hilfesystem MeDUSA – Prozess als CheatSheets Arbeitsstrukturbaum als Menü Infrastruktur Projektwizard MeDUSA UML-Profil Globale Einstellungen (Preferences) Projektspezische Einstellungen (Properties)

Gliederung Einleitung Integration des Entwicklungsprozesses MeDUSA, ViPER, UML Unterstützung in anderen Werkzeugen Vision Integration des Entwicklungsprozesses Prozess - Modellierung Modelltransformation in CheatSheets Infrastruktur Unterstützung der Methode TaskWizards Widerrufen von Modelländerungen Traceability - Modell Zusammenfassung / Ausblick

Modellierung: UMA und SPEM Software Process Engineering Metamodel (SPEM) 1.0 standardisiert von der OMG Beschreibung von Methoden und Entwicklungsprozessen Einheitliche Terminologie durch Begriffsnetz Unified Modelling Architecture (UMA) aus der Praxis entstandenes Metamodell Kandidat für SPEM 2.0 Differenzierung von Methodik und Workflow Methodeninhalt: Rolle, Arbeitsergebnis und Aufgabe Prozess: Zeitliche Anordnung durch WBS und Aktivitätsdiagramme (Prozess, Iteration, Aktivität) Differenzierung von Bibliothek und Konfiguration Bibliothek: Methodeninhalt + Prozess Konfiguration: Auswahl für konkreten Prozess Definition und Anpassung auf drei Ebenen

Modellierung: EPF Eclipse Process Framework (EPF) beinhaltet Werkzeug und Prozessmodelle EPF Composer SCRUM, XP, Open/UP EPF Composer als Eclipse RCP Beinhaltet UMA (auf Basis von EMF) Erlaubt Definition eigener Prozessmodelle nach UMA Veröffentlichung des erstelltes Modells als HTML Extension-Point zur Erweiterung des Vorgangs zur Veröffentlichung

Integration des Prozesses Ablaufmodellierung durch CheatSheets CheatSheets Modell definiert mittels XML XSD - Spezifikation der XML Syntax und Semantik Prozessbeschreibung im Hilfesystem Verwendung der von EPF generierten HTML - Dateien table-of-contents in XML Dateien abgelegt Einfacher Aufbau nach Composite-Pattern Ziel: CheatSheets und tocs aus UMA-Modell gewinnen Realisierung?

uma2cs – Konzeptionelle Transformation Prozess als CompositeCheatSheet Iteration als CheatSheet Enthält Wizard zur Unter- stützung der Aufgabe => Schnittstelle zur Methodenunterstützung

uma2cs – Ablauf der Modelltransformation Verwendung von ViPER MTF CheatSheets: Transformation in CS-Modell + Code-Generierung TOCs: Direkte Code-Generierung

Demo EPF: Veröffentlichte HTML Seiten MeDUSA – Prozessintegration: CheatSheets

Gliederung Einleitung Integration des Entwicklungsprozesses MeDUSA, ViPER, UML Unterstützung in anderen Werkzeugen Vision Integration des Entwicklungsprozesses Prozess - Modellierung Modelltransformation in CheatSheets Infrastruktur Unterstützung der Methode TaskWizards Widerrufen von Modelländerungen Traceability - Modell Zusammenfassung / Ausblick

Infrastruktur Perspektive für relevante Views Globale Einstellungen Menüstruktur zum Aufrufen der TaskWizards: => Nachbildung des Arbeitsstrukturbaums Globale Einstellungen Preferences MeDUSA Projekte Wizard zur Erstellung eines neuen Projektes Erstellen der UML Modelle Project – Nature als Markierung Projektspezifische Einstellungen (Properties) MeDUSA UML-Profil

Gliederung Einleitung Integration des Entwicklungsprozesses MeDUSA, ViPER, UML Unterstützung in anderen Werkzeugen Vision Integration des Entwicklungsprozesses Prozess - Modellierung Modelltransformation in CheatSheets Infrastruktur Unterstützung der Methode TaskWizards Widerrufen von Modelländerungen Traceability - Modell Zusammenfassung / Ausblick

Methodenunterstützung MeDUSA als Methode für eine kleine Domäne Unterstützung konkret möglich ViPER als Modellierungswerkzeug Erstellen von Diagrammen zu einem UML Modell Erweiterung von ViPER zur Unterstützung der einzelnen Aufgaben durch Wizards Modaldialog stellt Kontrollfluss sicher Aufrufbar aus Menüstruktur und CheatCheats Anforderungen an die TaskWizards

TaskWizard - Anforderungen Eingangsinformationen Projekt- und Modellauswahl Modell Handhabung der Modelle und Ressourcen Validierung (EMF.Validation) Autokorrektur, Anzeigen betroffener Elemente Widerrufen von Modelländerungen Unterstützung von Abbildungen Aufgabenspezifische Unterstützung Metriken Darstellung als Kivian – Chart Berücksichtung des iterativen Vorgehens

Beispiel: SubsystemDesignWizard Beispiel anhand des Wizards zur Unter- stützung des Subsystem Design Modelling Analyse Modell: Analyse Objekte festgehalten als InstanceSpecifications in Objekt-Diagrammen Verhalten: Lifelines in Interaktionsdiagrammen (Kommunikation-, Sequenz-) Subsystem Design Modelling: Partitionierung der Analyse Objekte in Subsysteme Unterstützung: Validierung des Analysis Modells Erstellen von Subsystemen (Components) Abbilden der Analyse Objekte auf Properties der Subsysteme

Demo MeDUSA – Methodenunterstützung: SubsystemIdentificationWizard

Aktueller Stand Eingangsinformationen Modell Projekt- und Modellauswahl Modell Handhabung der Modelle und Ressourcen Validierung (EMF.Validation) Autokorrektur, Anzeigen betroffener Elemente Widerrufen von Modelländerungen Unterstützung von Abbildungen Aufgabenspezifische Unterstützung Metriken Darstellung als Kivian – Chart Berücksichtung des iterativen Vorgehens Traceability - Model

Widerrufen von Modelländerungen EMF beinhaltet ein Command-Framework Änderungen am Modell können als Command gekapselt werden Commands werden auf einem Stack ausgeführt Undo / Redo Operationen Idee: Jede Seite verwendet einen eigenen CommandStack Änderungen als Commands gekapselt Müssen (hier) widerrufbar sein (undoable) WizardPages als Stack interpretierbar Analog zum Stack der WizardPages ein Stack für CommandStacks Betätigen des back-Buttons widerruft Änderungen durch obersten CommandStack Betätigen des cancel-Buttons widerruft Änderungen aller CommandStacks

Traceability – Modell Problem: Idee: TaskWizards müssen Iteration berücksichtigen Traceability nicht im UML Modell ablegbar Gruppieren von Elementen (z. B. assigned/remaining) Idee: Erstellung eines Traceability – Modells außerhalb der UML Modelle

Traceability - Metamodell Lösung: Rekursive Mengen-Partitionierung zur Gruppierung Section als Menge von Mappings Trace als Folge von abgebildeten Mengen

Zusammenfassung Prozess Infrastruktur Methodenunterstützung Prozessmodellierung mittels EPF / UMA Prozessintegration durch Menüstruktur und Transformation in CheatSheets Prozessbeschreibung durch Hilfesystem Infrastruktur Methodenunterstützung TaskWizard für jede Aufgabe Constraints und Autokorrekturen Widerrufbarkeit durchgeführter Modelländerungen Traceability – Modell als Abbildungsinformation und Gruppierung

Ausblick Verwendung des Traceability-Modells Integration der Kivian-Charts Fertigstellung der Subsystem - Partitionierung Abbilden der Analyse – Objekte auf Properties eines Subsystems Erstellung von Ports anhand spezifierter Messages Metriken zur Bewertung der Subsystem Partitionierung

Danke für Ihre Aufmerksamkeit

Erweiterung des EPF - Composers ViPER PF: Erweiterung von EPF, unter Verwendung von uma2cs und uma2help Zusätzliche WizardPage für Einstellungen Zwischenspeichern der URL zu jedem Modellelement bei Generierung der HTML Seiten

uma2cs – Technische Realisierung Verwendung von ViPER MTF zur Realisierung TransformationUnit (GenerationUnit analog):

Übersicht des TaskWizards ModelHandler zur Auslagerung von Anwendungslogik Speicherung / Laden der Ressourcen und Modelle Kapselt Funktionalität des CommandStack-Stack

Modell - Validierungen Verwendung des EMF Validation –Frameworks Registrierung von Modell – Constraints über Extensions Kategorien werden an Kontext gebunden Aktivierung des Selektor Evaluation-Mode: live, batch

Validierung: Autokorrektur Problem: Validierungsvorgang (batch-Modus) bricht bei Verletzung einer Bedingung ab Keine Information über alle betroffenen Objekte Idee: Auslagern / Verallgemeinern der Logik für die Validierung aus Constraints Nutzung zur Visualisierung (TreeViewer) Evtl. Autokorrektur aller betroffenen Objekte Realisierung: Erweiterung der Constraints zu ResolveableConstraints ResolveCommand für Modelländerungen Dialog zum Betrachten der betroffenen Objekte Verwendung in ValidationPage