Seminararbeit Einbindung von Webservices über BPEL

Größe: px
Ab Seite anzeigen:

Download "Seminararbeit Einbindung von Webservices über BPEL"

Transkript

1 Seminararbeit Einbindung von Webservices über BPEL Julian Harrer IBB4B Hochschule München Sommersemester 2008 Seminar: Integration von Geschäftsprozessen Prof. Dr. Zimmer Torsten München

2 I. Inhaltsverzeichnis 1. Einführung und Zielsetzung Orchestration Business Process Execution Language Entwicklungsgeschichte Konzepte Einordnung Allgemeine Einordnung Einordnung im Schichtenmodell Servicebeschreibung Abstrakte Beschreibung Konkrete Beschreibung Prozessbeschreibung Konstrukte der Prozessbeschreibung Strukturierte Aktivitäten Primitive Aktivitäten Compensation Handler BPEL und SOA Fazit... 25

3 II. Abbildungsverzeichnis: Abbildung 1: Prozessmodellierung ohne Kapselung... 5 Abbildung 2: Prozessmodellierung mit Kapselung... 6 Abbildung 3: Geschichte von WS-BPEL... 6 Abbildung 4: Entstehung von BPEL... 7 Abbildung 5: Einordnung von WS-BPEL im Schichtenmodell... 9 Abbildung 6: WS-BPEL Prozesses Abbildung 7: Compensation Handler Abbildung 8: SOA Schichtenmodell mit eigener Orchestrationsschicht III. Tabellenverzeichnis: Tabelle 1: Elemente der abstrakten Servicebeschreibung Tabelle 2: Elemente der konkreten Beschreibung Tabelle 3: Konstrukte der Prozessbeschreibung Tabelle 4: Strukturierte Aktivitäten Tabelle 5: Primitive Aktivitäten IV. Abkürzungsverzeichnis: B2B...Business to Business B2C...Business to Customer BPEL.Business Process Execution Language BPEL4WS.Business Process Execution Language for Webservices CORBA.Common Object Request Broker Architecture EAI... Enterprise Application Integration FTP...File Transfer Protocol HTTP.Hypertext Transport Protocol SMTP.Simple Mail Transfer Protocol SOA Serviceorientierte Architekturen SOAP.früher: Simple Object Access Protocol WS-BPEL..Webservice Business Process Execution Language WSDL Webservice Description Language WSFL.Webservice Flow Language XML...Extensible Markup Language XLANG...XML Language

4 1. Einleitung und Zielsetzung Das Konzept der Webservices entwickelte sich in den letzten Jahren rasant schnell und etablierte sich in der Welt der verteilten Anwendungen sowohl im B2B als auch im B2C Bereich zum De-facto-Standard. Die Aufgabe solcher Services ist die Bereitstellung einzelner Dienste innerhalb eines Unternehmens oder über Unternehmensgrenzen hinweg. Sie agieren hierbei offtmals als Schnittstelle unterschiedlicher Programmiersprachen und ermöglichen somit eine plattformunabhängige Kommunikation zwischen verschiedenen Softwarekomponenten. In der Praxis können komplexe Aufgaben jedoch kaum über einzelne Services sondern eher über die Komposition mehrerer unabhängiger Webservices gelöst werden. Dabei verschmelzen unterschiedliche Dienste verschiedener Unternehmen oder Serviceanbietern zu einem einheitlichen Geschäftsprozess. Ohne die Einschaltung einer zentralen Workflowlogik müssen diese Prozesse innerhalb der Anwendungsschicht bzw. Geschäftslogik implementiert werden. Die Trennung dieser beiden Ebenen ermöglicht unter anderem eine unabhängige Entwicklung und Wartung der jeweiligen Schicht und erleichtert die Modellierung eines Geschäftsprozesses über eine zentrale Stelle. Kompositionssprachen wie z.b. WS-BPEL oder WSFL übernehmen in komplexen Systemen die Aufgabe der Orchestration (siehe Punkt 2. Orchestration) und repräsentieren innerhalb der Systemarchitektur eine eigene Orchestrationsschicht (vgl. [Erl05], S. 586). Die Kompositionssprache Webservice Business Process Execution Language kurz WS- BPEL wird im laufe dieser Seminararbeit näher betrachtet. Dabei wird kurz auf den geschichtlichen Hintergrund sowie auf die Grundkonzepte dieser Sprache eingegangen. Nach einer Einordung von BPEL folgt eine Beschreibung der wichtigsten Sprachbestandteile. In dem darauf folgenden Kapitel BPEL und SOA wird die Rolle von WS-BPEL innerhalb einer Serviceorientierten Anwendung dargestellt, bevor ein Fazit diese Arbeit abschließt. Ziel dieser Seminararbeit ist nicht die detaillierte Beschreibung aller Sprachbestandteile oder Möglichkeiten von BPEL sondern eher eine Einführung in die grundlegenden Konzepte die sich hinter dieser Sprache verbergen.

5 2.0 Orchestration Der Begriff der Orchestration wird in IT-Systemen verwendet, in denen eine zentrale Steuerungseinheit die Verantwortlichkeit über die Prozesssteuerung übernimmt. Enterprise Application Integration kurz EAI-Middleware-Systeme verwenden dieses Konzept beispielsweise zur Automatisierung von Geschäftsprozessen oder für die Integration von Altsystemen (engl. legacy systemen) (vgl. [Erl05], S. 200). Mithilfe der Webservice-Erweiterungen wie WS-BPEL kann die Orchestration eines Systems über festgelegte Standards integriert werden. Die zugrunde liegende Plattform muss lediglich über eine entsprechende Orchestrationsengine verfügen um bestimmte Prozesse ausführen zu können. Innerhalb der Orchestrationsschicht können unbegrenzt viele Regeln, Konditionen und Ereignisse mithilfe der Prozessbeschreibung (siehe Punkt 3.5 Prozessbeschreibung) festegelegt werden (vgl. [Erl05], S. 200). Es wurde bereits erwähnt, dass über die Einführung einer Orchestrationsschicht die Wartbarkeit von Systemen erleichtert wird, da ein Prozess unabhängig von anderen Systemkomponenten erweitert oder ausgetauscht werden kann. Ein weiterer Vorteil gegenüber der Implementierung in der Anwendungsschicht ist die gesteigerte Übersichtlichkeit der gesamten Systemarchitektur. Jeder Prozess wird über eine einheitliche Schnittstelle von den anderen Schichten getrennt, was zur Folge hat, dass einzelne Webservices nicht mehr über mehrere Schnittstellen angesprochen werden müssen. Diese Aufgabe übernimmt die Orchestrationsschicht. Die folgenden zwei Abbildungen veranschaulichen die beiden unterschiedlichen Konzepte mithilfe einer vereinfachten Darstellung. Abbildung 1: Prozessmodellierung ohne Kapselung (Selbst erstellt)

6 Abbildung 2: Prozessmodellierung mit Kapselung (Selbst erstellt) 3. Business Process Execution Language 3.1 Entwicklungsgeschichte Abbildung 3: Geschichte von WS-BPEL (Selbst erstellt) Die Business Process Execution Language for Web Services (BPEL4WS) wurde mit der Veröffentlichung der Spezifikation BPEL4WS 1.0 im Juli 2002 erstmals der Öffentlichkeit vorgestellt. Zu diesem Zeitpunkt arbeiteten die Unternehmen IBM, Microsoft und BEA Systems zusammen an der Entwicklung dieser Sprache. BPEL übernahm dabei viele Aspekte der beiden Vorgängersprachen WSFL (IBM) und XLANG (Microsoft) auf die weiter unten noch einmal eingegangen wird.

7 Um es Herstellern zu ermöglichen sich an einem offenen Standard und nicht an unterschielichen Spezifikationen zu orientieren übergab man BPEL4WS im April 2003 zur Standardisierung an die OASIS. Mithilfe der Unternehmen SAP und Siebel Systems wurde weniger als ein Jahr nach der ersten Veröffentlichung im Mai 2003 die Erweiterung BPEL4WS 1.1 herausgegeben. Dieser Version wurde von Herstellerseite mehr Aufmerksamkeit gewidmet, was die Entwicklung mehrerer BPEL-kompatibler Orchestrationsengines zur Folge hatte. (vgl. [Erl05], Seite 567) Am 14. September 2004 wurde die Spezifikation aufgrund der Anpassung an andere WS*-Standards wie WSDL oder WS-Addressing in WS-BPEL 2.0 (Webservice Business Process Execution Language) umbenannt. Schließlich endete der Standardisierungsprozess am 11. April (vgl. [Wiki], Stand der Entwicklung ) Bemerkung: Im Folgenden werden die beiden Akronyme BPEL und WS-BPEL synonym verwendet. Abbildung 4 Entstehung von BPEL BPEL XLANG Microsoft WSFL IBM (Selbst erstellt) XLANG: Microsoft veröffentlichte XLANG im Jahr 2001 als Geschäftsprozess-Sprache für das BizTalk ecommerce suite. XLANG ist eine relativ simple XML-basierte Sprache für die Modellierung von Prozessen. Die Servicebeschreibung eines XLANG-Prozesses wird ähnlich wie bei BPEL über ein WSDL-Dokument geregelt. WSFL: Die Web Service Flow Language wurde im Jahr 2001 von IBM aus dem Bedarf nach einem allgemein akzeptieren Standard zur Definition von Geschäftsprozessen herausgegeben. Obwohl sich WSFL in der Industrie kaum durchsetzen konnte gingen einige Grundideen dieser Sprache, wie z.b. das flow-konzept zur Ausführung paralleler Aktivitäten, später in die BPEL Spezifikation ein. (vgl. [Harvey05], S240)

