Model Driven Architecture - CampusSource€¦ · MDA vs. ARIS ARIS-Konzept (Architektur...

Preview:

Citation preview

1

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

EJOSA – OpenUSS – CampusSource

Model Driven ArchitecturePraxisbeispielBlasius Lofi Dewanto

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

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?

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)

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!

6

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

MDA vs. ARIS

7

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

MDA vs. CASE vs. MetaCASE

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

9

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

Komponenten des MDA-Konzeptes (2)

UML-ModellUML-Sprache

UML-Metamodell

MOF-Metasprache

J2EE, .NET

XMI-Datei

QVT

10

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

Vier-Ebenen-Architektur

Anwendungssystem-Modellierung

11

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

Transformationen: First-Class Citizens!

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

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, ...

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)

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

16

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

Lösung mit MDA (2)

Gemeinsame Aktivitäten

Wie bisher...

17

Wirtschaftsinformatik und Controlling

Blasius Lofi Dewanto

Demo

DEMO

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

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

Recommended