Software-Architektur. Spektrum k_/takademischht VERLAG



Ähnliche Dokumente
Inhaltsverzeichnis. xiii

Schreiben über Software-Architektur - eine Herausforderung. SPIQ Jour Fixe im Juni 2006

Model Driven Development im Überblick

vii Inhaltsverzeichnis 1 Einleitung 1

Management von IT-Architekturen

Modellgetriebene Service-Entwicklung

Agile Softwareentwicklung

Softwarearchitekten. Basiswissen für. dpunkt.verlag. Foundation Level

Entwicklung domänenspezifischer Software

Zusammenfassung: Architekturprinzipien

Der Rational Unified Process

Inhaltsverzeichnis. Gernot Starke. Effektive Softwarearchitekturen. Ein praktischer Leitfaden ISBN:

Software-Architekturen für das E-Business

Inhaltsverzeichnis 1 Einleitung 2 Ansätze in Forschung und Praxis

Variantenmanagement modellbasierter Funktionssoftware mit Software-Produktlinien

Software Engineering

Integrative Aspekte eines fragebogenbasierten Wissenspools am Beispiel einer Applikation zum Prozessmanagement

Jo Weilbach, Mario Herger SAP xapps - Architektur und Entwicklung mit dem Composite Application Framework. Galileo Press

Model Driven Architecture Praxisbeispiel

Model Driven SOA. < J Springer. Anwendungsorientierte Methodik und Vorgehen in der Praxis. Gerhard Rempp Mark Akermann Martin Löffler Jens Lehmann

Einführung in Generatives Programmieren. Bastian Molkenthin

4 Architektur-Perspektiven (WO)

Copyright 2014 Delta Software Technology GmbH. All Rights reserved.

Vom Geschäftsprozess zum Workflow

1 Einleitung Vorstellung der Fallstudie KnowBeer... 5

SEA. Modellgetriebene Softwareentwicklung in der BA

Software-Architektur

Kapitel 1 Applikations-Architektur VI

Faktor-IPS. Modellgetriebene Softwareentwicklung mit Faktor-IPS. Faktor Zehn AG. Seite 1

Index. 2-Tier-Architektur Tier-Architektur Sichtenmodell siehe Architektur-Sicht

Kapitelübersicht. Was ist So#waretechnik? Historische Entwicklung der So9waretechnik Prinzipien, Methoden, Werkzeuge. Was bedeutet Objektorien+erung?

Übersetzung von UML-Software-Spezifikationen in Simulationsmodelle

Comparing Software Factories and Software Product Lines

6 Architektur-Mittel (WOMIT)

Jochen Bauer

Neue Funktionen in Innovator 11 R5

Generatives Programmieren

Etablierung serviceorientierter Architekturen mit Web Services

Entwicklung eines Konzeptes zur Spezifikation standardisierter Leistungsparameter im Rahmen einer industrialisierten Software-Bereitstellung

Beispielhaft MDSD in der Praxis. Dr. Shota Okujava

Interoperabilität und Informationssicherheit mit SGAM 2. LIESA Kongress, Saarbrücken, 30. September 2015

arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek

Inhaltsverzeichnis. Dirk Stähler, Ingo Meier, Rolf Scheuch, Christian Schmülling, Daniel Somssich

2.1 Ist-Anwendungslandschaften Programme zur Gestaltung von Anwendungslandschaften

Product Line Engineering (PLE)

Anforderungsmanagement

Inhaltsverzeichnis. Daniel Liebhart, Guido Schmutz, Marcel Lattmann, Markus Heinisch, Michael Könings, Mischa Kölliker, Perry Pakull, Peter Welkenbach

17 Architekturentwurf Vorgehen und Dokumentation

Software Produktlinien: Einführung und Überblick

BPM im Kontext von Unternehmensarchitekturen. Konstantin Gress

Model Driven SOA Modellgetriebene Entwicklung von SOA Anwendungen. OOP München,