8 3.2 Konzepte WS-BPEL unterstützt zwei unterschiedliche Konzepte. Das Konzept der Beschreibung abstrakter Prozesse: Abstrakte Prozesse dienen ausschließlich der Beschreibung von abstrakten Prozessmodellen. Solche Prozesse müssen als abstrakt gekennzeichnet werden und sind im Gegensatz zu ausführbaren Geschäftsprozessen nicht ablauffähig. Der Prozessesablauf wird hierbei meist nur teilweise festgelegt, wobei konkrete Details vernachlässigt werden können. Abstrakte Prozesse dienen häufig als Vorlage für ausführbare Geschäftsprozesse. (vgl. [SPEZ] ) Das Konzept der Implementierung ausführbarer Geschäftsprozesse: Ausführbare Geschäftsprozesse stellen Dienste zur Erfüllung einer bestimmten Aufgabe zur Verfügung. Dieses Konzept wird im laufe dieser Arbeit noch ausführlicher behandelt. 3.3 Einordnung Allgemeine Einordnung WS-BPEL ist eine XML-basierte Kompositionssprache zur Modellierung von Geschäftsprozessen. Sie ermöglicht eine lang andauernde Kommunikation zwischen mehreren Partnern, wobei der Prozess selbst als eine Art Vermittler zwischen den einzelnen Teilnehmern fungiert. Der BPEL-Prozess stellt dem Client bestimmte Dienste zur Verfügung und nutzt für die Diensterfüllung die Funktionen anderer Services, dies können einzelne Webservices oder wiederum eigenständige Prozesse sein. Nach außen hin tritt der Prozess als einheitlicher Service auf, wobei die eigentliche Umsetztung, also der interne Ablauf des Prozesses verschleiert wird. Eine direkte Interaktion mit einem Menschen ist bei der Kommunikation nicht möglich, da mindestens ein Partner z.b. ein Webservice zwischen Benutzer und Prozess geschaltet wird. Der Benutzer hat also keinen direkten Einfluss auf den Prozessablauf (vgl. [IBM-BPEL4P]). Mithilfe von WS-BPEL wird keine detaillierte Geschäftslogik implementiert sondern ausschließlich der Workflow der beteiligten Komponenten geregelt. In diesem Zusammenhang wird auch oft der Begriff Programmieren im Großen verwendet, da Sprachen wie BPEL eine Ebene über anderen Programmiersprachen wie Java oder C# zum Einsatz kommen. (vgl. [Wiki] )

9 3.3.2 Einordnung in das Schichtenmodell Abbildung 5 Einordung von WS-BPEL im Schichtenmodell (vgl. [Aalst]) Wie in Abbildung 5 zu erkennen ist setzt die Webservice-Kompositionsschicht direkt auf der Webserviceschicht auf. Im Folgenden werden die einzelnen Schichten kurz erläutert. Die Transportschicht stellt die erforderlichen Transportprotokolle für die Kommunikation zwischen den einzelnen Partnern zur verfügung. Neben dem Simple Mail Transfer Protocol (SMTP), das häufig für die -Kommunikation verwendet wird, und das File Transfer Protocol (FTP) ist hier das Hyper Text Transport Protocol (HTTP) zu nennen, das am häufigsten für den Informationsaustausch zwischen Webservices zum Einsatz kommt. Das darüber liegende SOAP Protokoll ist jedoch an kein bestimmtes Transportprotokoll gebunden weshalb auch andere Standards verwendet werden könnten. Die ausgetauschten Nachrichten werden in Form einer SOAP-Message übermittelt. Das SOAP (ursprünglich Simple Object Access Protocol) Protokoll dient der Beschreibung eines XML-Nachrichtformats. Hiermit können entweder ganze XML-Formate übermittelt oder Methoden mithilfe von Remote Procedure Calls aufgerufen werden. (vgl. [Erl05] S. 146) Die Servicebeschreibung wird in Form eines WSDL-Dokuments hinterlegt. WSDL dient als Schnittstelle zwischen dem Prozess und den beteiligten Partnern. (siehe Punk 3.4 Servicebeschreibung) Direkt über dieser Webserviceschicht angesiedelt, übernehmen Kompositionssprachen wie WS-BPEL die Aufgabe der Webservice-Komposition bzw. Orchestration. (siehe Punkt 3.5 Prozessbeschreibung)

10 Die Publication and Discoveryschicht stellt ein Webservice-Repository zur Verfügung, dass zur Auffindung von Webservices verwendet werden kann. Die folgende Darstellung verdeutlicht die Rolle von SOAP und WSDL bei der Kommunikation mit einem WS-BPEL Prozess. In Abbildung 6 ist ein Client zu sehen, der eine SOAP-Nachricht an den Prozess sendet um eine Prozessinstanz zu erschaffen. Dies geschieht über die in der WSDL-Datei festgelegten Regeln. Als nächstes arbeitet der Prozess die einzelnen internen Schritte ab, die dem Client verborgen bleiben. Während des Ablaufs sendet der Prozess eigene SOAP-Anfragen an die einzelnen Partnerdienste und erhält von diesen ggf. eine Antwortnachricht zurück. Hierbei dient WSDL ebenfalls als Schnittstelle zwischen dem Prozess und den beteiligten Partnern. Schließlich wird dem Client eine Antwort in Form einer SOAP-Nachricht übermittelt. Abbildung 6 WS-BPEL Prozesses (vgl. [PELZ03])

11 3.4 Servicebeschreibung Jedem WS-BPEL Prozess wird eine Servicebeschreibung in Form eines WSDL-Dokuments zur Verfügung gestellt, dass alle benötigten Schnittstelleninformation enthält. Die Servicebeschreibung eines WS-BPEL Prozesses ähnelt der Beschreibung eines Webservices. Das WSDL-Dokument beinhaltet alle nötigen Informationen über angebotene und zu verwendende Dienste sowie die Beschreibung der abstrakten Beziehungen zwischen den einzelnen Partnern. Die Servicebeschreibung kann in die Teilbereiche abstrakte und konkrete Beschreibung unterteilt werden die im Folgenden erläutert werden. (vgl. [Erl05], S. 134) Abstrakte Beschreibung: Die abstrakte Beschreibung enthält ausschließlich Informationen, die in keiner Weise an bestimmte Technologien oder Protokolle gebunden sind. Hier werden sämtliche Schnittstelleninformationen in Form von type, porttype-, operation- und message-elementen hinterlegt. Diese Elemente werden in Tabelle 1 kurz beschrieben. Bemerkung: Die folgenden Beispiele sind der Einfachheit halber an manchen Stellen gekürzt worden. Außerdem wurden Namespace Zuordnungen in den meisten Fällen außer Acht gelassen. Tabelle 1 Elemente der abstrakten Servicebeschreibung <type> Mithilfe dieses Elements können Schema-Typen definiert werden, die z.b. als Teil einer Nachricht in einem message-element Verwendung finden. In diesem einfachen Beispiel wird ein Nachrichtentyp zur Abbildung eines Benutzers mit einer ID und einem Namen definiert. <type> <schema xmlns= targetnamespace=... > <complextype name= UserType > <sequence> <element name= ID type= xsd:integer /> <element name= Name type= xsd:string /> </sequence> <complextype> </schema> </type>

