model-driven development – die maßgeschneiderte...

Post on 19-Mar-2021

3 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Model-Driven Development –die maßgeschneiderte Entwicklungstechnik für SOA

Herzlich willkommen

1

objectiF®

© 2010 microTOOL GmbH, Berlin. Alle Rechte vorbehalten.

Benedikt FunkmicroTOOL GmbH, Berlin

live

Was steckt hinter modellgetriebener Entwicklung?

Wie funktioniert MDD?

Wie entwickle ich Modelltransformationen?

Die Themen

2

3

microTOOLmaking IT better

Der Erfolg IhrerIT-Projekteist unserZiel

4

Qualitätder Entwicklungsprozesse

durch

prozessbasiertes Projektmanagement

mit

in-Step®

Effizienzder Entwicklungstechnikdurch

Automatisierung perModel-Driven-Development

mit

objectiF®

5

Unsere Kunden

ABUS Pfaffenhain GmbHachermann consulting agADCURAM Industrieberatung GmbHAeromaritime Systembau GmbHAFL Europe GmbHAllianz Deutschland AGASIC - Allianz Shared InfrastructureAutostadt GmbHAVM Computersysteme AWD Allgemeiner WirtschaftsdienstBaumüller Anlagen-SystemtechnikBayer Business ServicesBayer Healthcare AGBayer Technology Services GmbHBayerisches Landesamt für SteuernBayerisches Landesamt für UmweltBijou BrigitteBiocomfort DiagnosticsBKC GmbHBlaupunkt GmbHBosch Engineering GmbHBundesamt für den ZivildienstBundesamt für Migration und FlüchtlingeBundesanstalt für WasserbauBundesdruckerei GmbHBundesfinanzdirektion NordBWI Systeme GmbHCarl Zeiss IMT GmbHCirquent GmbHCollogia AGCompuGROUP Software GmbHComputer Zentrum Strausberg

COMSOFT GmbHCooper Power ToolsCORA-IT GmbHCSC Deutschland Solutions GmbHCurrenta GmbH & Co. OHGDaimler AGDallmeier electronic GmbH & Co. KGDatenzentrale Baden-WürttembergDATEV eGDeutsche Bank AGDeutsche Flugsicherung GmbH - DFSDeutsche Post Direkt GmbHDeutsche Rentenversicherung BundDeutsche Telekom AGDeutsches Zentrum für Luft- & RaumfahrtDOMCURA AGDr. Männer und PartnerDRS Systemberatung GmbHDuales System Deutschland GmbHEADS Deutschland GmbHeBankingServices Nord GmbHEckelmann AGECOMAL Deutschland GmbHEidgenössisches FinanzdepartmentElektrobit Automotive GmbHEPLAN Software & Service GmbH & Co.EWE TEL GmbHFEV Motorentechnik GmbHFujitsu Technology Solutions GmbHGAF AGGEA Wiegand GmbHGfK Retail and Technolgy GmbHGlobal Draw Austria GmbH

HOPPE AGIAV GmbHicubic AGInsight Technology SolutionsInternetdienste der Stadt ZürichITERGO GmbHJobScout24.deJomo GroßhandelKapsch CarrierCom AGKassenärztliche VereinigungKassenzahnärztliche VereinigungKnowledge Department Kuhnke Support GmbH & Co. KGLachmann & Rink GmbHLandis+Gyr AGlastminute.com GmbHLayer 2 GmbHlesswire AGLogica DeutschlandMarineamtMEN Mikro Elektronik GmbHMettler & Fuchs AGMicroContact AGMSC Vertriebs GmbHmsgGILLARDON AGND SatCom Defence GmbHNorth IT-ServiceNuon Deutschland GmbHOPTIGEM GmbHPlan International Deutschland e.V.Process Relations GmbHProximity Technology GmbHPrüftechnik AGRaytheon Anschütz GmbH

RENK AGRobert Bosch GmbHRobert Koch-Institutrobomotion GmbHRSN Risk Solution Network AGSächsisches StaatsministeriumSalzgitter Flachstahl GmbHSHD Einzelhandelssoftware GmbHSHI Elektronische Medien GmbHSmurfit Kappa GmbHSOPTIM AGStaatsbetrieb Sächsische InformatikStatistisches BundesamtStatistisches Landesamt SachsenSTP Informationstechnologie AGSumitomo Electric Bordnetze GmbHtdb Software Service GmbHThales GroupThomas Cook AGTI Automotive Technology Center Trianel GmbHTRW Automotive SafetySystems T-Systems Enterprise Services GmbHUltratronik GmbHUnternehmensberatung H&DVattenfall Europeviadico AGWasser- und SchifffahrtsamtWave DevelopmentsWerum Software & Systems AGWestdeutsche LandesbankXavo AG

6

Wann würden Sie gern

modellieren

?8

Wenn sicher wäre, dass:

9

Ihre Modelle über den Softwarelebenszyklus aktuell sind

Ihre Modelle und Ihr Code zueinander passen

Sie aus Modellen etwas generieren können

Modellgetriebene Entwicklung (MDD)mit objectiF®

10

MDD setzt beim fachlichen Modell in UML/BPMN auf:

angepasst an die fachliche Domäne

frei von Technologie

durch den Softwareentwickler/Facharchitekt erstellt

11

Kunde<<BusinessEntity>>

Firma: TextNachname: Text

Adresse<<BusinessEntity>>

Ort: Text

Automatisch…

12

Kunde<<BusinessEntity>>

Firma: TextNachname: Text

Adresse<<BusinessEntity>>