Abbildungsverzeichnis... XIII Tabellenverzeichnis... XVII Abkürzungsverzeichnis... XIX

Dirk Stähler Ingo Meier Rolf Scheuch Christian SchmüUing Daniel Somssich. Enterprise Architecture, BPM und SOA für Business-Analysten HANSER

Programmieren ohne Programmierer Das GeneSEZ Generator Framework. Gerrit Beine

Julian Reichwald. Modell-getriebene Unterstützung der Workflow-Abbildung in Serviceorientierten

Objektorientierte Geschäftsprozessmodellierung mit der UML

Transfer von Prozessen des Software-Produktlinien Engineering in die Elektrik/Elektronik- Architekturentwicklung von Fahrzeugen

Evaluierung und Auswahl von

Viele gute Stellen sind frei. Besetzen Sie eine.

Knasmüller.book Seite vii Mittwoch, 28. März : vii. Inhaltsverzeichnis

SOA goes real Service-orientierte Architekturen erfolgreich planen und einführen

Ein Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen

Vorstellung. Wie entsteht Architektur in Scrum

Standardisierte Integration und Datenmigration in heterogenen Systemlandschaften am Beispiel von Customer Relationship Management

Java Enterprise Architekturen Willkommen in der Realität

Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich. Softwaretechnik I

CASE. in der Anwendung. Erfahrungen bei der Einführung von CASE. Herausgegeben von Peter Hruschka. Carl Hanser Verlag München Wien

Ein hierarchischer, modellgetriebener Ansatz zur Codegenerierung. R. Gitzel, M. Schwind

Grundlagen Software Engineering

Autorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente

Managementprozesse und Performance

ActiveCharts. Verknüpfung von Modellen und Code bei der modellgetriebenen Softwareentwicklung mit UML 2.0

Fachlogik umsetzen. Business Rules zwischen Konzept und IT-System. Dirk Ziegemeyer

Methode zur Rahmenplanung der Einführung von CRM-Systemen in produktorientierten, diversifizierten Industrieunternehmen.

Dr. Silvia Adelhelm. Geschäftsmodellinnovationen. Eine Analyse am Beispiel der mittelständischen Pharmaindustrie

Inhaltsverzeichnis. Hermann J. Schmelzer, Wolfgang Sesselmann. Geschäftsprozessmanagement in der Praxis

SOA Serviceorientierte Architektur Definition, Marktpotenzial und Perspektiven

Inhaltsverzeichnis. Jakob Freund, Klaus Götzer. Vom Geschäftsprozess zum Workflow. Ein Leitfaden für die Praxis ISBN:

Einführung in modellgetriebene Softwareentwicklung. 24. Oktober 2012

Softwarearchitektur als Mittel für Qualitätssicherung und SOA Governance

Inhaltsverzeichnis. Frank Schönefeld. Praxisleitfaden Enterprise 2.0

INNOVATOR im Entwicklungsprozess

Voraussetzungen für die betriebswirtschaftliche SOA-Einführung

ITIL und Entwicklungsmodelle: Die zwei Kulturen

Strategische Umsetzung von Corporate. Mittelständigen Unternehmen in Bayern. unter besonderer Berücksichtigung der

Inhalt. 3.1 Der inkrementelle Entwurf im Überblick Flache Aufwandskurve Qualitätskriterien für den inkrementellen Entwurf...

Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH

Christoph Mathas. SOA intern. » Praxiswissen zu Service-orientierten IT-Systemen HANSER

Inhaltsverzeichnis. Herausgebervorwort VII. Autorenvorwort. Abbildungsverzeichnis XIX. Tabellenverzeichnis XXI. Abkürzungsverzeichnis.

Christoph Puls. Zielorientiertes Management. von Logistikdienstleistungen in. Netzwerken kooperierender. Unternehmen

Inhaltsverzeichnis. Vorwort Kapitel 1 Einleitung Reisebeschreibung Zielpublikum Fallbeispiel...