12 <message> Dieses Element beschreibt eine Nachricht, die bei der Kommunikation zwischen den einzelnen Partnern ausgetauscht wird. Eine message kann sich aus einem oder mehreren part-elementen zusammensetzen. In diesem Beispielt wird eine Requestnachricht beschrieben, die aus nur einem <part> Element besteht. <message name= getuserstaterequestmessage > <part name= UserParameter type= UserType > </message> <porttype> Dieses Element Beschreibt eine abstrakte Serviceschnittstelle und enthält eine Sammlung von angebotenen Operationen. Hier wird eine Serviceschnittstelle mit dem Namen UserPT beschrieben, die eine Methode GetUserState anbietet. <porttype name= UserPT > <operation name= GetUserState >... </operation>... </porttype> <operation> Diese Elemente werden innerhalb eines porttypes angegeben und enthalten nähere Informationen über die vom porttype angebotenen Operationen. Hier wird die Operation aus dem vorherigen Beispiel mit einem Input und Output Element versehen.... <operation name= GetUserState > <input message= getuserstaterequestmessage /> <output message= getuserstateresponsemessage /> </operation>

13 <partnerlinktype> Partnerlinktypes werden dazu verwendet die Kommunikationsbeziehungen aller teilnehmenden Services zu beschreiben. Über dieses Element wird einem Service (identifiziert über den porttype) ein role-element für jede Rolle, die er bei der Kommunikation annehmen kann, zugewiesen. In diesem Beispiel wird dem porttype aus dem vorherigem Beispiel die Rolle des UserServiceProvider zugewiesen. <partnerlinktype name= UserServiceType xmlns=... > <role name= UserServiceProvider > <porttype name= UserPT /> </role> </partnerlinktype Konkrete Beschreibung: Um eine Kommunikation mit den einzelnen Partnern zu ermöglichen muss die abstrakte Servicebeschreibung an konkrete physikalische Transportprotokolle gebunden werden. Innerhalb der konkreten Servicebeschreibung wird die eigentliche Verbindung zu den einzelnen Partnerservices festgelegt. Die hierzu benötigten Elemente sind in Tabelle 2 aufgelistet. Tabelle 2: Elemente der konkreten Beschreibung <binding> Mithilfe dieses Elements werden die, in der abstrakten Beschreibung definierten porttypes referenziert. Hierbei werden Protokoll- und Nachrichtendetails festgelegt. In diesem Beispiel wird der porttype aus dem vorherigen Beispiel an das SOAP Protokoll gebunden. Außerdem wird über das style Attribut festgelegt ob die Request-Nachricht im RPC-Style (rpc) oder Message-Style (document) verfasst werden muss. <binding name= UserBinding type= UserPT > <soap:binding style= rpc transport= /> <operation name= GetUserState > <soap:operation soapaction= /> <input> <soap:body use= literal > </input> <output> <soap:body use= literal > </output> </operation> </binding>

14 <service> Dieses Element wird dazu verwendet die physikalische Adresse des Services mithilfe eines port-elements festzulegen. In diesem Beispiel wird das UserBinding an eine reale Adresse gebunden. <service name= UserService > <port binding= UserBinding name= UserPort > <soap:address location= /> </port> </service> Bemerkung: Der BPEL-Prozess referenziert in der Prozessbeschreibung nur die abstrakten porttypes und keine konkreten bindings, dadurch kann sich die physikalische Bindung an die Partner ständig ändern, ohne den Prozess selbst zu beeinflussen. (vgl. [SPEZ]) 3.5 Prozessbeschreibung Jeder Prozess folgt einem bestimmten Ablauf und festgelegten Regeln, welche zusammengefasst als Prozessprotokoll bezeichnet werden. Im Falle von WS-BPEL wird dieses Protokoll innerhalb eines BPEL-Dokument, der Prozessbeschreibung festgelegt. Hier findet also die eigentliche Modellierung des Prozesses über verschiedene Konstrukte und Aktivitäten statt. Die wichtigsten Elemente der Prozessbeschreibung werden in den folgenden Abschnitten kurz erläutert. Bemerkung: In der Praxis helfen verschiedene Tools wie der JDeveloper BPEL Designer der Firma Oracle oder der IBM Websphere Integration Developer bei der Modellierung von BPEL- Prozessen, sodass Entwickler kaum noch in Kontakt mit echtem BPEL-Code gelangen Konstrukte der Prozessbeschreibung Die wichtigsten Elemente der Prozessbeschreibung werden standardmäßig am Anfang des BPEL-Dokumentes definiert. Hierzu gehören unter anderem Konstrukte für die Variablendeklaration oder der Festlegung der Beziehung zwischen dem Prozess und den einzelnen Partnern. Die folgende Tabelle gibt eine Übersicht über die wichtigsten Konstrukte der Prozessbeschreibung.

15 Tabelle 3: Konstrukte der Prozessbeschreibung <partnerlink> Über partnerlinks werden die Rollen der Partner bei der Kommunikation mit dem Prozess festgelegt. Mithilfe des Attributs myrole kann die Rolle des Prozesses festgelegt werden. Die Rolle des Partners wird über das partnerrole Attribut geregelt. Hierzu werden die möglichen Rollen der zuvor definierten partnerlinktypes verwendet. In diesem Beispiel wird ein partnerlink definiert, in dem der Prozess die Rolle des userrequester und der beteiligte Partner die Rolle des userservice übernimmt. <partnerlink name="userinforming" partnerlinktype="userservicetype" myrole="userrequester" partnerrole="userservice" /> <variable> Dieses Element dient der Deklaration einer Variablen eines bestimmten Typs. Der Wert einer Variablen kann beispielsweise bei dem Empfangen einer Nachricht zugewiesen und später beliebig manipuliert oder kopiert werden. Im folgenden Beispiel wird eine Variable User deklariert. <variables> <variable name="user" messagetype="getusermessage" />... </variables> <faulthandlers> Dieses Element wird dazu verwendet um Fehler abzufangen und entsprechend darauf zu reagieren. Im folgenden Beispiel wird ein Faulthandler definiert, der im Falle eines Bestellfehlers eine Fehlernachricht an den Client weiterleitet. <faulthandlers> <catch faultname="cannotcompleteorder" faultvariable="pofault" faultmessagetype="orderfaulttype"> <reply partnerlink="purchasing" porttype="lns:purchaseorderpt" operation="sendpurchaseorder" variable="pofault" faultname="cannotcompleteorder" /> </catch> </faulthandlers>

16 <compensation Hanlder> (Siehe Punkt Compensation Handler) Strukturierte Aktivitäten Strukturierte Aktivitäten werden verwendet um den Prozessfluß zu regeln. Mithilfe dieser Elemente können die einzelnen Bestandteile des Prozesses strukturiert und der Ablauf beeinflusst werden. In Tabelle 4 sind die hierfür wichtigsten Elemente aufgelistet. Tabelle 4: Strukturierte Aktivitäten <sequence> Über das sequence-element können mehrere Aktivitäten in einer bestimmten Reihenfolge abgearbeitet werden. In diesem Beispiel werden zwei Serviceanfragen nacheinander gesendet. <sequence> <invoke... >...</invoke> <invoke... >...</invoke> </sequence> <flow> Das flow-element ermöglicht es mehrere Aktivitäten parallel auszuführen, ohne auf das ende der vorherigen Aktivität warten zu müssen. Im folgenden Beispiel werden zwei Services parallel aufgerufen. <flow> <invoke... >...</invoke> <invoke... >...</invoke> </flow>

17 <if> Mithilfe dieses Elementes können Verzweigungen innerhalb des Prozesses formuliert werden. Im folgenden Beispiel wird eine bestimmte Aktivität nur ausgeführt falls die Variable userrole den wert admin besitzt. <if...> <condition> $userrole!= admin </condition> <throw... >...</throw> <else> <invoke...>...</invoke> </else> </if> <while> Dieses Element ermöglicht die wiederholte Ausführung bestimmter Aktivitäten, bis eine vorgegebene Bedingung erfüllt ist. In diesem Beispiel wird so lange eine Serviceanfrage gesendet bis die Eigenschaft auth der Uservariable true ergibt. <while standard-attributes> <condition>user.auth = false</condition> <invoke...>...</invoke> </while> <pick> Über dieses Element kann auf bestimmte Ereignisse, wie das Empfangen einer Nachricht gewartet und entsprechend reagiert werden. Im folgenden Beispiel wird auf das eintreffen einer Nachricht gewartet. Falls eine solche Nachricht empfangen wird sendet der Prozess eine Serviceanfrage an einen Partnerservice. <pick> <onmessage partnerlink="buyer" porttype="..." operation="..." variable="..."> <invoke...>...</invoke> </onmessage> </pick>

