\input{../settings/settings}

\begin{document}

\klausur{SOA-Governance and Evaluation}{Dr. Jochen Malinowski}{SoSe 12}{90}{-keine-}

\section{Aufgabe - SOA und SOA- Governance (Pflichtteil)}
a)	Erläutern Sie das Konzept einer Service Orientierten Architektur (SOA) und legen Sie dar, durch welche Merkmale sich eine SOA von bisherigen Ansätzen komponentenbasierter Softwareentwicklung unterscheidet.\\
b)	Welche Geschäftsvorteile können durch eine erfolgreich umgesetzte SOA potenziell erreicht werden? Die folgende Tabelle enthält mögliche realisierbare quantitative Vorteile. Beschreiben Sie je aufgeführtem Vorteil, was im Kontext einer SOA hierunter zu verstehen ist. Veranschaulichen Sie Ihre Erläuterungen anhand von Beispielen.\\
c)	Das nachfolgende Bild zeigt ein typisches Beispiel für zwei Systeme, die eng aneinander gekoppelt sind („tightly coupled"). Erläutern Sie diese Grafik. Beschreiben und erläutern Sie anschließend, wie sich diese Grafik bei Anwendung der SOA-Prinzipien darstellt, bei denen die beiden Systeme lose miteinander gekoppelt sind („loosly coupled"). 
\section{Aufgabe - Analyse und Design einer SOA (Wahlteil 2 aus 4 Aufgaben)}
a)	Nennen und erläutern Sie, welche Arten von Services abhängig vom Nutzerkreis („Service
Audience") identifiziert werden können. Beschreiben Sie, welche dieser Services eher lose
gekoppelt („loosely coupled") und welche eher eng gekoppelt („tightly coupled") sein sollten.\\
b)	Das nachfolgende Bild zeigt anhand eines Service-Layer-Modells die verschiedenen Arten
von Services. Beschreiben Sie die Funktion jedes der gezeigten Layer. Veranschaulichen
Sie anschließend Ihre Erläuterungen anhand eines durchgängigen Beispiels. \\
c) Um Business Services zu identifizieren, kann Top-Down oder Bottom-Up vorgegangen werden. Beschreiben Sie die beiden Vorgehensweisen stichwortartig. Erläutern Sie anschließend anhand der Vor- und Nachteile der beiden Ansätze, warum in den meisten Fällen ein
kombinierter Top-Down-/Bottom-Up-Ansatz vorzuziehen ist. 
\section{Aufgabe - Implementierung und Test einer SOA}
a)	Nennen Sie Gründe, warum das Testen einer SOA-basierten Anwendung im Vergleich zu traditionellen Nicht-SOA-Systemen besonders herausfordernd ist.\\
b)	In der Softwareentwicklung — unabhängig von SOA — folgt der Test häufig dem so genannten V-Modell. Stellen Sie das V-Modell grafisch dar und beschreiben Sie die einzelnen Phasen.
c)	In einer SOA muss neben dem Gesamtsystem („Composite Application") jeder veröffentlichte\\ (Business-)Service unabhängig von möglichen Consumer-Anwendungen vollständig getestet werden. Hierdurch wird aus dem V-Modell das W-Modell. Beschreiben Sie anhand der nach-folgenden Tabelle, welche Art von Tests für die einzelnen Business-Services sowie für das Gesamtsystem je Testphase („Test Stage") durchgeführt werden müssen. Veranschaulichen Sie Ihre Erläuterungen anhand von Beispielen (die Tabelle gibt nur die Struktur vor; bitte benutzen Sie zur Beantwortung ein separates Blatt). 
\section{Aufgabe - Technische Architektur und Sicherheitsaspekte einer SOA}
a) Aus technischer Architektursicht können die nachfolgend aufgelisteten SOA-Architekturtypen unterschieden werden. Erläutern Sie diese Typen mit Hilfe von Grafiken und stichwortartigen Beschreibungen.\\
a.	Basic Service Architectures
b.	Service-Consuming Architectures and Service-Providing Architectures
c.	Systems Decoupling Architectures
d.	Legacy Wrapping Architectures
e.	Process Orchestration Architectures
b) Im Zuge der Betrachtung sicherheitsrelevanter Aspekte einer SOA ist eine Risikoanalyse unabdingbar. Beschreiben Sie, was unter einer Risikoanalyse und einem Risikomanagement zu verstehen ist, und erläutern Sie die jeweilige Vorgehensweise stichpunktartig.\\
c) Im Rahmen eines SOA-Sicherheitskonzeptes spielen SOA/Web Service/XML Security Gateways oftmals eine zentrale Rolle. Nennen Sie typische Schwachstellen („Vulnarabilities") einer SOA-Landschaft, die durch ein solches Gateway adressiert werden können, und beschreiben Sie, durch welche Maßnahmen das Gateway diese Schwachstellen beseitigen kann.

\section{Aufgabe - Umsetzung von SOA-Governance in Organisationen}
a)	Es gibt verschiedenste Organisationsformen, welche die Einführung von SOA in der Organisation unterstützen. Grundsätzlich können die drei Organisationsformen Centralized/Center
of Excellence, SOA Program und Decentralized unterschieden werden. Beschreiben Sie diese drei Ansätze und nennen Sie die jeweiligen Vor- und Nachteile. Erläutern Sie außerdem,
wann sich welcher Ansatz eignet.\\
b)	Das nachfolgend abgebildete Service Layering Model zeigt Services zusammen mit ihren
Versionsnummern. Dabei steht die erste Ziffer für einen „Major Change" (bricht die Abwärtskompatibilität) und die zweite Nummer für einen „Minor Change" (bricht die Abwärtskompatibilität nicht).\\
Nehmen Sie nun folgendes Szenario an: Der Service "getCustomer 1 0" liefert aktuell die
Kundenstammdaten „Name", „Titel" und „Status" zurück. Es gibt nun eine Änderungsanforderung dahingehend, dass Inhalt und Struktur der Rückgabedaten geändert werden sollen. So
sollen unter anderem zusätzlich Adressdaten zurückgegeben werden. Nehmen Sie an, dass
der geänderte Service hierzu sowohl sämtliche bestehenden Component Services unverändert nutzt, jedoch zusätzlich einen neuen Component Service erstellen muss, der die
Adressdaten aus einem Fremdsystem holt.
Stellen Sie die Änderungen, die sich durch das Szenario ergeben, grafisch inklusive der Auswirkungen auf die Versionierung dar. Erläutern und begründen Sie Ihre Grafik. \\
c)	Erläutern Sie die grunsätzliche Idee von Service Level Agreements (SLAs) im Umfeld von SOA-Services. Nennen Sie stichpunktartig die Zielsetzung solcher SLAs.

\end{document}