Software- Qualitätssicherung

Immobiliencontrolling durch Business Intelligence

Model Driven Architecture

Handbuch Interne Kontrollsysteme (IKS)

Enterprise Application Integration

Bausteine eines Prozessmodells für Security-Engineering

Visuelle DSLs Trends in der Softwaretechnik: Domänenspezifische Sprachen (Seminar WS 2010/11) Thorsten Arendt

Entwicklung einer Plattform für ein sensorgesteuertes, prognosebasiertes Energiemanagement

Reference Migration Process ReMiP

Transkript:

Oliver Vogel / Ingo Arnold /Arif Chughtai / Edmund Ihler/Uwe Mehlig/Thomas Neumann/ Markus Völter/Uwe Zdun Software-Architektur Grundlagen - Konzepte - Praxis ELSEVIER SPEKTRUM AKADEMISCHER VERLAG Spektrum k_/takademischht VERLAG

Inhaltsverzeichnis 1 I Einleitung 1 1.1 Ausgangslage und Zielsetzung des Buches 2 1.2 Was ist Software-Architektur? 8 1.3 Leser-Leitfaden 11 1.3.1 Buchaufbau 11 1.3.2 Zielpublikum 15 1.3.3 Kapitelüberblick 15 1.3.4 Kapitel im Detail 18 2 I Architektonischer Ordnungsrahmen 23 2.1 Motivation 24 2.2 Ordnungsrahmen im Überblick 26 2.3 Architekturen und Architektur-Disziplinen (WAS) 30 2.4 Architektur-Perspektiven (WO) 31 2.5 Architektur-Anforderungen (WARUM) 32 *' 2.6 Architektur-Mittel (WOMIT) 33 2.7 Organisationen und Individuen (WER) 36 2.8 Architektur-Vorgehen (WIE) 37 'J Architekturen und Architektur-Disziplinen (WAS) 39 ( 3.1 Klassische Architektur als Ausgangspunkt 40 3.2 Von der klassischen Architektur zur Software-Architektur 44 ^3.3 Architektur und der Systemgedanke 52 3.4 Architektur und die Bausteine eines Systems 57 larchitektur-perspektiven (WO) 65 l.'l Architektur-Ebenen 66 t "4.1.1 Organisationsebene 71 4.1.2 Systemebene 73 ""4.1.3 Bausteinebene im Bereich Makro-Architektur 73 "4.1.4 Bausteinebene im Bereich Mikro-Architektur 74 farchitektur-sichten 75 1*4.2.1 Zachman-Framework 84 2.2 Reference Model for Open Distributed Processing 87 1.2.3 4+1-Sichten-Modell 88 ix

5 I Architektur-Anforderungen (WARUM) 91 5.1 Allgemeines 92 5.2 Anforderungen im Überblick 94 5.3 Anforderungen im Detail 99 5.3.1 Organisationsanforderungen 99 5.3.2 Systemanforderungen 100 5.3.3 Bausteinanforderungen 101 5.3.4 Laufzeitanforderungen 102 5.3.5 Entwicklungszeitanforderungen 103 5.3.6 Organisatorische Rahmenbedingungen 105 5.4 Anforderungen im Architektur-Kontext 106 6 I Architektur-Mittel (WOMIT) 111 6.1 Architektur-Prinzipien 112 6.1.1 Prinzip der losen Kopplung 114 6.1.2 Prinzip der hohen Kohäsion 117 6.1.3 Prinzip des Entwurfs für Veränderung 119 6.1.4 Separation-of-Concems-Prinzip 121 6.1.5 Information-Hiding-Prinzip 124 6.1.6 Abstraktionsprinzipien 127 6.1.7 Modularitätsprinzip 129 6.1.8 Rückverfolgbarkeitsprinzip 133 6.1.9 Selbstdokumentationsprinzip 134 6.1.10 Inkrementalitätsprinzip 134 6.1.11 Weitere Architektur-Prinzipien 136 6.2 Grundlegende architektonische Konzepte 136 6.2.1 Prozedurale Ansätze 136 6.2.2 Objektorientierung 139 6.2.3 Komponentenorientierung 146 6.2.4 Meta-Architekturen und Reflection 149 6.2.5 Generative Erzeugung von Systembausteinen 151 6.2.6 Modellgetriebene Software-Entwicklung 153 6.2.7 Aspektorientierung 161 6.2.8 Wartung von Software-Architekturen 165 6.3 Architektur-Stile 169 6.4 Architektur-Muster 173 6.4.1 Was ist ein Software-Muster? 173 6.4.2 Beispiele für Muster 177 6.4.3 Mustersprachen 182 6.5 Referenzarchitekturen 186 6.5.1 Definition und Bestandteile 186 6.5.2 Einsatz und Vorteile von Referenzarchitekturen 188 6.5.3 Anforderungen an Referenzarchitekturen 188 Inhaltsverzeichnis

6.5.4 Arten von Referenzarchitekturen 189 6.5.5 Beispiel für eine Referenzarchitektur 190 6.6 Architektur-Dokumentationsmittel 195 6.6.1 Architektur-Metamodelle 196 6.6.2 Unified Modeling Language (UML) 197 6.6.3 Architecture Definition Languages (ADL) 201 6.6.4 Domain Specific Languages (DSL) 206 6.7 Architektur-Strukturen 208 6.7.1 Zentralisierung gegenüber Dezentralisierung 209 6.7.2 n-tier-architektur 211 6.7.3 Rieh Client gegenüber Thin Client 213 6.7.4 Middleware-Architekturen 215 6.7.5 Komponentenarchitekturen 218 6.7.6 Serviceorientierte Architekturen 221 6.7.7 Enterprise Service Bus 222 6.7.8 P2P-Systeme 223 6.8 Aktuelle Technologien in Software-Architekturen 223 6.8.1 Middleware-Systeme 224 6.8.2 Datenbanken und Persistenz von Geschäftsobjekten 229 6.8.3 Datenaustausch und Datentransformation mit XML 233 6.8.4 Dynamische Web-Seiten und Web-Application-Server 236 6.8.5 Komponentenplattformen 237 6.8.6 Web Services 240 7 I Organisationen und Individuen (WER) 243 7.1 Allgemeines 244 7.2 Organisationen 247 7.3 Individuen 253 7.4 Individuen und Gruppen 255 7.5 Architektur und Entscheidungen 259 7.6 Architekt als zentrale Rolle 264 lß I Architektur-Vorgehen (WIE) 269 I 8.1 Architektonisches Vorgehen 270 8.1.1 Entwicklungsprozess 270 8.1.2 Architektonische Tätigkeiten 273, 8.1.3 Erstellen des Business Case 276 8.1.4 Verstehen der Anforderungen 278 8.1.5 Entwerfen der Architektur 279 8.1.6 Umsetzen der Architektur 284 8.1.7 Kommunizieren der Architektur 287 8.2 Anwendungsszenario: Product Line Engineering 293 8.2.1 Produktlinien und Software-Systemfamilien 294 sverzeichnis xi

8.2.2 Realisierungstechnologien und Zusammenhang zu MDSD 297 8.2.3 Erstellen des Business Case 299 8.2.4 Verstehen der Anforderungen (Domänenanalyse) 299 8.2.5 Entwerfen der Architektur (Domänendesign) 302 8.2.6 Umsetzen der Architektur (Domänenimplementierung) 303 8.2.7 Rollen und Aufgaben 304 8.3 Anwendungsszenario: Enterprise Application Integration 305 8.3.1 Erstellen des Business Case 306 8.3.2 Verstehen der Anforderungen 309 8.3.3 Entwerfen der Architektur 317 8.3.4 Kommunizieren und Umsetzen der Architektur 327 8.4 Anwendungsszenario: Anwendungsdienst 328 8.4.1 Erstellen des Business Case für das System 352 8.4.2 Verstehen der Anforderungen 363 8.4.3 Entwerfen der Architektur 373 8.4.4 Kommunizieren und Umsetzen der Architektur 384 9 I Risikofallmanagementsystem 389 9.1 Zusammenfassung 390 9.2 Architektur-Anforderungen (WARUM) 391 9.2.1 Business Case 391 9.2.2 Organisationsanforderungen 392 9.2.3 Systemanforderungen 397 9.2.4 Bausteinanforderungen 401 9.3 Architekturen und Architektur-Disziplinen (WAS) 407 9.3.1 Disziplinen 407 9.3.2 Entscheidungen zur Software-Architektur 409 9.4 Architektur-Perspektiven (WO) 411 9.4.1 Systemebene 411 9.4.2 Bausteinebene 412 9.5 Architektur-Mittel (WOMIT) 416 9.5.1 Architektur-Prinzipien 416 9.5.2 Grundlegende architektonische Konzepte 418 9.5.3 Generative und generische Verfahren 419 9.6 Organisationen und Individuen (WER) 423 9.6.1 Organisation 424 9.6.2 Individuen 426 9.7 Architektur-Vorgehen (WIE) 427 dl I Inhaltsverzeichnis

10 I CRM-Kundendatenrepository 429 10.1 Zusammenfassung 430 10.2 Architektur-Anforderungen (WARUM) 431 10.3 Organisationen und Individuen (WER) 433 10.4 Architekturen und Architektur-Disziplinen (WAS) 435 10.5 Architektur-Perspektiven (WO) 435 10.6 Architektur-Mittel (WOMIT) 436 10.7 Architektur-Vorgehen (WIE) 437 10.8 Ausgangssituation 437 10.9 Anforderungen 439 10.10 Architektonische Entscheidungen 448 10.11 Logische Sicht 452 10.12 Umsetzung ausgewählter Anforderungen 458 10.13 Was hat die Architektur genutzt? 468 11 I Eingebettete Komponenteninfrastrukturen 471 11.1 Zusammenfassung 472 11.1.1 Architektur-Anforderungen (WARUM) 473 11.1.2 Organisation und Individuen (WER) 475 11.1.3 Architekturen und Architektur-Disziplinen (WAS) 475 11.1.4 Architektur-Perspektiven (WO) 476 11.1.5 Architektur-Mittel (WOMIT) 476 11.1.6 Architektur-Vorgehen (WIE) 477 11.2 Product Line Engineering 479 11.2.1 Domain Scoping 479 11.2.2 Variabilitätsanalyse und Domänenstrukturierung 480 11.2.3 Kommunikationsparadigmen 481 11.2.4 Container-Services 484 11.2.5 Domänendesign 485 11.2.6 Produktionsprozess 487 11.3 Modelle 489 11.3.1 Definition von Interfaces 490 11.3.2 Definition von Komponenten und Ports 492 11.3.3 Definition eines Systems 493 11.3.4 Gesamtmodell 497 11.3.5 Generator - Überblick 497 11.4 Implementierung von Komponenten 498 11.4.1 Abbildung auf Java 499 11.4.2 Parsen und Zusammenführen des Gesamtmodells 500 11.4.3 Pseudodeklarative Metamodellimplementierung 504 11.5 Codegenerierung 506 11.5.1 Referenzen 506 11.5.2 Umsetzung der Protokollzustandsautomaten 510 Inhaltsverzeichnis xiii

11.5.3 Generierung des Build Files 511 11.6 Fachliche Kaskadierung 512 11.6.1 Modellierungssprache 512 11.6.2 Generierung 514 11.7 Erfahrungen aus unserem Unternehmen 514 I Literaturverzeichnis 517 I Abkürzungsverzeichnis 537 I Index 541 I Inhaltsverzeichnis