18 <scope> Mithilfe des scope-elements können mehrere Aktivitäten zu einem Bereich gebündelt werden. Diesem Bereich kann dann beispielsweise eine einheitliche Fehlerbehandlung zugewiesen werden. In diesem Beispiel wird ein bestimmter Bereicht mit einem Faulthandler und einer Sequenz von Aktivitäten versehen. <scope> <faulthandlers> <catch faultname=... > </catch> </faulthandlers> <sequence>...</sequence> </scope> Primitive Aktivitäten Primitive Aktivitäten übernehmen die grundsätzlichen Aufgaben des Prozesses wie das Austauschen von Nachrichten oder Aktionen zur Datenmanipulation. Tabelle 5: Primitive Aktivitäten <invoke> Hiermit können Funktionen anderer Services aufgerufen werden. In diesem Beispiel wird die Operation GetUserState des porttypes UserPT aufgerufen und die output- und input-variable festgelegt. <invoke partnerlink="userpl" porttype="userpt" operation="getuserstate" inputvariable="shippingrequest" outputvariable="shippinginfo"> </invoke>

19 <receive> Über dieses Element werden Clientanfragen entgegengenommen. Das folgende Beispiel zeigt, wie auf die Anfrage eines Client gewartet wird. Hierbei ist der porttype die Serviceschnittstelle des angebotenen Dienstes. Die empfangene Nachricht wird in die Variable userrequest geschrieben. <receive partnerlink="informing" porttype="processpt" operation="getuserinfo" variable="userrequest" createinstance="yes"> </receive> <reply> Dieses Element dient dem Senden einer Antwortnachricht an den Client. In diesem Beispiel wird eine Antwortnachricht an den Anfragenden Client gesendet, dies geschieht meist am ende des Prozesses. <reply partnerlink="informing" porttype="processpt" operation="getuserinfo" variable="userresponse"> </reply> <assign > Hiermit können ganze Nachrichten oder Teile von Nachrichten kopiert werden. Im folgenden Beispiel werden die Kundeninformationen einer empfangenen Nachricht in die Nachricht einer Bestellanfrage kopiert. <assign> <copy> <from>$userrequest.customerinfo</from> <to>$orderrequest.customerinfo</to> </copy> </assign> <throw> Dieses Element wird dazu verwendet auf Fehler im Prozessablauf aufmerksam zu machen. In diesem Beispiel wird ein Fehler bei der Userauthentifikation geworfen. <throw faultname="userauthfault"/>

20 <wait> Dieses Element ermöglicht das Warten bis zu einem bestimmten Zeitpunkt. In diesem Beispiel wird bis zu einer bestimmten Uhrzeit an einem bestimmten Tag gewartet um eine Aktivität auszuführen. <sequence> <wait> <until>' t18:00+01:00'</until> </wait> <invoke... /> </sequence> <exit> Dieses Element Terminiert den Prozess Compensation Handler WS-BPEL bietet die Möglichkeit bestimmte Aktivitäten wieder rückgängig zu machen. Um dies zu implementieren werden Compensation Handler verwendet, die im Fehlerfall von einem Faulthandler aufgerufen werden. Das folgende Beispiel zeigt eine <invoke> Aktivität, für die ein inline Compensation Handler definiert wurde. Das <invoke> Element ruft einen Bestellservice auf. Im Falle einer Kompenstation wird der Bestellvorgang abgebrochen. <invoke partnerlink="seller" porttype="sp:purchasing" operation="purchase" inputvariable="sendpo" outputvariable="getresponse"> <compensationhandler> <invoke partnerlink="seller" porttype="sp:purchasing" operation="cancelpurchase" inputvariable="getresponse" outputvariable="getconfirmation"> </invoke> </compensationhandler> </invoke> Kompensation von verschachtelten Bereichen (Scopes): In Abbildung 6 wird das Zusammenspiel von Fehlerbehandlung und Compensation-Handler verdeutlicht. Dem Prozess P wird eine Fehlerbehandlung FH(P) zugewiesen. Innerhalb des Prozesses wurden zwei verschachtelte Scopes S2 und S3 definiert und mit eigenen Compensation-Handlern versehen. Fängt der Prozess über eine Catch-Aktivität einen Fehler auf, wird zuerst der Compensation Handler CH(S2) und danach der Compensation Handler CH(S1) aufgerufen. Die Handler haben dabei unter anderem Zugriff auf zuvor definierte Variablen und können diese gemeinsam verwenden.

21 Abbildung 7 Compensation Handler (Quelle: [SPEZ]) 4.0 BPEL und SOA Serviceorientierte Architekturen kurz SOA sind ein auf Webservice basierendes Architekturmodell, dass anfangs aufgrund der Komplexität bei vielen Entwicklern für Verwirrung sorgte. In SOA Anwendungen zerlegt man ein gegebenes Problem so weit wie möglich in untergeordnete Teilprobleme um die Softwarelösung auf mehrere plattformunabhängige Services verteilen zu können. Die Idee der Kapselung einzelner Dienste war jedoch kein revolutionärer Gedanke in der IT-Welt. Spezifikationen wie beispielsweise CORBA verfolgten dieses Konzept bereits vor der Einführung des Begriffes SOA. Nichtsdestotrotz ist SOA ein sehr mächtiges Modell mithilfe dessen einzelne Komponenten einer Anwendung ohne Probleme ausgetauscht oder für andere Problemlösungen eingesetzt werden können. Der Aufbau einer SOA lässt erkennen, dass Kompositionssprachen und vor allem WS-BPEL eine wichtige Rolle innerhalb solcher Lösungen spielt. BPEL-Prozesse werden dabei nicht nur dafür verwendet Services anderer Unternehmen miteinander zu verbinden, sonder sind außerdem für die Verknüpfung Unternehmensinterner Abläufe zuständig. Einem BPEL- Prozess wird dabei eine bestimmte Verantwortlichkeit über die zugrunde liegenden

22 Webservices übertragen. Der Prozess ist also für die Ausführung der Services in den darunter liegenden Schichten verantwortlich. In Abbildung 7 ist das Schichtenmodell einer SOA-Anwendung dargestellt. Hier übernimmt ein WS-BPEL Prozess die Aufgabe der Orchestration der untergeordneten Webservices, die wiederum die Funktionalität der Anwendungsschicht verwenden. Abbildung 7 SOA Schichtenmodell mit eigener Orchestrationsschicht (Quelle: [Erl05])

23 5.0 Fazit: Obwohl WS-BPEL eine relativ junge Sprache ist, genießt sie schon jetzt eine hohe Akzeptanz von Seitens vieler Unternehmen und zeichnet sich vor allem durch eine breite Funktionalität aus. Auch das stetig wachsende Interesse an Serviceorientierten Architekturen trägt zu der bedeutenden Rolle dieser Sprache in jetzigen aber insbesondere auch in zukünftigen Systemen bei. Leider ist BPEL durch die hohe Anzahl an Möglichkeiten und Funktionen eine ziemlich komplexe Sprache und bereitet vor allem Neueinsteigern erhebliche Probleme. Zwar gibt es eine Vielzahl von hilfreichen Modellierungstools, die das automatisierte erstellen von BPEL-Prozessen ermöglichen, doch sind diese meist mit einem hohen Preis verbunden. So müssen Unternehmen für eine IBM WebSphere Integration Developer Lizens US Dollar bezahlen, was insbesondere für kleinere Unternehmen, neben Ausgaben für andere Middlewareprodukte, relativ viel ist. Nichtsdestotrotz ist BPEL eine vielversprechende Kompositionssprache, die sich ständig weiterentwickelt und sich dadurch wohl noch weiter von anderen Workflowsprachen absetzen wird.

24 Literatur und Quellverzeichnis Bücher: [Erl05] [Harvey05] Thomas Erl - Service-Oriented Architecture Concepts, Technology, and Design Prentice Hall International - September 2005 ISBN Michael Harvey Essential Business Process Modeling O'Reilly Media; Auflage: August 2005 ISBN Web: [Aalst] Van der Aalst, W. Don t go with the flow: Web services composition standards exposed: letzter Zugriff: [IBM01] IBM developerworks - Business Process with BPEL4WS: search_by=bpel4ws: [IBM- BPEL4P] [IBM-WS] [PELZ03] [SPEZ] [Wiki] letzter Zugriff: BPEL for Poeple letzter Zugriff: Standards and Web services letzter Zugriff: Chris Peltz Web Service Orchestration and Choreography letzter Zugriff: WS-BPEL 2.0 Spezifikation letzter Zugriff: Business Process Execution Language letzter Zugriff:

Wiederholung: Beginn

Wiederholung: Beginn B) Webserivces W3C Web Services Architecture Group: "Ein Web Service ist eine durch einen URI eindeutige identifizierte Softwareanwendung, deren Schnittstellen als XML Artefakte definiert, beschrieben

Mehr

WSDL. Web Services Description Language. André Vorbach. André Vorbach

