Aufgabenstellung Technische Grundlagen Konzeptuelle Grundlagen Besondere Aspekte bei der Umsetzung Demonstration Offene Aspekte Integration eines UML2.

Slides:



Advertisements
Ähnliche Präsentationen
Developing your Business to Success We are looking for business partners. Enterprise Content Management with OS|ECM Version 6.
Advertisements

Fast Fourier Transformation
Eulerscher Polyedersatz
Modellgetriebene Softwareentwicklung
Einführung in die Informatik: Programmierung und Software-Entwicklung
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
CPCP Institute of Clinical Pharmacology AGAH Annual Meeting, 29. Februar 2004, Berlin, Praktischer Umgang mit den Genehmigungsanträgen gemäß 12. AMG Novelle.
Scratch Der Einstieg in das Programmieren. Scatch: Entwicklungsumgebung Prof. Dr. Haftendorn, Leuphana Universität Lüneburg,
Klicke Dich mit der linken Maustaste durch das Übungsprogramm! Vereinfachung von Termen Ein Übungsprogramm der IGS - Hamm/Sieg © IGS-Hamm/Sieg 2006 Dietmar.
Java: Objektorientierte Programmierung
K-Modeler Engineering
WS Algorithmentheorie 02 - Polynomprodukt und Fast Fourier Transformation Prof. Dr. Th. Ottmann.
© 2006 W. Oberschelp, G. Vossen Rechneraufbau & Rechnerstrukturen, Folie 2.1.
Grundkurs Theoretische Informatik, Folie 2.1 © 2006 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 2 Gottfried Vossen Kurt-Ulrich Witt.
Internet facts 2008-II Graphiken zu dem Berichtsband AGOF e.V. September 2008.
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil2.
Christian Kästner Modellgetriebene Softwareentwicklung Eclipse Modelling Framework.
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.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Vorwoche Methoden sind mit einem Namen versehene Programmabschnitte besitzen Rückgabetyp, Namen, Parameterliste.
Differentieller Stromverstärker
Inhalte und Maßnahmen eingegeben haben,
Kennlinie Lichtregelung in JavaNNS Version 1.1
Ralf KüstersDagstuhl 2008/11/30 2 Ralf KüstersDagstuhl 2008/11/30 3.
CRM Editor auf der Basis von Qt (Beispiel von Ubi erat Lupa)
1. 2 Schreibprojekt Zeitung 3 Überblick 1. Vorstellung ComputerLernWerkstatt 2. Schreibprojekt: Zeitung 2.1 Konzeption des Kurses 2.2 Projektverlauf.
PRJ 2007/1 Stefan Dissmann Verkettete datenstruktur: Liste Problem: Liste, die eine beliebige Zahl von Elementen verwaltet Operationen: Erzeugen, Anfügen,
Bild 1.1 Copyright © Alfred Mertins | Signaltheorie, 2. Auflage Vieweg+Teubner PLUS Zusatzmaterialien Vieweg+Teubner Verlag | Wiesbaden.
20:00.
Lutz Rabe | Koordinierungsstelle für IT-Standards (KoSIT)
SK / , , in Hochkössen und der Wildschönau flow Ski- und Snowboardschule Intersport Menzel.
Materialien zum Informatikunterricht (Pohlig-Häberle)
Kollektionen in Java Aufzählungstypen, Generische Typen
1 Fachtagung am Seniorenorientiertes Design und Marketing ThyssenKrupp Immobilien Design for all - Anpassungen im Wohnungsbestand 1.Demographie.
Grundlagen ExecutionModel Simulationsumgebung
...ich seh´es kommen !.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Objektorientierte Konzepte/UML Geoinformation I Vorlesung 2 WS 2000/2001.
Präsentation läuft auch vollautomatisch ab … wie du möchtest
Auslegung eines Vorschubantriebes
Sichern und Retten bei Arbeiten in Höhen und Tiefen
Analyse von Ablaufdiagrammen
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.
Publikation auf Knopfdruck Judith Riegelnig Michael Grüebler 19. Oktober 2010 / Statistiktage Neuenburg.
Symmetrische Blockchiffren DES – der Data Encryption Standard
Agenda Rückblick 2. Aufbau der Software Benutzeroberfläche 4. Ausblick
SK / – in Hochkössen, St. Johann i.Tirol und Hochfügen flow Ski- und Snowboardschule Intersport Menzel.
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)
LOD Levels of Detail Oliver Gassner Christian Troger.
1 (C)2006, Hermann Knoll, HTW Chur, FHO Quadratische Reste Definitionen: Quadratischer Rest Quadratwurzel Anwendungen.
Analyseprodukte numerischer Modelle
2014 Januar 2014 So Mo Di Mi Do Fr Sa So
Pigmentierte Läsionen der Haut
Aufgabenstellung Technische Grundlagen Konzeptuelle Grundlagen Besondere Aspekte bei der Umsetzung Demonstration Offene Aspekte Zusammenfassung Integration.
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
Vortrag von Rechtsanwältin Verena Nedden, Fachanwältin für Steuerrecht zur Veranstaltung Wege zum bedingungslosen Grundeinkommen der Piratenpartei Rhein-Hessen.
Ertragsteuern, 5. Auflage Christiana Djanani, Gernot Brähler, Christian Lösel, Andreas Krenzin © UVK Verlagsgesellschaft mbH, Konstanz und München 2012.
1 IdeenSet Sonnensystem Ideenset Wann können Sonnenfinsternisse stattfinden? Erich Laager / 2014.
Meta-Modell für Story-Diagramme und Expressions
Der Erotik Kalender 2005.
Sport4final.de. sport4final.de Leben in der Gemeinde Apostelgeschichte 4, Der Grund (Vers 32a) 2. Die Auswirkungen (Verse 32b-33) 3. Die Gemeinschaft.
Bildergalerie PRESEASON CAMP Juni 2014 Romanshorn Get ready for the Season!
Kompetenztraining Jura Martin Zwickel / Eva Julia Lohse / Matthias Schmid ISBN: © 2014 Walter de Gruyter GmbH, Berlin/Boston Abbildungsübersicht.
Das IT - Informationssystem
1 Medienpädagogischer Forschungsverbund Südwest KIM-Studie 2014 Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
Monatsbericht Ausgleichsenergiemarkt Gas – Oktober
 Präsentation transkript:

