Upload
elldrich-schmock
View
103
Download
0
Embed Size (px)
Citation preview
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.1
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19 Serviceorientierte Architektur
19.0 Einführung Lernziele Grundbegriffe
19.1 Services als wiederverwendbare Komponenten Spezifikation mit WSDL
19.2 Service-Engineering Ermittlung von Servicekandidaten Entwerfen von Serviceschnittstellen Implementierung und Bereitstellung der Services Services für Altsysteme
19.3 Software-Entwicklung mit Services Entwurf und Implementierung des Workflows Testen von Services
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.2
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.0 Lernziele
die Grundbegriffe von Webservices, Webservice-standards und serverorientierter Architektur verstehen
den serviceorientierten Engineering-Prozess für wiederverwendbare Webservices kennen
Servicekomposition als Mittel der serviceorientierten Anwendungsentwicklung kennen
wissen, wie Geschäftsprozessmodelle als Grundlage für den Entwurf serviceorientierter Systeme eingesetzt werden
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.3
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.0 Service
Definition “an act or performance offered by one party to another.
Although the process may be tied to a physical product, the performance is essentially intangible and does not normally result in ownership of any of the factors of production”
Wesentliche Merkmale Bereitstellung unabhängig von der Anwendung Serviceanbieter entwickeln spezifische Services Vielzahl von Benutzern von verschiedenen Anwendern
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.4
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.0 Serviceorientierte Architekturen Methode zur Entwicklung verteilter Systeme
Services als eigenständige Komponenten Ausführung auf geografisch verteilten Rechnern
verschiedener Anbieter Standards für Kommunikation und Datenaustausch
SOAP: Nachrichtenaustausch WSDL: Definition von Serviceschnittstellen WS-BPEL: Standard für Workflow-Sprachen zur Definition der
Komposition von Services Vorteile der SOA
Services lokal oder extern (Outsourcing) Services sprachunabhängig Einbindung von Altsystemen möglich Anwender übergreifende Systeme möglich
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.5
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.0 Serviceorientierte Architektur
Service-Anforderer
Service-Anbieter Service
(WSDL)
suchen
Service-Registrierun
g
veröffentlichen
binden (SOAP)
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.6
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.0 Standards für Webservices
XML-Technologien (XML, XSD, XSLT, ...)
Transport (HTTP, HTTPS, SMTP, ...)
Unterstützung (WS-Security, WS-Adressing, ...)
Prozess (WS-BPEL)
Servicedefinition (WSDL, UDDI)
Nachrichtenaustausch (SOAP)
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.7
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.0 REST-konforme (RESTful) Webservices
Webservicestandards „schwergewichtig“ zu allgemein, zu ineffizient
REST (REpresentational State Transfer) Übertragung von Ressourcenrepräsentationen
von Server zu Client
RESTful Webservices geringerer Verwaltungsaufwand Identifikation durch URI nur HTML-Methoden GET, PUT, POST, DELETE
Ersatz für SOAP/WSDL wenn keine externen Services nötig keine Unterstützung für WS-Reliability, WS-Transactions etc.
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.8
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.0 Serviceorientiertes Software-Engineering
neues Paradigma Cloud-Computing Dienstanbieter (Hosting) vorhandene Infrastruktur (Internet)
zwei Ansätze des Software-Engineering Service-Engineering
• Entwicklung verlässlicher wiederverwendbarer Dienste• Entwicklung für Wiederverwendbarkeit
Softwareentwicklung mit Services• Entwicklung verlässlicher Software
mit Services als Basiskomponenten• Entwicklung mit Wiederverwendung
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.9
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.1 Services als wiederverwendbare Komponenten Definition
A loosely-coupled, reusable software component that encapsulates discrete functionality which may be distributed and programmatically accessed. A web service is a service that is accessed using standard Internet and XML-based protocols
Weiterentwicklung der kombinierbaren Komponenten unabhängig keine „Benötigt“-Schnittstelle Kommunikation über Nachrichten Nutzung von Internetprotokollen
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.10
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.1 Web Service Description Language WSDL
Service-Beschreibung durch WSDL What: Welche Operationen unterstützt der Service? How: Wie wird der Service aufgerufen? Where: Wo ist der Service zu finden?
Struktur einer Beschreibung Einleitung
• XML-Namensraumdeklarationen Abstrakte Schnittstelle
• Deklarationen der in den Nachrichten verwendeten Typen• Beschreibung der bereitgestellten Operationen• Beschreibung der Ein- und Ausgabenachrichten
Konkrete Implementierung• Angabe des Protokolls (Bindung), in der Regel SOAP• Speicherort (Endpunkt), angegeben durch URI
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.11
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.1 Auszug einer WSDL-Beschreibung (1)Define some of the types used. Assume that the namespace prefixes ‘ws’ refers to the namespace URI for XML schemas and the namespace prefix associated with this definition is weathns. <types>
<xs: schema targetNameSpace = “http://.../weathns” xmlns: weathns = “http://…/weathns” ><xs:element name = “PlaceAndDate” type = “pdrec” /><xs:element name = “MaxMinTemp” type = “mmtrec” /><xs: element name = “InDataFault” type = “errmess” />
<xs: complexType name = “pdrec”<xs: sequence><xs:element name = “town” type = “xs:string”/><xs:element name = “country” type = “xs:string”/><xs:element name = “day” type = “xs:date” />
</xs:complexType>
Definitions of MaxMinType and InDataFault here
</schema></types>
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.12
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.1 Auszug einer WSDL-Beschreibung (2)Now define the interface and its operations. In this case, there is only a single operation to return maximum and minimum temperatures.
<interface name = “weatherInfo” ><operation name = “getMaxMinTemps” pattern = “wsdlns: in-out”>
<input messageLabel = “In” element = “weathns: PlaceAndDate” /><output messageLabel = “Out” element =
“weathns:MaxMinTemp” /><outfault messageLabel = “Out” element =
“weathns:InDataFault” /></operation>
</interface>
Nachteile der WSDL-Beschreibung keine Beschreibung der Semantik keine Beschreibung der nichtfunktionalen Eigenschaften
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.13
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.2 Service-Engineering
Entwicklung von Services zur Wiederverwendung in serviceorientierten Anwendungen Service als wiederverwendbare Abstraktion,
die in verschiedenen Systemkontexten genutzt werden kann Service stabil und zuverlässig
mit allgemein nützlicher Funktionalität Service so dokumentiert,
dass Nutzer ihn finden und verstehen können
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.14
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.2 Vorgehen beim Service-Engineering
Ermittlung von Servicekandidaten Identifizierung zu implementierender Dienste Ergebnis: Anforderungsdefinitionen für den Service
Serviceentwurf Entwurf der Schnittstelle Ergebnis: Spezifikation der Schnittstelle in WSDL
Serviceimplementierung Implementation und Test Ergebnis: validierter Service
Bereitstellung Ergebnis: bereitgestellter validierter Service
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.15
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.2.1Ermittlung von Servicekandidaten
Services sollen Geschäftsprozesse unterstützen
Ermittlung von Servicekandidaten erfordert Analyse und Verständnis der Geschäftsprozesse wiederverwendbare Services zur Unterstützung der Prozesse
Arten von Services Hilfsservices
• allgemeine Funktionalität für verschiedene Geschäftsprozesse Geschäftsservices
• verknüpft mit einer bestimmten Geschäftsfunktion Koordinations- / Prozessservices
• unterstützen zusammengesetzte Prozesse mit verschiedenen Handelnden und Tätigkeiten
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.16
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.2.1Ermittlung von Servicekandidaten Typen von Services
aufgabenorientiert (auftragsorientiert)• verknüpft mit einer Tätigkeit• Hilfsservices, Geschäftsservices, Koordinationsservices
objektorientiert (entitätsorientiert)• verknüpft mit einem Geschäftsobjekt• Hilfsservices, Geschäftsservices
Hilfsservices Geschäftsservices Koordinationsservices
Aufgabe(Auftrag)
• Währungsumrechner•Arbeitskräftevermittlung
• Validieren von Antragsformularen• Überprüfen des Kreditrahmens
• Verarbeiten von Spesenabrechnungen
• Bezahlung externer Zulieferer
Objekt(Entität)
•Dokumentformatprüfung• Webformular/
XML-Konverter
• Spesenformular• Immatrikulationsantrag
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.17
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.2.1Leitfragen zur Ermittlung von Kandidaten Ist der Service mit einem einzigen logischen Objekt verknüpft,
das in unterschiedlichen Geschäftsprozessen verwendet wird? Ist der Service mit einer Aufgabe verknüpft, die von
verschiedenen Personen in der Organisation ausgeführt wird? Wird dann die nötige Standardisierung akzeptiert?
Ist der Service unabhängig? Benötigt er andere Services? Muss der Service für seinen Betrieb einen Zustand verwalten?
Ist eine Datenbank nötig? Könnte der Service von Clients außerhalb der Organisation
benutzt werden? Gibt es interne und externe Benutzer? Stellen unterschiedliche Benutzer unterschiedliche nicht-
funktionale Anforderungen? Sind dazu verschiedene Versionen erforderlich?
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.18
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.2.1Szenario: Katalogservice Anbieter von Computerausrüstung stellt Katalog zur Verfügung, der
die angebotenen kundenspezifischen Systemzusammenstellungen mit den kundenspezifischen Preisen enthält
Bestellungen laufen davon getrennt über Beschaffungssysteme Funktionale Anforderungen
Kundenspezifische Version Herunterladbar zum Offline-Blättern Vergleich von Spezifikation und Preis von bis zu vier Artikeln Blätter- und Suchfunktionen Reservierungen für 48 Stunden, in denen bestellt werden muss
Nichtfunktionale Anforderungen Zugriff nur für Mitarbeiter berechtigter Kunden kundenspezifische Zusammenstellungen und Preise vertraulich von 7 bis 23 Uhr verfügbar Verarbeitung von bis zu zehn Anforderungen pro Sekunde
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.19
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.2.2Entwerfen von Serviceschnittstellen
Logischer Schnittstellenentwurf Festlegung der Anforderungen Definition der Operationen, ihrer Parameter und Ausnahmen
Nachrichtenentwurf Festlegung der Struktur der empfangenen und gesendeten
Nachrichten (z.B. in UML) Minimierung der Anzahl der Nachrichten
zur kompletten Ausführung des Service bei servicespezifischen Anwendungszuständen
Zustandsinformationen in die Nachrichten aufnehmen
Beschreibung mit WSDL
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.20
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.2.2Szenario: Operationen des Katalogservice
Operation Beschreibung
ErstelleKatalog
• erstellt spezifische Version des Katalogs für bestimmten Kunden• optionaler Parameter für Generierung eines PDF zum Download
Vergleiche • stellt Vergleich von bis zu sechs Merkmalen für bis zu vier Artikel dar
Zeige • zeigt alle Daten zu einem Artikel an
Suche • durchsucht den Katalog anhand eines logischen Ausdrucks• gibt eine Liste aller passenden Artikel aus
GibDatum • gibt das voraussichtliche Lieferdatum für einen Artikel
Reserviere • reserviert die Artikel, die der Kunde bestellen will• liefert Artikelinformation für das Bestellsystem des Kunden
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.21
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.2.2Szenario: Entwurf der Katalogschnittstelle
Operation Eingaben Ausgaben Ausnahmen
ErstelleKatalog
ekEin:UnternehmensIDPDFFlag
ekAus:URL des Katalogs
ekFehl:ungültige UnternehmensID
Vergleiche vgEin:UnternehmensIDArtikelattribut (bis zu 6)Artikelnummer (bis zu 4)
vgAus:URL der Tabelle
vgFehl:ungültige UnternehmensIDungültige Artikelnummerunbekanntes Attribut
Zeige zgEin:UnternehmensIDArtikelnummer
zgAus:URL der Seite
zgFehl:ungültige UnternehmensIDungültige Artikelnummer
Suche suEin:UnternehmensIDSuchstring
suAus:URL der Liste
suFehl:ungültige UnternehmensIDfehlerhafter Suchstring
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.22
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.2.2Szenario: Entwurf der Katalogschnittstelle
Operation Eingaben Ausgaben Ausnahmen
GibDatum gdEin:UnternehmensIDArtikelnummerAnzahl
gdAus:ArtikelnummerLieferdatum
gdFehl:ungültige UnternehmensIDungültige ArtikelnummerArtikel nicht verfügbarAnzahl = 0
Reserviere rvEin:UnternehmensIDArtikelnummerAnzahl
rvAus:ArtikelnummerAnzahlLieferdatumStückpreisGesamtpreis
rvFehl:ungültige UnternehmensIDungültige ArtikelnummerAnzahl = 0
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.23
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.2.2Szenario: UML Definition der NachrichtengdEin
uID: StringartNum:
integeranz:integergdAus
artNum:
integerliefDat: Date
gdFehl
fehlNum:
integer
fehlNum =1: uID ungültig2: artNum ungültig3: anz<=04: Artikel nicht
verfügbar
size (artNum) = 10liefDat > Today()
size (uID) = 8size (artNum) = 10anz > 0
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.24
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.2.3Implementierung und Bereitstellung
Programmierung Nutzung üblicher Programmiersprachen und Bibliotheken gesamter Service oder Schnittstelle für vorhandene Komponente oder Altsystem
Testen formal mit Testwerkzeugen für WSDL-Spezifikation funktional durch gültige Eingabenachrichten Ausnahmebehandlung durch ungültige Eingabenachrichten
Bereitstellen Installation auf Webserver Veröffentlichung der Servicebeschreibung für potentielle
Nutzer
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.25
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.2.3Servicebeschreibung
Information über den Serviceanbieter Angaben über das Unternehmen Kontaktdaten wichtig für Vertrauen in den Service
Informelle Beschreibung der Funktionalität wichtig zur Beurteilung des Nutzens in natürlicher Sprache
Detaillierte Beschreibung der Schnittstelle Syntax und Semantik formale Beschreibung z.B. WSDL
Registrierungsmöglichkeit Benachrichtigung bei Aktualisierungen
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.26
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.2.4Services an Altsystemen
Einbindung von Altsystemen in neue Anwendungen Nutzung vorhandener Funktionalität Reduzierung von Entwicklungskosten
Services als Hülle für das Altsystem Funktionalität geeignet aufteilen auf verschiedene Services
Nutzung der vorhandenen Funktionalität vollständig über Web-Schnittstelle auch durch externe Anwendungen möglich
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.27
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.3 Softwareentwicklung mit Services
Kombination und Konfigurierung von Services zu neuen zusammengesetzten Services und Anwendungen Softwareentwurf mit Wiederverwendung (Komposition) Verfügbarkeit der Services muss gewährleistet sein
Workflow als Basis der Kombination Workflow als Sequenz von Aktivitäten,
die zusammen einen Geschäftsprozess darstellen Ergebnisse einer Aktivität können zu Eingaben
einer nachfolgenden Aktivität werden Ergebnisse einer Aktivität können zur Rückgängigmachung
einer vorangehenden Aktivität führen (Kompensationsaktion) Beispiel: Urlaubspaket mit Flugbuchung, Hotelbuchung,
Mietwagenbuchung etc.
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.28
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.3 Serviceerstellung durch Komposition (1)
Workflow-Skizze
formulieren
Servicessuchen
Servicesauswählen
Workflowverfeinern
Workflow-Programmschreiben
Servicetesten
Workflow-Entwurf
ServicelisteService-
spezifikation
Workflow-Entwurf
ausführbarer
Workflow
bereitzustel-
lender Service
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.29
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.3 Serviceerstellung durch Komposition (2)
Workflow-Skizze formulieren „idealer“ abstrakter Entwurf
anhand der Anforderungen an den zusamengesetzten Service
Services suchen Registrierungen und Kataloge durchsuchen:
• angebotene Services• Anbieter• Details der Bereitstellung
Mögliche Services auswählen nach Funktionalität nach Kosten nach Qualität
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.30
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.3 Serviceerstellung durch Komposition (3)
Workflow verfeinern Präzisierung der bisher abstrakten Beschreibung ggf. Aktivitäten hinzufügen oder streichen ggf. zurück zur Suche gehen
Workflow-Programm schreiben Schnittstelle des kombinierten Service definieren (WSDL) Programm schreiben
• in konventioneller Programmiersprache (z.B. Java oder C#)• in spezieller Workflow-Sprache (z.B. WS-BPEL)
Fertigen Service / fertige Anwendung testen komplexer als Komponententests
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.31
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.3.1Entwurf und Implementierung von Workflows Analyse der Geschäftsprozesse
Aktivitäten Informationsaustausch
Spezifikation mit formaler Notation UML-Aktivitätsdiagramme BPMN (Business Process Model and Notation)
Implementieren der nicht verfügbaren Services Java und C# unterstützen Zusammenstellung von
Webservices
Erzeugen der ausführbaren Version des Workflows automatische Übersetzung von BPMN in WS-BPEL-Code
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.32
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.3.1BPMN Aktivitäten
ausgeführt durch Mensch oder Service dargestellt durch abgerundete Rechtecke
Ereignisse treten während des Geschäftsprozesses ein dargestellt durch Kreise
Gateways Verzweigungen / Entscheidungen oder Zusammenführung dargestellt durch Rauten
Abfolge von Aktivitäten dargestellt durch durchgezogene Pfeile
Nachrichtenfluss dargestellt durch gestrichelte Pfeile
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.33
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.3.1Beispiel eines Workflows in BPMN
Kunde
hotels.reserviereZimmer
hotels.keineVerfuegbarkeit
hotels.holeVorgaben
hotels.ueberpruefeVerfuegbarkeit
hotels.bestaetigeReservierung
erneut versuchen
keine Zimmer frei
Zimmer OK
abbrechen
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.34
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.3.1Interagierende Workflows in BPMN
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.35
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.3.2Testen von Services (1)
externe Services kein Zugriff auf den Quellcode Verifikation nicht möglich viele übliche Testverfahren nicht möglich jederzeit Modifikationen durch Anbieter möglich
• vorhandene Testergebnisse verlieren ihre Gültigkeit
dynamisch gebundene Services Tests unter allen möglichen Bindungen erforderlich
kostenpflichtige Services Kosten beim Testen möglicherweise Abonnement vor Test erforderlich
© Prof. Dr. Andreas M. Heinecke, WHS Gelsenkirchen.
Wissen. Was praktisch zählt.
Stand: 22.05.13 Folie 19.36
Software-Engineering SS 2013 – Alle Master-Studiengänge der Informatik
19.3.2Testen von Services (2)
nichtfunktionales Verhalten prinzipiell Tests unter verschiedener Last nötig – aber wie?
Kompensationsaktionen oft bei Ausfall eines Service schwer zu testen / zu simulieren