WSDL. Web Services Description Language. André Vorbach. André Vorbach André Vorbach WSDL Web Services Description Language André Vorbach Übersicht Was ist WSDL? Dokumentenstruktur Elemente Definitions Types Messages porttype Binding Service SOAP-Bindings Beispiel Was ist

Mehr

Workflow, Business Process Management, 4.Teil

Workflow, Business Process Management, 4.Teil Workflow, Business Process Management, 4.Teil 24. Januar 2004 Der vorliegende Text darf für Zwecke der Vorlesung Workflow, Business Process Management des Autors vervielfältigt werden. Eine weitere Nutzung

Mehr

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen 9 3 Web Services 3.1 Überblick Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen mit Hilfe von XML über das Internet ermöglicht (siehe Abb.

Mehr

Java und XML 2. Java und XML

Java und XML 2. Java und XML Technische Universität Ilmenau Fakultät für Informatik und Automatisierung Institut für Praktische Informatik und Medieninformatik Fachgebiet Telematik Java und XML Hauptseminar Telematik WS 2002/2003

Mehr

Verteilte Systeme: Übung 4

Verteilte Systeme: Übung 4 Verteilte Systeme: Übung 4 WSDL und SOAP Oliver Kleine Institut für Telematik https://www.itm.uni-luebeck.de/people/kleine SOAP Nachrichten Serialisierung in XML Root-Element einer SOAP Nachricht ist

Mehr

Themen. Web Services und SOA. Stefan Szalowski Daten- und Online-Kommunikation Web Services

Themen. Web Services und SOA. Stefan Szalowski Daten- und Online-Kommunikation Web Services Themen Web Services und SOA Wer kennt den Begriff Web Services? Was verstehen Sie unter Web Services? Die Idee von Web Services Ausgangspunkt ist eine (evtl. schon bestehende) Software Anwendung oder Anwendungskomponente

Mehr

MSXFORUM - Exchange Server 2003 > SMTP Konfiguration von Exchange 2003

MSXFORUM - Exchange Server 2003 > SMTP Konfiguration von Exchange 2003 Page 1 of 8 SMTP Konfiguration von Exchange 2003 Kategorie : Exchange Server 2003 Veröffentlicht von webmaster am 25.02.2005 SMTP steht für Simple Mail Transport Protocol, welches ein Protokoll ist, womit

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

POIS-Praktikum 2007. Prozessimplementierung, RosettaNet PIPs 3A

POIS-Praktikum 2007. Prozessimplementierung, RosettaNet PIPs 3A POIS-Praktikum 2007 Prozessimplementierung, RosettaNet PIPs 3A Manuel Blechschmidt, David Foerster, Michael Leben, Mike Nagora, Jonas Rogge, Paul Römer Gliederung 2 Einleitung Was war unsere Aufgabe? Was

Mehr

L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016

L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016 L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016 Referentin: Dr. Kelly Neudorfer Universität Hohenheim Was wir jetzt besprechen werden ist eine Frage, mit denen viele

Mehr

Orientierungshilfen für SAP PI (Visualisierungen)

Orientierungshilfen für SAP PI (Visualisierungen) EINSATZFELDER FÜR DIE KONFIGURATIONS-SZENARIEN INTERNE KOMMUNIKATION UND PARTNER-KOMMUNIKATION UND DIE SERVICE-TYPEN BUSINESS-SYSTEM, BUSINESS-SERVICE UND INTEGRATIONSPROZESS Betriebswirtschaftliche Anwendungen

Mehr

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche

Mehr

Business Process Execution Language. Christian Vollmer <christian.vollmer@udo.edu> Oliver Garbe <oliver.garbe@udo.edu>

Business Process Execution Language. Christian Vollmer <christian.vollmer@udo.edu> Oliver Garbe <oliver.garbe@udo.edu> Business Process Execution Language Christian Vollmer Oliver Garbe Aufbau Was ist BPEL? Wofür ist BPEL gut? Wie funktioniert BPEL? Wie sieht BPEL aus?

Mehr

Ein Beispiel. Ein Unternehmen will Internettechnologien im Rahmen des E- Business nutzen Welche Geschäftsprozesse?

Ein Beispiel. Ein Unternehmen will Internettechnologien im Rahmen des E- Business nutzen Welche Geschäftsprozesse? Ein Beispiel Ein Unternehmen will Internettechnologien im Rahmen des E- Business nutzen Welche Geschäftsprozesse? Dipl.-Kfm. Claus Häberle WS 2015 /16 # 42 XML (vereinfacht) visa

Mehr

Enterprise Applikation Integration und Service-orientierte Architekturen. 09 Simple Object Access Protocol (SOAP)

Enterprise Applikation Integration und Service-orientierte Architekturen. 09 Simple Object Access Protocol (SOAP) Enterprise Applikation Integration und Service-orientierte Architekturen 09 Simple Object Access Protocol (SOAP) Anwendungsintegration ein Beispiel Messages Warenwirtschaftssystem Auktionssystem thats

Mehr

3-schichtige Informationssystem-Architektur

3-schichtige Informationssystem-Architektur 3-schichtige Informationssystem-Architektur plattformunabhängig beliebige Endgeräte Client als Applikation & Applet XML über SOAP Standard plattformunabhängig objektorientierte Architektur multiuserfähig

Mehr

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1 Kapitel 4 Die Datenbank Kuchenbestellung Seite 1 4 Die Datenbank Kuchenbestellung In diesem Kapitel werde ich die Theorie aus Kapitel 2 Die Datenbank Buchausleihe an Hand einer weiteren Datenbank Kuchenbestellung

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

Datenbanken Kapitel 2

Datenbanken Kapitel 2 Datenbanken Kapitel 2 1 Eine existierende Datenbank öffnen Eine Datenbank, die mit Microsoft Access erschaffen wurde, kann mit dem gleichen Programm auch wieder geladen werden: Die einfachste Methode ist,

Mehr

Softwareentwicklungspraktikum Sommersemester 2007. Grobentwurf

Softwareentwicklungspraktikum Sommersemester 2007. Grobentwurf Softwareentwicklungspraktikum Sommersemester 2007 Grobentwurf Auftraggeber Technische Universität Braunschweig

Mehr

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!. 040304 Übung 9a Analysis, Abschnitt 4, Folie 8 Die Wahrscheinlichkeit, dass bei n - maliger Durchführung eines Zufallexperiments ein Ereignis A ( mit Wahrscheinlichkeit p p ( A ) ) für eine beliebige Anzahl

Mehr

1 topologisches Sortieren

1 topologisches Sortieren Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

gallestro BPM - weit mehr als malen...

gallestro BPM - weit mehr als malen... Ob gallestro das richtige Tool für Ihr Unternehmen ist, können wir ohne weitere rmationen nicht beurteilen und lassen hier die Frage offen. In dieser rmationsreihe möchten wir Ihre Entscheidungsfindung

Mehr

Sind Prozessmanagement-Systeme auch für eingebettete Systeme einsetzbar?

Sind Prozessmanagement-Systeme auch für eingebettete Systeme einsetzbar? Sind Prozessmanagement-Systeme auch eingebettete Systeme einsetzbar? 12. Symposium Maritime Elektrotechnik, Elektronik und Informationstechnik, 8.-12. Oktober 2007 Rostock, Deutschland Rostock, Deutschland

Mehr

Einführungskurs MOODLE Themen:

Einführungskurs MOODLE Themen: Einführungskurs MOODLE Themen: Grundlegende Einstellungen Teilnehmer in einen Kurs einschreiben Konfiguration der Arbeitsunterlagen Konfiguration der Lernaktivitäten Die Einstellungen für einen Kurs erreichst

Mehr

Dokumentation. Schnittstelle IKISS Bayerischer Behördenwegweiser. Stand: 2008-10-21

Dokumentation. Schnittstelle IKISS Bayerischer Behördenwegweiser. Stand: 2008-10-21 Dokumentation Schnittstelle IKISS Bayerischer Behördenwegweiser Stand: 2008-10-21 Copyright 2008 Advantic Systemhaus GmbH. Alle Rechte vorbehalten. Dokumentationsmaterial, das von der Advantic Systemhaus

Mehr

Speicher in der Cloud

Speicher in der Cloud Speicher in der Cloud Kostenbremse, Sicherheitsrisiko oder Basis für die unternehmensweite Kollaboration? von Cornelius Höchel-Winter 2013 ComConsult Research GmbH, Aachen 3 SYNCHRONISATION TEUFELSZEUG

Mehr

Projektmanagement in der Spieleentwicklung

Projektmanagement in der Spieleentwicklung Projektmanagement in der Spieleentwicklung Inhalt 1. Warum brauche ich ein Projekt-Management? 2. Die Charaktere des Projektmanagement - Mastermind - Producer - Projektleiter 3. Schnittstellen definieren

Mehr

1 Mathematische Grundlagen

1 Mathematische Grundlagen Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.

Mehr

Webalizer HOWTO. Stand: 18.06.2012

Webalizer HOWTO. Stand: 18.06.2012 Webalizer HOWTO Stand: 18.06.2012 Copyright 2003 by manitu. Alle Rechte vorbehalten. Alle verwendeten Bezeichnungen dienen lediglich der Kennzeichnung und können z.t. eingetragene Warenzeichen sein, ohne

Mehr

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 von Markus Mack Stand: Samstag, 17. April 2004 Inhaltsverzeichnis 1. Systemvorraussetzungen...3 2. Installation und Start...3 3. Anpassen der Tabelle...3

Mehr

http://train-the-trainer.fh-joanneum.at IINFO Storyboard

http://train-the-trainer.fh-joanneum.at IINFO Storyboard IINFO Storyboard Allgemeine Bemerkungen und Richtlinien zur Handhabung. Das Storyboard besteht aus einem Web, d.h. einer vernetzten Struktur von HTML-Seiten welche später von den Programmieren direkt als

Mehr

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version 1.0.0. 23. September 2015 - 1 -

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version 1.0.0. 23. September 2015 - 1 - Matrix42 Use Case - Sicherung und Rücksicherung persönlicher Version 1.0.0 23. September 2015-1 - Inhaltsverzeichnis 1 Einleitung 3 1.1 Beschreibung 3 1.2 Vorbereitung 3 1.3 Ziel 3 2 Use Case 4-2 - 1 Einleitung

Mehr

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014)

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014) Handbuch NAFI Online-Spezial 1. Auflage (Stand: 24.09.2014) Copyright 2016 by NAFI GmbH Unerlaubte Vervielfältigungen sind untersagt! Inhaltsangabe Einleitung... 3 Kundenauswahl... 3 Kunde hinzufügen...

