19
1 Wirtschaftsinformatik und Controlling Blasius Lofi Dewanto EJOSA – OpenUSS – CampusSource Model Driven Architecture Praxisbeispiel Blasius Lofi Dewanto

Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

1

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

EJOSA – OpenUSS – CampusSource

Model Driven ArchitecturePraxisbeispielBlasius Lofi Dewanto

Page 2: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

2

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

Situation von CampusSource-Plattformen

Ähnliche Funktionen (Verwaltung von Studenten und Dozenten, Diskussionsforen, ...), jedoch

Vergleich zwischen Plattformen schwierig, da keine gemeinsame „Sprache“ existiert

Verschiedene Technologien (Java, PHP, ...) Wiederverwendung von „Komponenten“ diverser

Technologien schwierigGeringe technologieübergreifende Zusammenarbeit

Page 3: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

3

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

Mögliche Lösung?Webservice (k)eine Lösung?

Webservice ermöglicht die Interoperabilität zwischen PlattformenInstallation aller Plattformen in einer Institution?

Wartung aufwändigWissen und Erfahrung in allen Technologien vorhanden?

Page 4: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

4

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

Model Driven Architecture (MDA)

Ebenfalls bekannt als Model Driven Development (MDD)Versuch, alle Wiederverwendungsansätze zu verknüpfen

ReferenzmodellProduktlinien-SoftwaretechnikArchitekturen und MusterKomponentenbasierte Softwaretechnik

Trennung zwischen PIM (Platform Independent Model), PSM (Platform Specific Model) und Implementation Platform

Bereits bekannt als: Fachkonzept, DV- und Implementierungskonzept (ARIS)

Basiert auf Systems-GenerierungsmethodenBereits bekannt als: Compiler, CodegeneratorenBereits bekannt als: CASE-Werkzeug (Computer Aided Software Engineering)

Page 5: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

5

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

MDA vs. ARIS

ARIS-Konzept (Architektur integrierter Informationssysteme)

Fachkonzept: Anwendungsdomäne mit UML modelliertDV-Konzept: Objektorientierte Programmiersprache, Relationale Datenbank, Verteiltes SystemImplementierungskonzept: Java, J2EE, Oracle-DB

MDA: Transformationen automatisch!

Page 6: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

6

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

MDA vs. ARIS

Page 7: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

7

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

MDA vs. CASE vs. MetaCASE

Page 8: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

8

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

Komponenten des MDA-Konzeptes (1)Modelle, Metamodelle, PlattformenSprachen und MetasprachenTransformationsdefinitionen, Transformationsregeln und Transformationen

Standards:XMI (XML Metadata Interchange) als Enabler-Technologie und AustauschformatMOF (Meta Object Facility) als MetamodellierungsspracheUML (Unified Modeling Language) als ModellierungsspracheQVT (Query/Views/Transformations) als Transformationssprache

Page 9: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

9

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

Komponenten des MDA-Konzeptes (2)

UML-ModellUML-Sprache

UML-Metamodell

MOF-Metasprache

J2EE, .NET

XMI-Datei

QVT

Page 10: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

10

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

Vier-Ebenen-Architektur

Anwendungssystem-Modellierung

Page 11: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

11

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

Transformationen: First-Class Citizens!

Page 12: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

12

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

MDA-TypenTyp 1: Elaborationist

Schrittweise Verfeinerung (PIM PSM Code)Verwendung von 3GL-Programmiersprache für die Implementierung50% bis 80% des Codes werden generiertBeispiel: OptimalJ, io-Software's ArcStyler, IBM Rational SoftwareArchitect, AndroMDA

Typ 2: TranslationistVerwendung ausschließlich von UML (PIM Code)Executable UML == eUML == xUML UML „minus“ alle semantisch schwachen Modellierungselemente der UML „plus“ Action Semantics100% des Codes werden generiertBeispiel: Kennedy Carter, Bridgepoint

Page 13: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

13

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

Vorteile von MDAEine einzige Quelldatei (XMI) für alle Artefakte (Dokumentationen, Programme und Beschreibungen)Produktivität und Qualität

Höheres AbstraktionsniveauJeder Entwickler arbeitet unter den gleichen Rahmenbedingung

Interoperabilität, Integration und PortabilitätVerschiedene Plattformen (.NET, J2EE) integrierbar und austauschbar

FlexibilitätGeneriere, was generiert werden muss!

Wartung und DokumentationSchnelleinstiegDokumentation und Quellcode bleiben synchron

Offenheit und StandardOMG-Spezifikationen: XMI, MOF, UML, QVTOpen-Source-Implementierungen: NetBeans MDR, Eclipse EMF, AndroMDA, INRIA Modelware, ...

Page 14: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

14

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

Probleme von MDATemplate-basierte bzw. Meta-Programmierung für die Transformationsregeln (Modell-zum-Code-Transformation) ist öfter aufwändig

Herausforderung für Architekten

Eine bereits stabile und erprobte Architektur wird benötigtLängere Investition notwendigEntwicklung von DSL (domänenspezifische Sprache) lohn sich erst, wenn Systemfamilien bzw. Produktlinien tatsächlich zu erstellen sind

Standardisierung im Prozess:XMI != XMIMOFUML 2QVT (Query/Views/Transformations)

Page 15: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

15

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

Lösung mit MDA (1)

Definition von allgemeinen PIM für alle Plattformen Common PIM (PIM für CampusSource)

Verfeinerung des CampusSource-PIM zu einzelnen PIM-Plattform, wie beispielsweise

PIM für OpenUSS, PIM für ILIAS,PIM für ...

Verfeinerung der einzelnen PIM-Plattform zum PSMVerfeinerung des PSM zur Implementierung

Page 16: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

16

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

Lösung mit MDA (2)

Gemeinsame Aktivitäten

Wie bisher...

Page 17: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

17

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

Demo

DEMO

Page 18: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

18

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

FazitVergleich zwischen Plattformen möglich, dank gemeinsamer Sprache UML

Bessere und stets aktuelle Projektdokumentation!

Wiederverwendung von „Modellen“ möglichTechnologieübergreifende Zusammenarbeit möglichKeine große Veränderung im Entwicklungsprozess notwendig

Modell == QuellcodeForward-Engineering: Modellieren, Kompilieren, Implementieren, Kompilieren, Ausführen, Testen

Page 19: Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur integrierter Informationssysteme) Fachkonzept: Anwendungsdomäne mit UML modelliert DV-Konzept:

19

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

LiteraturEJOSA-Artikel Teil I:http://www.jaxmag.com/itr/online_artikel/psecom,id,653,nodeid,147.htmlEJOSA-Artikel Teil II: http://www.jaxmagazine.com/itr/online_artikel/psecom,id,671,nodeid,147.html

MDA Artikel in eleed Journalhttp://eleed.campussource.de/archiv/81