Aufgabenstellung Technische Grundlagen Konzeptuelle Grundlagen Besondere Aspekte bei der Umsetzung Demonstration Offene Aspekte Integration eines UML2 Aktivitätsdiagramm-Editors in ViPER Zwischenvortrag Daniel Watermeyer

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER- 2 - / 1-Apr-15Aufgabenstellung Realisierung eines Editors für UML2 Aktivitätsdiagramme Basis: UML2 Spezifikation  Konzeptuelle Grundlagen Integration in ViPER ViPER: Visual Tooling Platform for Model-Based Engineering Basis: diverse Frameworks  Technische Grundlagen

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER- 3 - / 1-Apr-15 Technische Grundlagen (1) Eclipse – Platform Eclipse – Plugin – Modell Eclipse Graphical Editor Framework (GEF) Eclipse UML2 Eclipse – Modeling – Framework (EMF)

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER- 4 - / 1-Apr-15 Eclipse Modeling Framework EMF.Core: Ecore als Meta- Metamodell EMF.Edit EMF. Codegen

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER- 5 - / 1-Apr-15 Technische Grundlagen (2) ViPER – Visual Tooling Platform for Model-Based Engineering Funktionalität in ViPER – IDE ViPER – Platform ViPER Core ViPER MTF (Model Transformation Framework) ViPER VMF (Visual Modeling Framework) Basis: EMF, GEF ViPER – UML2 ViPER UML2 Core ViPER UML2 Codegen Referenzimplementierung des MTF ViPER UML2 VME (Visual Modeling Environment) Referenzimplementierung des VMF

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER- 6 - / 1-Apr-15 Konzeptuelle Grundlagen UML2 Spezifikation (Superstructure Version 2.1.1) UML Behavior: Spracheinheit: Activities Activity ActivityNode ActivityEdge ActivityGroup Spracheinheit: Actions Subklasse ActivityNode Spracheinheit: Classes ValueSpecification

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER- 7 - / 1-Apr-15 Aktivitäten Aktivität: Spezifikation von Verhalten als koordiniert ausgeführte Sequenz untergeordneter Einheiten Semantik: token flow Verhalten: Kontextbezogen Spezifikation der Zustandsänderung des Kontexts Zeitbezogen Untergeordnete Einheiten: ActivityNode ActivityEdge ActivityGroup

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER- 8 - / 1-Apr-15 Activity – Metaklassen (1)

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER- 9 - / 1-Apr-15 Activity – Metaklassen (2)

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 ActivityNode/ ActivityEdge – Metaklassen

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 ActivityNodes ControlNodes Koordination des flows zwischen anderen Knoten der Aktivität Actions Einzelner Schritt in Aktivität Vielzahl von verschiedenen Actiontypen ObjectNodes Repräsentation von Instanzen von Classifiern Werden Actions zur Verfügung gestellt

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 ActivityGroups ActivityGroups: Gruppierungskonstrukt für Edges und Nodes ActivityPartition InterruptibleActivityRegion ExecutableNodes: StructuredActivityNodes

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 Beispiel (1) UseCase: Berechne Ouaderoberfläche Textuelle Beschreibung des UseCase: Standardablauf 1.Teste Länge 2.Teste Breite 3.Teste Höhe 4.Berechne Grundfläche 5.Berechne Vorderfläche 6.Berechne Seitenfläche 7.Berechne Oberfläche

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 Beispiel (2) ActivityParameterNode ObjectFlow AddVariableValueAction InputPin ControlFlow JoinNode ReadVariableAction OutputPin Token Flow: Initiale Knoten Tokens auf ausgehende Kanten Knoten aktiviert Alle eingehenden Kanten besitzen tokens Alle Inputpins haben token Knoten ausgeführt Tokens auf ausgehende Kanten

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 Besondere Aspekte bei der Umsetzung Konsequenz der Vielzahl von Knoten Beispiel: ValueSpecification Action Beispiel: AcceptEventAction CallBehaviorAction UnmarshallAction

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 Anzahl Elemente Anzahl: 38 Actions 9 ObjectNodes 7 ControlNodes 7 ActivityGroups 2 ActivityEdges 2 sonstige Edges Sonstige Elemente Konsequenzen der großen Anzahl Umfangreiche Validatoren z.B. für ActivityEdges Vielzahl von Listenern

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 ValueSpecification (1) Guard ValueSpecificationAction ValuePin JoinSpecification Weight UpperBound

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 ValueSpecification (2) Bisher: 6 ValueSpecifications Je ein EditPart Beispiel:UML2ActivitiesExpressionValueCompartmentEditPart 6 Anwendungsgebiete Je zwei EditParts Beispiel: UML2ActivitiesValueSpecification(/Expression)GuardLabelEditPart Opaque Expression ExpressionLiteral Null Literal Boolean Literal Integer Literal String Weight{weight= opaqueExpr} {weight= plus(1,2)} {weight = null} {weight= true} {weight= 12345} {weight= „test“} Guard[opaqueExpr] UpperBound{upperBound= opaqueExpr} ValuePinopaqueExpr Value SpecificationAction opaqueExpr Join Specification{joinSpec= opaqueExpr}

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 ValueSpecification (3) Gleiches Model Unterschiedliche Anwendungen In Palette Nur ValueSpecification werden angeboten Entscheidung für welche Anwendung? EditPartFactory untersucht Kontext EditPart der ValueSpecification ist Kind des EditParts der Anwendung

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 AcceptEventAction (1) Zwei mögliche Figures Standard: Alle Trigger (mind. 1) haben TimeEvent: Beide Darstellungen möglich:  Darstellung frei wählbar Figure organisiert Knotenaussehen selber UML2ActivitiesAcceptEventActionNodeEditPart UML2ActivitiesAcceptEventActionNodeFigure

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 AcceptEventAction (2) Problem: unterschiedliche Namensdarstellung Standard: NameCompartment TimeEvent: NameLabel  Zwei EditParts und Figures notwendig  Präsentationsoption nutzen der SemanticModelBridge CoreModelElement entsprechend der Präsentationsoption mit richtigem GraphModelElement verbunden

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 CallBehaviorAction Action: Einzelner Schritt in Aktivität CallBehaviorAction: Aufruf von nicht näher spezifiziertem einfachem Verhalten Hier möglich: Verlinkung der CallBehaviorAction mit z.B. anderer Aktivität

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 DiagramLink Ausschnitt aus Graph Modell Verlinkung GraphElement der CallBehaviorAction Aktivitätsdiagram

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 UnmarshallAction Liest StructuralFeatures aus einem Objekt Beispiel: InputPin mit Typ „Fläche“ Automatische Generierung der OutputPins Revalidierung bei Änderung am Objekt

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 Demonstration

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 Offene Aspekte Fehlenden Actions und ValueSpecifications ExceptionHandler Probleme mit ActivityGroups InterruptibleActivityRegion ActivityPartition Feedback für illegale Diagramzustände Restrukturierung Spracheinheiten Activities Actions

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 Fehlende Elemente ValueSpecification Duration DurationInterval InstanceValue Interval LiteralUnlimitedNatural StringExpression TimeExpression TimeInterval Actions 21 von 38 Actions

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 ExceptionHandler Edge Assoziationen: protectedNode handlerBody exceptionType exceptionInput protectedNode, handlerBody Ausführbare Knoten exceptionType Exceptions, die der Handler behandelt exceptionInput InputPin des handlerBody exceptionToken hier: Aktivierung handlerBody

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 Multi – Layering in ViPER (1)

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 Grund: Kinderfiguren nur im Bereich der Eltern Aufteilung: Boundary-Layer: Input-/OutputPins Connection-Layer Label-Layer Multi - Layering in ViPER (2) Primary Layer Connection Layer Grid Layer Label Layer Boundary Layer

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 Probleme mit ActivityGroups Elemente: Entweder in: Activity Oder in: StructuredActivityNode  StructuredActivityNode: PrimaryLayer Elemente: möglich: in mehreren InterruptibleActivityRegions  Überlappung von Regions  Neuer Layer? Elemente: möglich in: ActivityPartition FlowLayout im PrimaryLayer?

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 ActivityPartition Probleme: 2-dimensionale ActivityPartition  unlösbar mit FlowLayout Elemente  ActivityPartition  Mögliche Position: auf der Grenzlinie Knoten (teilweise) auf Grenzlinie  Element in Partition?  neuer Layer?

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 Illegale Diagramzustände Feedback erwünscht Decoration Layer Beispiel: Anlegen einer UnmarshallAction mit InputPin Typ des Pin noch nicht bestimmt OutputPins können nicht generiert werden

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 Vielen Dank für die Aufmerksamkeit!

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 ControlNodes + ObjectNodes ControlNodes: InitialNode FinalNodes: FlowFinalNode ActivityFinalNode MergeNode DecisionNode ForkNode JoinNode ObjectNodes: Pin InputPin ActionInputPin ValuePin OutputPin ActivityParameterNode CentralBufferNode DatastoreNode ExpansionNode

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 Actions (1) Actions: OpaqueAction InvocationActions: CallBehaviorAction CallOperationAction SendSignalAction BroadcastSignalAction SendObjectAction CreateObjectAction DestroyObjectAction TestIdentityAction ReadSelfAction ValueSpecificationAction ReadExtentAction ReclassifyObjectAction ReadIsClassifiedObjectAction StartClassifierBehaviorAction ReadLinkObjectEndAction ReadLinkObjectEndQualifierAction ReduceAction VariableActions: ReadVariableAction ClearVariableAction AddVariableValueAction RemoveVariableValueAction RaiseExceptionAction

D. WatermeyerIntegration eines UML2 Aktivitätsdiagram-Editors in ViPER / 1-Apr-15 Actions (2) Actions: StructuralFeatureActions: ReadStructuralFeatureAction ClearStructuralFeatureAction AddStructuralFeatureValueAction RemoveStructuralFeatureValueAction LinkActions: ReadLinkAction CreateLinkAction CreateLinkObjectAction DestroyLinkAction ClearAssociationAction AcceptEventAction AcceptCallAction ReplayAction UnmarshallAction