Mehr

Standards und Standardisierungsgremien

Standards und Standardisierungsgremien Standards und Standardisierungsgremien Begriffe Norm und Standard synonym Organisationen z.b. ISO: International Standards Organization DIN: Deutsches Institut für Normung e.v. ANSI: American National

Mehr

Windows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1

Windows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1 Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1 Wenn der Name nicht gerade www.buch.de oder www.bmw.de heißt, sind Internetadressen oft schwer zu merken Deshalb ist es sinnvoll, die Adressen

Mehr

Lizenzierung von SharePoint Server 2013

Lizenzierung von SharePoint Server 2013 Lizenzierung von SharePoint Server 2013 Das Lizenzmodell von SharePoint Server 2013 besteht aus zwei Komponenten: Serverlizenzen zur Lizenzierung der Serversoftware und CALs zur Lizenzierung der Zugriffe

Mehr

Zeichen bei Zahlen entschlüsseln

Zeichen bei Zahlen entschlüsseln Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren

Mehr

Gutes Leben was ist das?

Gutes Leben was ist das? Lukas Bayer Jahrgangsstufe 12 Im Hirschgarten 1 67435 Neustadt Kurfürst-Ruprecht-Gymnasium Landwehrstraße22 67433 Neustadt a. d. Weinstraße Gutes Leben was ist das? Gutes Leben für alle was genau ist das

Mehr

Zulassung nach MID (Measurement Instruments Directive)

Zulassung nach MID (Measurement Instruments Directive) Anwender - I n f o MID-Zulassung H 00.01 / 12.08 Zulassung nach MID (Measurement Instruments Directive) Inhaltsverzeichnis 1. Hinweis 2. Gesetzesgrundlage 3. Inhalte 4. Zählerkennzeichnung/Zulassungszeichen

Mehr

SRM - Ausschreibung (Lieferant)

SRM - Ausschreibung (Lieferant) Inhalt 0. Systemlandschaft 2 1. Benachrichtigung über neue Ausschreibungen 2 2. Anmeldung am Lieferantenportal 2 3. Ausschreibung bearbeiten 3 3.1 Übersicht über alle Ausschreibungen 3 3.2 Teilnahme avisieren

Mehr

etutor Benutzerhandbuch XQuery Benutzerhandbuch Georg Nitsche

etutor Benutzerhandbuch XQuery Benutzerhandbuch Georg Nitsche etutor Benutzerhandbuch Benutzerhandbuch XQuery Georg Nitsche Version 1.0 Stand März 2006 Versionsverlauf: Version Autor Datum Änderungen 1.0 gn 06.03.2006 Fertigstellung der ersten Version Inhaltsverzeichnis:

Mehr

Ist Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken?

Ist Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken? UErörterung zu dem Thema Ist Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken? 2000 by christoph hoffmann Seite I Gliederung 1. In zu großen Mengen ist alles schädlich. 2.

Mehr

Grundlagen verteilter Systeme

Grundlagen verteilter Systeme Universität Augsburg Insitut für Informatik Prof. Dr. Bernhard Bauer Wolf Fischer Christian Saad Wintersemester 08/09 Übungsblatt 3 12.11.08 Grundlagen verteilter Systeme Lösungsvorschlag Aufgabe 1: a)

Mehr

Anleitung über den Umgang mit Schildern

Anleitung über den Umgang mit Schildern Anleitung über den Umgang mit Schildern -Vorwort -Wo bekommt man Schilder? -Wo und wie speichert man die Schilder? -Wie füge ich die Schilder in meinen Track ein? -Welche Bauteile kann man noch für Schilder

Mehr

Autorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente

Autorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente Autorisierung Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente Dokumentation zum Referat von Matthias Warnicke und Joachim Schröder Modul: Komponenten basierte Softwareentwickelung

Mehr

A585 Mailserver. IKT-Standard. Ausgabedatum: 2015-02-04. Version: 2.03. Ersetzt: 2.02. Genehmigt durch: Informatiksteuerungsorgan Bund, am 2005-12-05

A585 Mailserver. IKT-Standard. Ausgabedatum: 2015-02-04. Version: 2.03. Ersetzt: 2.02. Genehmigt durch: Informatiksteuerungsorgan Bund, am 2005-12-05 Eidgenössisches Finanzdepartement EFD Informatiksteuerungsorgan des Bundes ISB A585 Mailserver Klassifizierung: Typ: Nicht klassifiziert IKT-Standard Ausgabedatum: 2015-02-04 Version: 2.03 Status: Genehmigt

Mehr

SIMP 1.01 Protokollspezifikation (Mindestanforderung)

SIMP 1.01 Protokollspezifikation (Mindestanforderung) SIMP 1.01 Protokollspezifikation (Mindestanforderung) Autor: Harald Pittesser, Dokumentversion: 0.5 beta Eigenschaften SIMP (Simple Instant Message Protocol) ist ein Instant Message Protokol welches folgende

Mehr

Hilfedatei der Oden$-Börse Stand Juni 2014

Hilfedatei der Oden$-Börse Stand Juni 2014 Hilfedatei der Oden$-Börse Stand Juni 2014 Inhalt 1. Einleitung... 2 2. Die Anmeldung... 2 2.1 Die Erstregistrierung... 3 2.2 Die Mitgliedsnummer anfordern... 4 3. Die Funktionen für Nutzer... 5 3.1 Arbeiten

Mehr

Workflows verwalten. Tipps & Tricks

Workflows verwalten. Tipps & Tricks Tipps & Tricks INHALT SEITE 1. Grundlegende Informationen 3 2. Workflows / Genehmigungsprofile verwalten 2.1 Erstes Genehmigungsprofil einrichten 5 2.2 Zweites Genehmigungsprofil einrichten 11 2.3 Workflow

Mehr

4. BEZIEHUNGEN ZWISCHEN TABELLEN

4. BEZIEHUNGEN ZWISCHEN TABELLEN 4. BEZIEHUNGEN ZWISCHEN TABELLEN Zwischen Tabellen können in MS Access Beziehungen bestehen. Durch das Verwenden von Tabellen, die zueinander in Beziehung stehen, können Sie Folgendes erreichen: Die Größe

Mehr

Technical Note Nr. 101

Technical Note Nr. 101 Seite 1 von 6 DMS und Schleifringübertrager-Schaltungstechnik Über Schleifringübertrager können DMS-Signale in exzellenter Qualität übertragen werden. Hierbei haben sowohl die physikalischen Eigenschaften

Mehr

HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG

HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG it4sport GmbH HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG Stand 10.07.2014 Version 2.0 1. INHALTSVERZEICHNIS 2. Abbildungsverzeichnis... 3 3. Dokumentenumfang... 4 4. Dokumente anzeigen... 5 4.1 Dokumente

Mehr

ARCHITEKTUR VON INFORMATIONSSYSTEMEN