Ort: Text

FachlichesModell

Modelltransformation

Ergebnis: das technische Modell in UML und Source-Code

spiegelt Architektur der Software wider

enthält viel generierten Code

ist Ausgangspunkt der Implementierung der Business Logik

13

TechnischesModell

Kunde<<EntityBean>>

Id: long <<PrimaryKeyFirma: String <<PersistNachname: String <<PAdresse: Collection <<

Adresse<<EntityBean>>

Id: long <<PrimaryKey>>Ort: String <<PersistentAtKunde: KundeBean <<O

java.io.Serializable<<Interface>>

Konstruktor (String, SKonstruktor ()getId(): longgetNachname(): String

Konstruktor (String)Konstruktor ()getId(): longgetOrt(): String

14

Unser fachliches Modelländert sich

aber oft

java.io.Serializable<<Interface>>

15

TechnischesModell

Modelltransformationen werden iterativ angewendet

Kunde<<BusinessEntity>>

Firma: TextNachname: Text

Adresse<<BusinessEntity>>

Ort: Text

FachlichesModell

Artikel<<BusinessEntity>>

Name: Text

Kunde<<EntityBean>>

Adresse<<EntityBean>>

Modelltransformation (Aktualisierung)

Artikel<<EntityBean>>

16

Kann ich nachvollziehen,was worausentstanden ist?

?

java.io.Serializable<<Interface>>

17

TechnischesModell

Klar…

Kunde<<BusinessEntity>>

Firma: TextNachname: Text

Adresse<<BusinessEntity>>

Ort: Text

FachlichesModell

Artikel<<BusinessEntity>>

Name: Text

Kunde<<EntityBean>>

Adresse<<EntityBean>>

Modelltransformation (Aktualisierung)

Artikel<<EntityBean>>

Navigieren

18

Und was passiert dabei mit meinem

Code

?

19

Nur Gutes…

Element im technischen Modell

Element im fachlichen Modell

Editierbare Code-Blöcke

Generierte Code-Blöcke Editierbare

Code-BlöckeGenerierte Code-Blöcke

Editierbare Code-Blöcke

Generierte Code-Blöcke

20

Aber ich tippe lieber

in Eclipse

Tun Sie‘s…

21

ReverseEngineering

Workspace mit Source-/XML-Code

Generieren

Element imtechnischen Modell

Generierte Code-BlöckeGenerierte Code-BlöckeGenerierte

Code-Blöcke

Element im fachlichen Modell

Editierbare Code-BlöckeEditierbare Code-BlöckeEditierbare

Code-Blöcke

Was bringt Ihnen MDD mit

objectiF®? Fachliche Modelle bleiben aktuell

Technische Architektur und Source-Code werden automatisch erzeugt

Mehr Zeit

Mehr Qualität

Investitionsschutz

22

23

Was muss ich tun, um

modellgetriebenzu entwickeln

?

B

AIch verwende das, was objectiF®

mitbringt:... Modelltransformationen

für gängige Java- und .NET-Technologien

24

oder

Ich erstelle eigene Modell-transformationen mit der in objectiF®

integrierten Technik

Wir brauchen dazu 3 Dinge…

25

eine technische Architektur und Ausdrucksmittel zur technischen Modellierung und Implementierung

eine fachliche Architektur und Ausdrucksmittel zur fachlichen Modellierung

Regeln zur Umsetzung fachlicher Modelle in technische Modelle und Source-Code

Also erzeugen wir mit objectiF®…

26

eine technische Architektur und ein Metamodell für technische Modelle

eine fachliche Architektur und ein Metamodell für fachliche Modelle

eine Transformation, die fachliche in technische Modelle und Source-Code überführt

So sieht das mit objectiF® aus…

27

Konkret: Wir entwickeln modellgetrieben

Transformation mit der UML spezifizieren

Technisches Modell und Source-Code der Transformation mit objectiF® erzeugen

Transformationslogik in C# vervollständigen

28

Eigene Modelltransformationen in

objectiF®

Sie bestimmen die Transformationslogik

Mehr Zeit

Mehr Qualität

Investitionsschutz

29

Sie sehen jetzt live mit objectiF®

am Beispiel der Erstellung einer SOA-Anwendung:

wie eine Transformation das technische Modell und Java-Code für EJB 3.0 erzeugt

wie MDD iterativ angewandt wird

wie die Transformationslogik angepasst wird

30

Fazit:

31

Einfache fachliche Modellierung

Einhaltung der Architekturstandards

Vollständige und automatische Implementierung

Einfache Anpassung der Transformationslogik

32

Welche Transformationen

bringt objectiF®

mit

?

Diese Modelltransformationen bietet objectiF®

33

Geschäftsprozess zu BPEL

Geschäftsprozess zu WSDL

Business Services zu Session Beans

Business Services zu WSDL

Business Message zu Java

Business Message zu XSD

Fachlicher Modellierungsrahmen

Präsentations-modell Prozessmodell Service-Modell Entity-Modell

Diese Modelltransformationen bietet objectiF®

34

Business Entity zu Entity Bean

Business Entity zu NHibernate

Business View zu ViewData und ViewDataServices

WSDL zu Business Service

XSD zu Business Message

Profil zu Modelltransformation (Metatransformation)

Fachlicher Modellierungsrahmen

Präsentations-modell Prozessmodell Service-Modell Entity-Modell

Vielen Dank für Ihre Aufmerksamkeit!

35

?

? ?

Mehr zu

Stand 12

36

objectiF®

und in-Step®

top related