DieReiheXpert.pressvermittelt Professionals indenBereichenSoftwareentwicklung, Internettechnologie undIT-Managementaktuell undkompetentrelevantesFachwissenüber TechnologienundProduktezurEntwicklung undAnwendungmodernerInformationstechnologien. · · · Gerhard Rempp Mark Akermann Martin Löffler Jens Lehmann Model Driven SOA Anwendungsorientierte Methodik und Vorgehen in der Praxis Mit Illustrationen von Martin Starzmann 123 GerhardRempp MarkAkermann [email protected] [email protected] MartinLöffler JensLehmann m.loeffl[email protected] [email protected] ISSN1439-5428 ISBN978-3-642-14469-1 e-ISBN978-3-642-14470-7 DOI10.1007/978-3-642-14470-7 SpringerHeidelbergDordrechtLondonNewYork DieDeutscheNationalbibliothekverzeichnetdiesePublikationinderDeutschenNationalbibliografie; detailliertebibliografischeDatensindimInternetüberhttp://dnb.d-nb.deabrufbar. ©Springer-VerlagBerlinHeidelberg2011 Dieses Werk ist urheberrechtlich geschützt. Die dadurch begründeten Rechte, insbesondere die der Übersetzung, des Nachdrucks, des Vortrags, der Entnahme von Abbildungen und Tabellen, der Funksendung,derMikroverfilmungoderderVervielfältigungaufanderenWegenundderSpeicherung in Datenverarbeitungsanlagen, bleiben, auch bei nur auszugsweiser Verwertung, vorbehalten. Eine VervielfältigungdiesesWerkesodervonTeilendiesesWerkesistauchimEinzelfallnurindenGrenzen der gesetzlichen Bestimmungen des Urheberrechtsgesetzes der Bundesrepublik Deutschland vom 9. September 1965 in der jeweils geltenden Fassung zulässig. Sie ist grundsätzlich vergütungspflichtig. ZuwiderhandlungenunterliegendenStrafbestimmungendesUrheberrechtsgesetzes. Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Werk berechtigtauchohnebesondereKennzeichnungnichtzuderAnnahme,dasssolcheNamenimSinneder Warenzeichen-undMarkenschutz-Gesetzgebungalsfreizubetrachtenwärenunddahervonjedermann benutztwerdendürften. Einbandentwurf:KünkelLopkaGmbH,Heidelberg GedrucktaufsäurefreiemPapier SpringeristTeilderFachverlagsgruppeSpringerScience+BusinessMedia(www.springer.com) ...fürYvonneundJulian Vorwort LiebeLeserin,lieberLeser, „Innovationen werden anfangs maßlos überschätzt, auf Dauer aber maßlos unterschätzt.“ ∗ AchimBerg,( 1964),ChefMicrosoftDeutschland,Quelle:KölnerStadt-Anzeiger Querverweise:Medienlandschaft Langeistesher,alsMDAoderSOAinderSoftwareentwicklungnochalsHypegalt. Die euphorischen Vertreter der Softwareindustrie stellten uns damals MDA bzw. MDSDinzahllosenVorträgenundPublikationenalsdiewahrscheinlicheinzigeArt dar, einen erfolgreichen Softwareentwicklungsprozess zu gestalten und zukunfts- fähige Software zu erstellen. Also folgten wir gutgläubig den Protagonisten und versuchten uns technisch dem Ziel zu nähern. Meist holten wir uns jedoch eine blutigeNase,anstattdenvorhergesagtenErfolgzuerzielen. Es formierten sich daraufhin die Antagonisten und argumentieren, dass MDA und SOA aufgrund des hohen Abstraktionsgrads und der Komplexität so nie funktionieren werde und plädieren dafür, die Anwendungsentwicklung so weit zu simplifizieren wie es nur geht. Als Credo gelten hier leichtgewichtige Frame- works und Praktiken wie z.B. „Convention over Configuration“ die das komplexe VorgeheneliminierenundzumgewünschtenErfolgführensollen. Indikatoren wie kurze Entwicklungszeiten scheinen den Antagonisten auf den erstenBlickjaauchrechtzugeben.DieRealitätzeigtunsheutejedocheineVermeh- rungvonschlechtintegriertenInsellösungen,dieunsimBlickaufWartungskosten vorvieleHerausforderungenstellt. NegativfallenvorallemadhocSOA-Anwendungenauf,dienachdemCRUD- Muster ohne übergreifende Integrationsmethode produziert wurden. Man gewinnt teilweise den Eindruck, als ob sich alle Anforderungen und Services auf Ba- sis der Create-, Read-, Update- und Delete-Operationen in einer Datenbank abbilden lassen. Plattformübergreifende Integrationskonzepte und prozessorien- tierteAutomatisierungsszenarienwerdenbeidiesemAnsatzentwedernachgelagert implementiert oder einer Integrationsabteilung überlassen. Diese müssen die lokal VII VIII Vorwort duplizierten Stammdaten und Benutzerverwaltungen dann per SOA-Mitteln repli- zieren,womitdieProzessorientierungadabsurdumgeführtwird. Wiederverwendung verlangt also eine übergreifende Strategie und das Wissen, wie von der Anforderung bis zur Implementierung zentrale Services, Kompo- nenten und Daten gewinnbringend eingesetzt werden können. Dazu bedarf es einervermittelndenEinheit-daszentraleModellgepaartmiteinemmethodischen Vorgehen. WollenwirzudemdervomBusinessgefordertenAgilitätunddemAutomatisie- rungsgrad heute und in naher Zukunft nachkommen, so muss bei dem Ansatz ein nahtloser Übergang von der Fachmodellierung bis in die Zielarchitektur möglich sein,undzwarineinemRoundtrip-stattineinemeinmaligenWasserfall-Ansatz. Wir benötigen also eine Art serviceorientierte Softwarefabrik, die einen kohä- renten Softwareentwicklungsansatz von der Fachanforderung über Anwendungs- design und Entwicklung bis zur Wartung und Modernisierung liefert. Fragen, wie diebestehendenNotationenUMLundBPMN2vereintwerdenundsichModelleauf dasWesentlichereduzierenlassen,müssenbeantwortetsein,ummodellgetriebenzu einereffizientenserviceorientiertenAnwendungslandschaftzugelangen. BeieinemsolchenAnsatzmüssenwirdiewichtigstenInnovationeninderSoft- wareentwicklungaufgreifenundunsdabeischonaufmethodischerEbenezunutze machen. Synthetisierende Ideen wie MDA, domänenspezifische Sprachen (DSL), Software-Produktlinien,ArchitekturansätzewieServiceorientierungundagileFra- meworks, gepaart mit einer Methodik können dann erst zu einem durchgängigen Softwareentwicklungsansatzführen. Alle, die an einem solchen durchgehendem Vorgehen interessiert sind und bisher die Aspekte SOA, BPMN, UML oder MDA nur als Einzelteile kennen gelernt haben, werden mit diesem Buch an die Hand genommen und von der An- forderungsanalysebiszumlauffähigenEndsystemdurchdasentwickelteMDSOA Vorgehensmodellgeführt. Die Autoren haben es in erstaunlich einfacher Weise geschafft, ein praxistaug- liches und zugleich durchgängiges Vorgehensmodell zu beschreiben, ohne sich in einem Labyrinth von Details zu verlieren. Genau diese veranschaulichende Be- schreibunghatmirbeimeinemletztenmodellgetriebenenSOAProjektgefehltund mich daher viel Mühe gekostet, die notwendigen Modellkonventionen zu entwi- ckelnunddasgesamteTeamaufLiniezubringen.Hervorzuhebenist,dassbeidem niedergeschriebenen Ansatz genug Freiräume sind, seine individuellen Anforde- rungenundArchitekturvariantenmiteinzuwebenundseineeigeneMDSOAVersion zuschaffen.FürmeinnächstesProjektwirddasBuchaufjedenFallPflichtlektüre sein. München,Deutschland,März2011 BertholdMaier Danksagung Wir möchten uns ganz herzlich bei folgenden Personen bedanken, die uns direkt oderindirektbeiderErstellungdiesesBuchesunterstützthaben. Herrn Christian Kössel, die Diskussionen um die beste Umsetzung der EJB3- GenerierunghabenunsvorangebrachtundsosindwertvolleHinweiseausderPraxis eingeflossen. Dr.GuidodeMelohatunsbeimEinsatzdesM2M-SDKunterstützt.Herzlichen DankGuido,hastunswirklichweitergebracht! Herrn Christoph Bergner der uns bei der Kontaktaufnahme mit dem Verlag zur HandgingundunsmitderZusageseinerUnterstützungTürengeöffnethat. Der Geschäftsführung der MID GmbH, die uns mit der zur Verfügungsstellung von Infrastruktur, moralischer Unterstützung und Entscheidungen zur Umsetzung unserer Anforderungen im Produkt sehr geholfen hat und die immer an uns geglaubthat. Martina Stiglmaier und Jens Hamann, die uns insbesondere für das Kap. 10 DokumentationwertvollenInputgelieferthabenundfürihresehrhilfreichenTipps zumThema. ThomasHenningerfürseinenRatundseineBeiträgeindenKap.2und5. MariaDeeg,dietiefgehendenDiskussionenunddiegemeinsameErstellungvon Schulungsunterlagen zum Thema „fachliche Servicemodellierung“ mit ihr haben fürKap.5wertvollenInputgeliefert. Allen Entwicklern der MID und hier ganz besonders Oliver Pera, Josef Nagl, RolandPatkaundIliasKeserfürIhreUnterstützungundihroffenesOhrsowiedie Zeit,diesieinvieleDetailsderUmsetzunginvestierthaben. GanzbesondersMartinStarzmann,derunserekleineGeschichteumdenMeis- terschülerSeansowunderbarundkreativillustrierthat. AllenFreunden,diewirnichtimEinzelnengenannthaben,ohnedieaberweder dasToolnochdasBuchmöglichgewesenwären.EuerFeedbackundeurekritischen AnmerkungenhabenunszuHöchstleistungenangetrieben! Unseren Familien und unseren Partnern, die es toleriert haben, dass wir so viel ZeitineinBuchgesteckthabenundnichtdieGeduldmitunsverlorenhaben,auch wennwirdochhinundwiedersehrkurzangebundenwaren. Stuttgart,Deutschland,April2011 IX Inhaltsverzeichnis 1 Einleitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 EinBuchfürdenPraktiker . . . . . . . . . . . . . . . . . . . . . . . 2 Kapitel2Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . 3 Kapitel3DieModellierungsmethodik. . . . . . . . . . . . . . . . 4 Kapitel4DasBeispiel–ÜberblicküberallePhasen . . . . . . . . 4 Kapitel5Initiation . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Kapitel6SystemEvaluation . . . . . . . . . . . . . . . . . . . . . 5 Kapitel7ArchitectureProjection . . . . . . . . . . . . . . . . . . 6 Kapitel8ConstructionundDeployment . . . . . . . . . . . . . . 6 Kapitel9Automatisierung . . . . . . . . . . . . . . . . . . . . . . 7 Kapitel10Dokumentation . . . . . . . . . . . . . . . . . . . . . . 7 Kapitel11AusblickundFazit . . . . . . . . . . . . . . . . . . . . 7 Kapitel12AnhangundSachverzeichnis . . . . . . . . . . . . . . 8 Formalitäten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 VielSpaß!. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2 Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 MDA&MDSD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 ModelDrivenArchitecture(MDA)derOMG . . . . . . . . . . . . 13 ModelbasierteSoftwareentwicklung(MDSD) . . . . . . . . . . . 18 Modellierungssprachen . . . . . . . . . . . . . . . . . . . . . . . . . 22 UMLundDialekte . . . . . . . . . . . . . . . . . . . . . . . . . . 22 BPMN2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 BPMN-WissenzumBuch . . . . . . . . . . . . . . . . . . . . . . 29 Modellierungswerkzeuge . . . . . . . . . . . . . . . . . . . . . . . . 36 MIDInnovator . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 AndroMDA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 Eclipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 Webservice-Technologien . . . . . . . . . . . . . . . . . . . . . . 46 DieSOAPlattform . . . . . . . . . . . . . . . . . . . . . . . . . . 53 Literatur. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 XI