ARCHITEKTUR VON INFORMATIONSSYSTEMEN ARCHITEKTUR VON INFORMATIONSSYSTEMEN File Transfer Protocol Einleitung Das World Wide Web war ja ursprünglich als verteiltes Dokumentenverwaltungssystem für die akademische Welt gedacht. Das Protokoll

Mehr

Autor: Peter Seemann Seminar: Softwarearchitekturen Betreuer: Benedikt Meurer

Autor: Peter Seemann Seminar: Softwarearchitekturen Betreuer: Benedikt Meurer Autor: Peter Seemann Seminar: Softwarearchitekturen Betreuer: Benedikt Meurer *Was sind Web Services? *Beispiele für Web Services *Web Service Architektur *Web Services Technologien *Fazit 2 *Übertragungsstandard

Mehr

SMS/ MMS Multimedia Center

SMS/ MMS Multimedia Center SMS/ MMS Multimedia Center der BEYOND THE NET GmbH BEYOND THE NET GmbH Seite 1 Unser Multimedia Center ist eine WEB basierende Anwendung, die es ermöglicht von einer Zentrale aus, viele Mitarbeiter zu

Mehr

Zwischenablage (Bilder, Texte,...)

Zwischenablage (Bilder, Texte,...) Zwischenablage was ist das? Informationen über. die Bedeutung der Windows-Zwischenablage Kopieren und Einfügen mit der Zwischenablage Vermeiden von Fehlern beim Arbeiten mit der Zwischenablage Bei diesen

Mehr

Insiderwissen 2013. Hintergrund

Insiderwissen 2013. Hintergrund Insiderwissen 213 XING EVENTS mit der Eventmanagement-Software für Online Eventregistrierung &Ticketing amiando, hat es sich erneut zur Aufgabe gemacht zu analysieren, wie Eventveranstalter ihre Veranstaltungen

Mehr

Business Process Execution Language for Web Services (BPEL4WS)

Business Process Execution Language for Web Services (BPEL4WS) Hauptseminar und Vorlesung Web Services WS 2003/04 Business Process Execution Language for Web Services (BPEL4WS) Patrick Sauter 2/17 Vortrag - Überblick Definition, Zielsetzung und Allgemeines einfacher

Mehr

Konfiguration VLAN's. Konfiguration VLAN's IACBOX.COM. Version 2.0.1 Deutsch 01.07.2014

Konfiguration VLAN's. Konfiguration VLAN's IACBOX.COM. Version 2.0.1 Deutsch 01.07.2014 Konfiguration VLAN's Version 2.0.1 Deutsch 01.07.2014 In diesem HOWTO wird die Konfiguration der VLAN's für das Surf-LAN der IAC-BOX beschrieben. Konfiguration VLAN's TITEL Inhaltsverzeichnis Inhaltsverzeichnis...

Mehr

Handbuch ECDL 2003 Basic Modul 5: Datenbank Access starten und neue Datenbank anlegen

Handbuch ECDL 2003 Basic Modul 5: Datenbank Access starten und neue Datenbank anlegen Handbuch ECDL 2003 Basic Modul 5: Datenbank Access starten und neue Datenbank anlegen Dateiname: ecdl5_01_02_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Access

Mehr

Containerformat Spezifikation

Containerformat Spezifikation Containerformat Spezifikation Version 1.0-09.05.2011 Inhaltsverzeichnis 0 Einführung... 4 0.1 Referenzierte Dokumente... 4 0.2 Abkürzungen... 4 1 Containerformat... 5 1.1 Aufbau des Container-Headers...

Mehr

Monitore. Klicken bearbeiten

Monitore. Klicken bearbeiten Sascha Kretzschmann Institut für Informatik Monitore Formatvorlage und deren Umsetzung des Untertitelmasters durch Klicken bearbeiten Inhalt 1. Monitore und Concurrent Pascal 1.1 Warum Monitore? 1.2 Monitordefinition

Mehr

e-business - Patterns Stefan Brauch (sb058) -- Julian Stoltmann (js057)

e-business - Patterns Stefan Brauch (sb058) -- Julian Stoltmann (js057) e-business - Patterns Stefan Brauch (sb058) -- Julian Stoltmann (js057) 1 e-business Patterns??? e-business Patterns Architekturen, die sich über die Zeit bewährt haben. Pattern-Fundgrube web-basierte

Mehr

BaseCamp OS X, Zümo 590 und die unterschiedliche Punkte in einer Route:

BaseCamp OS X, Zümo 590 und die unterschiedliche Punkte in einer Route: BaseCamp OS X, Zümo 590 und die unterschiedliche Punkte in einer Route: Es gibt 2 verschieden Punkte die zur Routenerstellung in BaseCamp OS X, Zümo 590 zur Verwendung kommen: Wegpunkte/Zwischenziele mit

Mehr

Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java

Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java von Christian Brand Kennnummer: 09376 November 2005 Abkürzungen Abkürzungen API - Application Programming Interface

Mehr

ISO 20022 im Überblick

ISO 20022 im Überblick Inhaltsverzeichnis Was ist ISO 20022? 2 Wo sind die ISO-20022-Nachrichten veröffentlicht? 2 Welche Bereiche umfasst ISO 20022? 2 Welche Bedeutung hat ISO 20022 für die Standardisierung? 3 Welche Bedeutung

Mehr

Dokumentation. Black- und Whitelists. Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser

Dokumentation. Black- und Whitelists. Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser Dokumentation Black- und Whitelists Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser Inhalt INHALT 1 Kategorie Black- und Whitelists... 2 1.1 Was sind Black- und Whitelists?...

Mehr

M@school Software- und Druckerzuweisung Selbstlernmaterialien

M@school Software- und Druckerzuweisung Selbstlernmaterialien Bildung und Sport M@school Software- und Druckerzuweisung Selbstlernmaterialien Hinweise zum Skript: LMK = Linker Mausklick RMK = Rechter Mausklick LMT = Linke Maustaste RMT = Rechte Maustaste Um die Lesbarkeit

Mehr

Containerformat Spezifikation

Containerformat Spezifikation Containerformat Spezifikation Version 1.1-21.02.2014 Inhaltsverzeichnis 0 Einführung... 4 0.1 Referenzierte Dokumente... 4 0.2 Abkürzungen... 4 1 Containerformat... 5 1.1 Aufbau des Container-Headers...

Mehr

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen Open Source professionell einsetzen 1 Mein Background Ich bin überzeugt von Open Source. Ich verwende fast nur Open Source privat und beruflich. Ich arbeite seit mehr als 10 Jahren mit Linux und Open Source.

Mehr

Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers

Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers Ist Excel das richtige Tool für FMEA? Einleitung Wenn in einem Unternehmen FMEA eingeführt wird, fangen die meisten sofort damit an,

Mehr

Man liest sich: POP3/IMAP

Man liest sich: POP3/IMAP Man liest sich: POP3/IMAP Gliederung 1. Einführung 1.1 Allgemeiner Nachrichtenfluss beim Versenden von E-Mails 1.2 Client und Server 1.2.1 Client 1.2.2 Server 2. POP3 2.1 Definition 2.2 Geschichte und

Mehr

PL/SQL Web-Services mit Oracle 11g

PL/SQL Web-Services mit Oracle 11g DOAG 2008 Konferenz 01. - 03.12.2008 Nürnberg Markus Fiegler ORDIX AG, Paderborn mf@ordix.de www.ordix.de Agenda SOA und Web-Services im Überblick Datenbank als Web-Services Provider - Alternative mit

Mehr

Leitfaden zur Moduleinschreibung

Leitfaden zur Moduleinschreibung Studienorganisation Leitfaden zur Moduleinschreibung im Wahlbereich der Geistes- und Sozialwissenschaften und in die fakultätsübergreifenden Schlüsselqualifikationen Anmeldung im TOOL Die Adresse (URL)

Mehr

PTV VISWALK TIPPS UND TRICKS PTV VISWALK TIPPS UND TRICKS: VERWENDUNG DICHTEBASIERTER TEILROUTEN

PTV VISWALK TIPPS UND TRICKS PTV VISWALK TIPPS UND TRICKS: VERWENDUNG DICHTEBASIERTER TEILROUTEN PTV VISWALK TIPPS UND TRICKS PTV VISWALK TIPPS UND TRICKS: VERWENDUNG DICHTEBASIERTER TEILROUTEN Karlsruhe, April 2015 Verwendung dichte-basierter Teilrouten Stellen Sie sich vor, in einem belebten Gebäude,

Mehr

Dokumentation, Analyse, Optimierung,

Dokumentation, Analyse, Optimierung, Dokumentation, Analyse, Optimierung, Automatisierung als gemeinsame Sprache für Business, Architektur und Entwicklung DOAG SIG BPM, Folie 1 Vortragende Software Engineer Dr. Projektleiter Folie 2 Zühlke:

Mehr

1 Einleitung. Lernziele. automatische Antworten bei Abwesenheit senden. Einstellungen für automatische Antworten Lerndauer. 4 Minuten.

1 Einleitung. Lernziele. automatische Antworten bei Abwesenheit senden. Einstellungen für automatische Antworten Lerndauer. 4 Minuten. 1 Einleitung Lernziele automatische Antworten bei Abwesenheit senden Einstellungen für automatische Antworten Lerndauer 4 Minuten Seite 1 von 18 2 Antworten bei Abwesenheit senden» Outlook kann während

Mehr

Jede Zahl muss dabei einzeln umgerechnet werden. Beginnen wir also ganz am Anfang mit der Zahl,192.

Jede Zahl muss dabei einzeln umgerechnet werden. Beginnen wir also ganz am Anfang mit der Zahl,192. Binäres und dezimales Zahlensystem Ziel In diesem ersten Schritt geht es darum, die grundlegende Umrechnung aus dem Dezimalsystem in das Binärsystem zu verstehen. Zusätzlich wird auch die andere Richtung,

Mehr

Dokumentation zur Versendung der Statistik Daten

Dokumentation zur Versendung der Statistik Daten Dokumentation zur Versendung der Statistik Daten Achtung: gem. 57a KFG 1967 (i.d.f. der 28. Novelle) ist es seit dem 01. August 2007 verpflichtend, die Statistikdaten zur statistischen Auswertung Quartalsmäßig

Mehr

Windows 8.1. Grundkurs kompakt. Markus Krimm, Peter Wies 1. Ausgabe, Januar 2014. inkl. zusätzlichem Übungsanhang K-W81-G-UA

Windows 8.1. Grundkurs kompakt. Markus Krimm, Peter Wies 1. Ausgabe, Januar 2014. inkl. zusätzlichem Übungsanhang K-W81-G-UA Markus Krimm, Peter Wies 1. Ausgabe, Januar 2014 Windows 8.1 Grundkurs kompakt inkl. zusätzlichem Übungsanhang K-W81-G-UA 1.3 Der Startbildschirm Der erste Blick auf den Startbildschirm (Startseite) Nach

Mehr

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele:

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele: 2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Configuring Terminal Services o Configure Windows Server 2008 Terminal Services RemoteApp (TS RemoteApp) o Configure Terminal Services Gateway

Mehr

Arbeiten mit UMLed und Delphi

Arbeiten mit UMLed und Delphi Arbeiten mit UMLed und Delphi Diese Anleitung soll zeigen, wie man Klassen mit dem UML ( Unified Modeling Language ) Editor UMLed erstellt, in Delphi exportiert und dort so einbindet, dass diese (bis auf

Mehr

2. Kommunikation und Synchronisation von Prozessen 2.2 Kommunikation zwischen Prozessen

2. Kommunikation und Synchronisation von Prozessen 2.2 Kommunikation zwischen Prozessen 2. Kommunikation und Synchronisation von Prozessen 2.2 Kommunikation zwischen Prozessen Dienste des Internets Das Internet bietet als riesiges Rechnernetz viele Nutzungsmöglichkeiten, wie etwa das World

Mehr

AKTUALISIERT - Einrichten von imessage auf mehreren Geräten

AKTUALISIERT - Einrichten von imessage auf mehreren Geräten AKTUALISIERT - Einrichten von imessage auf mehreren Geräten Inhalt Kapitel 1 Kapitel 2 Kapitel 3 Kapitel 4 Kapitel 5 Zusätzliche E- Mailadressen für imessage/facetime Apple- ID erstellen imessage im iphone

Mehr

Lizenzierung von SharePoint Server 2013

Lizenzierung von SharePoint Server 2013 Lizenzierung von SharePoint Server 2013 Das Lizenzmodell von SharePoint Server 2013 besteht aus zwei Komponenten: Serverlizenzen zur Lizenzierung der Serversoftware und CALs zur Lizenzierung der Zugriffe

Mehr

Visualisierung verteilter Systeme

Visualisierung verteilter Systeme Visualisierung verteilter Systeme Visualisierung von kausalen Abhängigkeiten von Susanne Schulz SS04 1 Gegenstand dieses Vortags Growing Squares: Animated Visualization of Causal Relations Causality Visualization

Mehr

Geld Verdienen im Internet leicht gemacht

Geld Verdienen im Internet leicht gemacht Geld Verdienen im Internet leicht gemacht Hallo, Sie haben sich dieses E-book wahrscheinlich herunter geladen, weil Sie gerne lernen würden wie sie im Internet Geld verdienen können, oder? Denn genau das

Mehr

Konfiguration von Igel ThinClients fu r den Zugriff via Netscaler Gateway auf eine Storefront/ XenDesktop 7 Umgebung

Konfiguration von Igel ThinClients fu r den Zugriff via Netscaler Gateway auf eine Storefront/ XenDesktop 7 Umgebung Konfiguration von Igel ThinClients fu r den Zugriff via Netscaler Gateway auf eine Storefront/ XenDesktop 7 Umgebung Inhalt 1. Einleitung:... 2 2. Igel ThinClient Linux OS und Zugriff aus dem LAN... 3

Mehr

Hinweise zur Datensicherung für die - Prüfmittelverwaltung - Inhalt

Hinweise zur Datensicherung für die - Prüfmittelverwaltung - Inhalt Hinweise zur Datensicherung für die - Prüfmittelverwaltung - Inhalt 1. Vorbetrachtungen... 2 2. Die Installation... 2 3. Einstellungen - Erstellung der Verknüpfung... 3 3.1 Benutzung des Konfigurationsprogramms

Mehr

Einrichtung einer eduroam Verbindung unter dem Betriebssystem Android

Einrichtung einer eduroam Verbindung unter dem Betriebssystem Android Einrichtung einer eduroam Verbindung unter dem Betriebssystem Android Im Folgenden wird die Einrichtung einer eduroam-verbindung unter dem Betriebssystem Android beschrieben. Die Android-Plattform existiert

Mehr

Anwendungsbeispiele Sign Live! Secure Mail Gateway

Anwendungsbeispiele Sign Live! Secure Mail Gateway Anwendungsbeispiele Sign Live! Secure Mail Gateway Kritik, Kommentare & Korrekturen Wir sind ständig bemüht, unsere Dokumentation zu optimieren und Ihren Bedürfnissen anzupassen. Ihre Anregungen sind uns

Mehr

Wenn man nach Beendigung der WINDOWS-SICHERUNG folgendes angezeigt bekommt

Wenn man nach Beendigung der WINDOWS-SICHERUNG folgendes angezeigt bekommt 1. Für alle, die mit wenig zufrieden sind Wenn man nach Beendigung der WINDOWS-SICHERUNG folgendes angezeigt bekommt Bild 1 bekommt man erst mal einen Schreck. Die Meldung wurden nicht gesichert beunruhigt,

Mehr

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank In den ersten beiden Abschnitten (rbanken1.pdf und rbanken2.pdf) haben wir uns mit am Ende mysql beschäftigt und kennengelernt, wie man

Mehr

Text Formatierung in Excel

Text Formatierung in Excel Text Formatierung in Excel Das Aussehen des Textes einer oder mehrerer Zellen kann in Excel über verschiedene Knöpfe beeinflusst werden. Dazu zuerst die betroffenen Zelle(n) anwählen und danach den entsprechenden

Mehr

Pädagogik. Melanie Schewtschenko. Eingewöhnung und Übergang in die Kinderkrippe. Warum ist die Beteiligung der Eltern so wichtig?

Pädagogik. Melanie Schewtschenko. Eingewöhnung und Übergang in die Kinderkrippe. Warum ist die Beteiligung der Eltern so wichtig? Pädagogik Melanie Schewtschenko Eingewöhnung und Übergang in die Kinderkrippe Warum ist die Beteiligung der Eltern so wichtig? Studienarbeit Inhaltsverzeichnis 1. Einleitung.2 2. Warum ist Eingewöhnung

Mehr

Anton Ochsenkühn. amac BUCH VERLAG. Ecxel 2016. für Mac. amac-buch Verlag

Anton Ochsenkühn. amac BUCH VERLAG. Ecxel 2016. für Mac. amac-buch Verlag Anton Ochsenkühn amac BUCH VERLAG Ecxel 2016 für Mac amac-buch Verlag 2 Word-Dokumentenkatalog! Zudem können unterhalb von Neu noch Zuletzt verwendet eingeblendet werden. Damit hat der Anwender einen sehr

Mehr