Serviceorientierte Architektur / Web Service

Größe: px
Ab Seite anzeigen:

Download "Serviceorientierte Architektur / Web Service"

Transkript

1 Serviceorientierte Architektur / Web Service Eine Einführung Nenad Marjanovic Institut für Verteilte Systeme Fakultät für Informatik Universität Ulm ABSTRACT Die serviceorientierte Architektur, kurz SOA (Service Orientied Architecture), stellt eine flexible und anpassbare IT-Architektur für die verteilte Datenverarbeitung dar. Das Konzept, das dahinter steht, ist die Auslagerung von Funktionen bzw. Diensten in eigene Services, die dann angesprochen werden können. Diese Seminararbeit befasst sich mit einer grundlegenden Einführung in den konzeptuellen Aufbau dieser Architektur, sowie der bereits etablierten und standardisierten Ausprägung des Web Service mit SOAP als Kommunikationsprotokoll. Stichwörter BPEL, SOAP, UDDI, Web Service, WSDL, XML 1. EINFÜHRUNG Unter serviceorientierter Architektur versteht man die Auslagerung von Funktionen oder kompletten Geschäftsprozessen auf einen internen Dienst oder externen Service eines Dienstanbieters. Es ist also keine konkrete Technik, sondern vielmehr ein Konzept, wie die Softwarearchitektur gestaltet wird. Das Kern der Idee ist dabei, die genannten ausgelagerten Geschäftsprozesse durch Dienste abwickeln zu lassen. Der Geschäftsprozess ist dabei nicht nur eine einzelne kleine Tätigkeit, sondern bezeichnet eine ganze Folge von Aktivitäten. Der Dienst kann dabei wiederum andere Dienste nutzen, um seine Tätigkeit auszuführen. 1.1 Vorteile aus Sicht des Entwicklers Um die Vorteile aus dem Blick des Entwicklers zu erkennen, muss man kurz einen kleinen Rückblick in die Entwicklung der zur Verfügungstellung von wiederverwendbaren Code machen. In der frühen Zeit der Softwareentwicklung wurden Programme meist von Grund auf neu geschrieben. Doch die Programme wurden mit der Zeit größer und komplexer. Deshalb begann man Funktionen und Prozeduren so zu schreiben, dass Sie wiederverwendbar wurden. Fand man jedoch einen Fehler in einer dieser Funktionen, so musste er in jedem Programm, das diese Funktion verwendete, behoben werden. Darum wurden häufig verwendete Funktionen in Bibliotheken mit definierten Schnittstellen gebündelt, die in den Programmen nur importiert werden mussten. Auch hier gab es den Nachteil, dass im Fehlerfall alle Bibliotheken auf verschiedenen Installationen aktualisiert werden mussten. Durch Auslagerung dieser Funktionen auf einen Dienst bekommt der Code eine zentrale Anlaufstelle. Wird der Code dort verändert, so ist diese Änderung sofort bei allen Dienstnutzern verfügbar. Dadurch spart man sich einen enormen Verwaltungsaufwand. Der Entwickler muss sich auch nicht darum kümmern, wie der Service seine Aufgabe erfüllt, sondern kann ihn einfach über fest definierte Schnittstellen nutzen. So lässt sich der Code ohne Kenntnis über die Implementierung zentral gehalten immer wieder verwenden. 1.2 Vorteile aus Sicht des Managers Durch die zentrale Speicherung des Codes wird der Aufwand für die Wartung minimiert und durch die leichte Wiederverwendbarkeit die Entwicklungszeit für neue Projekte verkürzt. Unternehmen sind meist in autonome Abteilungen gegliedert. Dies hat zur Konsequenz, dass diese meistens auch eigene IT-Infrastrukturen anlegen und nutzen. Dabei hat jede Abteilung ihren eigenen Datenbestand und Aufgaben. Die Ressourcen für gleiche Tätigkeitsbereiche in verschiedenen Abteilungen werden meist mehrfach bereitgestellt. Hier kann durch die Bereitstellung von unternehmensweiten Diensten eine Kostenersparnis und eine zentrale Verwaltung erreicht werden, ohne dass die Abteilungen ihre lokalen Strukturen und Daten preisgeben müssen. Des weiteren kann ein kompletter Geschäftsprozess mit komplexen Aufgaben, die eine große Neuentwicklung mit sich bringen würden, auf einen externen Dienstleister ausgelagert werden. Dies bringt Flexibilität und Agilität. Erschließt man neue Märkte und Geschäftspartner, so kann man dynamisch alte Services gegen evtl. kostengünstigere neue Services austauschen. Der Vorteil gegenüber erworbenen Bibliotheken liegt darin, dass man sich bei einem Dienst auch nur auf die Funktionen, die benötigt werden, beschränken kann. Bei einer Bibliothek erwirbt man gleich ein ganzes Paket, welches oft zahlreiche weitere Funktionen anbietet, die nicht benötigt werden. Außerdem muss man keine eigenen Ressourcen für die Ausführung des Services aufbringen. Doch auch wenn die Services alle intern entwickelt werden, können sich evtl. durch das Anbieten dieser an externe Kunden neue Einnahmequellen ergeben. 1.3 Nachteile von SOA Durch die Umstellung auf ein verteiltes System muss man völlig neue Sicherheitsaspekte betrachten, die bei einer lokalen Kommunikation nicht gegeben sind. So sollte man sich

2 über die Sicherheit beim Übertragen der Daten Gedanken machen, und evtl. verschlüsseln. Weitere Probleme ergeben sich, wenn ein Dienst ausfällt und keine Alternative verfügbar ist. Dann kann die Aufgabe nicht erfüllt werden. Die Serviceorientierte Architektur kann bei feingranularen Prozessen oder großen Nachrichten, die nur kleinere Aufgaben zu erledigen haben, zu Geschwindigkeitseinbußen führen. Das Generieren und Verarbeiten von XML-Dokumenten nimmt ebenfalls Zeit in Anspruch. 2. SERVICEORIENTIERTE ARCHITEKTUR In diesem Kapitel soll die serviceorientierte Architektur näher erläutert werden. Abbildung 1 zeigt die wesentlichen Komponenten sowie deren Interaktionen. Figure 1: Interaktionstruktur der serviceorientierten Architektur 2.1 Komponenten In der Serviceorientierten Architektur werden im Wesentlichen 3 Rollen eingenommen: Dienstanbieter der einen Service anbietet. Dienstnutzer der einen Service nutzt. Verzeichnisdienst in welchem die verfügbaren Dienste aufgelistet sind. Der Dienstanbieter veröffentlicht dabei zunächst seinen Service in einem Verzeichnisdienst. Ein Nutzer, der einen Dienst benutzen will, sucht in einem Verzeichnisdienst nach einem Dienst. Wenn er dort einen Dienst findet, der seine Anforderungen erfüllt, kann er diesen Dienst in Anspruch nehmen. Die Kommunikation erfolgt über Nachrichten, die als Anfrage an die Schnittstelle des Dienstes geschickt werden bzw. als Antwort vom Dienst an den Nutzer. Eine Schnittstelle wird durch die Schnittstellenbeschreibung, welche eine Menge von Kommunikationsregeln darstellt, beschrieben. Neben der Beschreibung, welche Funktionen verfügbar sind und wie sie genutzt werden können, gibt es zu der Schnittstellenbeschreibung auch noch einen so genannten Kontrakt, der die Semantik der einzelnen Funktionen näher beschreibt. Im Folgenden werden die einzelnen Komponenten näher erläutert. 2.2 Dienst Ein Dienst stellt eine gewisse Funktionalität bereit. In der Kommunikation repräsentiert er den Anbieter. Dabei ist die Funktionalität meist eine nicht triviale größere Aufgabe, die oft auch einen ganzen Teil in einem Geschäftsprozess übernimmt. Denn es macht keinen Sinn grundlegende Funktionen, wie z.b. die Addition zweier Zahlen als Service auszulagern. Hierbei würde der Aufwand für die Kommunikation mit dem Dienst mehr Zeit in Anspruch nehmen, als die Ausführung der Funktionalität. Dabei stellt der Anbieter eine genau definierte Schnittstelle bereit. Diese sollte plattform- und programmiersprachenunabhängig sein, um eine möglichst hohe Verwendbarkeit erzielen zu können. Wie auch bei Modulen hält der Betreiber meist die konkrete Implementierung verborgen (Geheimnisprinzip). Des weiteren sollte nicht nur der Algorithmus, sondern auch beispielsweise die Programmiersprache oder Architektur des Dienstes geheim gehalten werden, um keine Firmengeheimnisse preis zu geben. Auch sollten geeignete Sicherheitsmechanismen wie das Prüfen von Zugriffsberechtigungen den Zugriff auf den Service absichern. Dadurch, dass nur über diese definierte Schnittstelle kommuniziert wird, spielt die konkrete Implementierung des Service auch keine Rolle. Er kann in beliebiger Programmiersprache und auf beliebiger Hard- und Software realisiert werden, solange auf ihn zugegriffen werden kann und er sich an die Schnittstelle hält. Die Schnittstellen sollten sich auch, nachdem sie einmal veröffentlicht wurden, nicht ändern, damit die Nutzer des Dienstes sich nicht anpassen müssen. Geänderte Dienste werden meist als ein neuer Service angeboten. Ein Dienst kann nur benutzt werden, wenn die Möglichkeit besteht, ihn aufrufen zu können. Dies wird meist über das Netzwerk (lokal im Intranet oder auch im gesamten Internet) ermöglicht. Es gibt jedoch auch lokale Dienste, die nur auf einem einzelnen Rechner erreichbar sind. Wenn ein Zugriff auf einen Service erfolgt, geschieht dies durch Austausch von Nachrichten. Unterstützen zwei Dienste gleiche Schnittstellen, so heißen Sie kompatibel. Der Vorteil hierbei ist, dass sie beliebig gegeneinander ausgetauscht werden können. 2.3 Nutzer Als Nutzer bezeichnet man denjenigen, der einen Dienst in Anspruch nimmt. Dabei sucht sich ein Nutzer aktiv einen Dienst, den er verwenden will. Ein Nutzer kann auch ein Dienst sein. Wenn ein Dienst eine bestimmte Funktionalität zur Zeit oder generell nicht erfüllen kann, kann er die Aufgabe an einen anderen Dienst weiter delegieren. Ein Nutzer nimmt meist nicht nur einen Dienst in Anspruch, sondern gleich eine ganze Dienstkette. So lassen sich selbst komplexe Geschäftsabläufe durch Aneinanderreihung von Diensten schnell bewerkstelligen. 2.4 Verzeichnis Im Verzeichnisdienst registrieren die Dienstanbieter ihre Services. Er verwaltet diese, und teilt suchenden Nutzern die nötigen Informationen über die einzelnen Dienste mit, um diese verwenden zu können. Zu diesen notwendigen Informationen gehört die Funktionalität des Dienstes, der Ort wo der Dienst aufgerufen werden kann sowie Informationen über die angebotene Schnittstelle. Der Vorteil ist hierbei, dass dadurch der Nutzer in seiner Software den zu verwendenden Dienst erst über ein Verzeichnis zur Laufzeit suchen kann. Anstatt den Dienst zuvor fest in den Code zu integrieren,

3 sucht er erst beim Ausführen der benötigten Funktionalität über den Verzeichnisdienst nach einem geeigneten Service. Dadurch kann er automatisch auf evtl. günstigere Angebote ausweichen, oder im Falle des Ausfalls eines Dienstes, eine Alternative wählen. 2.5 Nachrichten Die Kommunikation zwischen Anbieter und Nutzer erfolgt über Nachrichten. Der Dienstnutzer schickt dabei dem Service eine Anfrage und erhält daraufhin vom Anbieter eine Antwort. Das Format der Nachrichten wird vom Dienstanbieter vorgegeben, und sollte nach der Veröffentlichung nicht mehr geändert werden, da dies auch fast immer eine Umstellung beim Nutzer nach sich zieht. Das Wichtigste hierbei ist das plattform- und programmiersprachenunabhängige Format der Nachricht, so dass die Nutzung bzw. auch das Anbieten eines solchen Services nicht dadurch eingeschränkt wird. In der Praxis wird XML häufig dafür verwendet, da es das Kriterium der Plattformunabhängigkeit erfüllt, relativ einfach implementiert und auch von Menschen ohne besondere Hilfen gelesen werden kann. Da XML mittlerweile weit verbreitet ist, gibt es für nahezu jede Programmiersprache eine entsprechende Bibliothek, die das Lesen und Erzeugen von XML-Dokumenten erleichtern. 2.6 Zusammenfassung Mit der serviceorientierten Architektur ist die Wiederverwendung bereits implementierter Abläufe im Vergleich zu den davor genutzten Methoden des simplen Kopierens oder Einbindens von Modulen und Bibliotheken, deutlich einfacher. Der Code wird nicht an mehreren Stellen gespeichert, sondern zentral gehalten. Dadurch minimiert sich der Verwaltungsaufwand. Zugriff zum Dienst erlangt man über das Netzwerk. Durch die Plattformunabhängigkeit der Schnittstellen und der Kommunikation wird das Zusammenführen von heterogenen Systemen im Vergleich zu vorher erleichtert. Wenn sich diese Architektur in einem Unternehmen einmal durch eine größere Anzahl von Diensten etabliert hat, lassen sich im folgenden komplexe Anwendungen durch Nutzung dieser Dienste in Dienstketten relativ einfach realisieren. Aber auch bei der Nutzung externer Dienste von anderen Unternehmen können Einsparungen durch Ressourcenschonung bei Entwicklung und Nutzung erzielt werden. Durch das Verwenden von Verzeichnisdiensten können die Dienste variabel genutzt werden und die Applikation des Nutzers kann schnell auf die Gegebenheiten reagieren. 3. XML Wie im vorangegangenen Kapitel schon angedeutet, spielt XML bei einer Serviceorientierten Architektur eine große Rolle. Doch was genau ist XML? Die Extended Markup Language - kurz XML - ist eine Metasprache, also ein Sprachkonstrukt, mit welchem Sprachen beschrieben werden können. Ursprünglich von Microsoft und IBM vorangetrieben, wird es mittlerweile vom W3C standardisiert und ist mittlerweile in der vierten Version (seit September 2006) erschienen. Die Idee hinter der Sprache ist es, die Daten von der Semantik zu trennen. Dies wurde in der Vergangeheit schon mit verschiedenen Auszeichnungssprachen versucht. So ist XML eigentlich nur eine Untermenge von SGML (Standard Generalized Markup Language), welches schon 1986 als ISO-Standard publiziert wurde. 1 <auto> 2 <marke>audi</marke> 3 < s e r i e>r8</ s e r i e> 4 <motor> 5 <hubraum e i n h e i t=" l i t e r ">4. 2</hubraum> 6 <l e i s t u n g e i n h e i t=" ps ">420</ l e i s t u n g> 7 </ motor> 8 </ auto> Figure 2: Ein geschachteltes XML-Konstrukt. 3.1 Struktur Mit XML versucht man Inhalte möglichst leicht maschinell zugänglich, erstell- und manipulierbar zu machen. Dies wird hier dadurch erreicht, dass der Inhalt über kennzeichnende Markierungen in funktionale Blöcke gegliedert wird. Diese Markierungen sind durch spitze Klammern gekennzeichnet und Tags genannt. Ein Beispiel für einen solchen Tag wäre z.b. <automarke>. Die Menge aller in einem Dokument vorkommenden Tags wird Markup genannt. Auf jedes dieser Tags muss auch ein entsprechendes schließendes Tag im Dokument folgen. Ein schließender Tag ist derselber Tag, nur das dem Tag-Namen ein / vorangestellt ist. Beim vorherigen Beispiel wäre dies also </automarke>. Der Text zwischen der Anfangs- und Endmarke entspricht dem Wert dieser Marke. In den öffnenden Tags lassen sich des weiteren auch noch Eigenschaften definieren. Eine Eigenschaft wird durch den Namen sowie dessen Wert in Anführungsstrichen nach dem Tag-Namen, aber noch innerhalb der schließenden spitzen Klammer definiert. Ein Beispiel (einheit= liter ) befindet sich in Abbildung 2. Die durch die Marken gekennzeichneten Abschnitte können ineinander geschachtelt sein. Allerdings muss man darauf achten, dass die Auszeichnungen abgeschlossen werden, bevor ein übergeordnetes Markenpaar geschlossen wird. Ein Beispiel hierfür wäre Abbildung 2. Für eine genauere Betrachtung ist die offizielle Spezifikation in [15] vom W3C zu empfehlen. 3.2 Warum XML in SOA XML liefert die geforderte Plattformunabhängigkeit. Ein XML-Dokument kann von jedem Rechner erstellt werden, welcher mindestens den ASCII-Zeichensatz unterstützt. XML ist einfach und besteht nur aus einem Satz an Regeln für die Erstellung von Textformaten zur Strukturierung von Daten. XML hat nicht die Komplexität einer Programmiersprache und man muss auch kein Entwickler sein, um es nutzen zu können. Durch sein leicht durch Maschinen lesbares Format vereinfacht XML, Daten zu generieren, zu lesen und zu modifizieren. Es sorgt durch seinen Aufbau, dass auch die Strukturierung der Daten erhalten bleibt. Es kann mit beliebigen Marken und Daten gefüllt werden. Zu guter Letzt ist XML kostenlos und wird gut unterstützt. Es gibt zahlreiche (oft kostenlose) Werkzeuge und Bibliotheken, die die Erzeugung von XML-Dokumenten unterstützen und erleichtern. Durch die Standardisierung gibt es auch Menschen, die helfen können, da allen das gleiche XML zugrunde liegt. Da die Entwicklung derzeit vom W3C vorangetrieben ist, ist es lizenzfrei, und kann beliebig in die eigene Software integriert und auch für kommerzielle Anwendungen genutzt werden, ohne jemandem etwas bezahlen zu müssen.

4 4. WEB SERVICE MITTELS SOAP Web Services sind derzeit sehr beliebt. Sie bieten eine Vielzahl von Unternehmen über Web Services eine Schnittstelle zu ihren Dienstleistungen an. Darunter findet man auch bekannte Namen wie Amazon, ebay, Yahoo und Google. Alle genannten Unternehmen betreiben ihre Web Services über das Kommunikationsprotokoll SOAP. So können über Amazon direkt die Produkte in die eigene Infrastruktur übernommen werden [21] oder über die genannten Suchmaschinenbetreiber direkt Suchanfragen gestellt und im eigenen System ausgegeben werden[22,23]. Bei ebay haben Verkäufer über die API die Möglichkeit, Auktionen in einem eigenen Programm zu verwalten, über die SOAP-Schnittstelle direkt bei ebay zu inserieren und zu verwalten. [20] 4.1 Web Service Web Services sind eine konkrete Ausprägung der serviceorientierten Architektur. Basierend auf XML wurde es von OASIS und dem W3C standardisiert [15]. Aufbauend auf vorhandenen Internetprotokollen, kann es so relativ schnell implementiert werden. Ein Web Service besteht im Wesentlichen aus drei Komponenten: Kommunikationsprotokoll Im folgenden Unterkapitel wird SOAP vorgestellt, das entfernte Prozeduraufrufe mittels XML-Nachrichten ermöglicht. Dienstbeschreibung Eine Beschreibung der Funktionalität des Dienstes sowie dessen Benutzung. Bei SOAP wird dies in der Regel mittels einer WSDL-Datei realisiert. Verzeichnisdienst Ein Verzeichnisdienst, bei dem der Dienst registriert ist, um auch aufgefunden werden zu können. Hier wird im Folgenden UDDI vorgestellt. Im Anschluss daran soll noch kurz auf BPEL eingegangen werden. Mit BPEL ist es möglich mit einer der XML ähnlichen Beschreibungssprache Service miteinander zu koppeln, und diese automatisch ausführen zu lassen. 4.2 SOAP SOAP (ursprünglich für Simple Object Access Protocol, seit Version 1.2 jedoch keine Abkürzung mehr) wurde ursprünglich von Microsoft und später zusammen mit IBM entwickelt. Mittlerweile wird es vom W3C standardisiert [16]. SOAP ist ein Kommunikationsprotokoll, über welches entfernte Prozeduraufrufe und Dateiübertragungen durchgeführt werden können. Dabei werden Nachrichten basierend auf XML ausgetauscht. SOAP ist zwar ein Protokoll, besitzt aber keinerlei Spezifikationen zur eigentlichen Datenübertragung. Das Ziel der Entwickler war es, bereits bestehende Protokolle für die Übertragung zu nutzen. So wird SOAP meistens über das HTTP-Protokoll übertragen, aber jedes Übertragungsprotokoll wie FTP oder sogar SMTP sind möglich Nachrichten Bei SOAP gibt es drei Nachrichten-Typen: Request, Response und Fault. Mit der Reuquest-Nachricht schickt der Dienstnutzer eine Nachricht an den Service, welche Operation mit welchen Parametern ausgeführt werden soll. Dieser antwortet daraufhin mit einer Antwort- (Response) oder einer Fehler-Nachricht (Fault). Figure 3: Aufbau einer SOAP-Nachricht Alle Nachrichten an sich bestehen aus einem Umschlag (envelope), welcher einen optionalen Kopf (head) sowie den eigentlichen Rumpf (body) beinhaltet. Der Kopf enthält dabei beliebige zusätzliche, evtl. auch nicht standardisierte Elemente, die vom Dienstanbieter nicht unbedingt unterstützt werden müssen. Man kann diese aber auch mit dem Attribut mustunderstand versehen, so dass der Anbieter dieses Attribut interpretieren muss. Versteht der Anbieter dieses Element nicht, so schickt er eine Fehlermeldung mit einem Hinweis auf die unbekannten Elemente zurück. Neben den Standardinhalten können auch noch Routing-Optionen und Authentifizierungen über SOAP geregelt werden. In der Praxis wird dies jedoch über das darunter liegende Internetprotokoll (HTTP) geregelt. Als weiteres Atrribut für Header-Elemente gibt es actor, welches aussagt, für wen das Header-Element gedacht ist. So kann man z.b. eine mehrschichtige Bearbeitung von Dienstanfragen erzielen, indem man Authentifizierungen seperat behandelt und die eigentliche Nachricht erst danach an den Dienst weiterleitet. Der Body enthält das eigentliche XML-Dokument. Der Inhalt ist nicht standardisiert, sondern wird vom Nutzer selbst in Abhängigkeit vom Dienst vorgegeben. Beim Nachrichtenaustausch unterscheidet man zwischen zwei Methoden: Entfernte Prozeduraufrufe (Remote Procedure Calls, RPC) sowie ein beliebiger XML- Dokumentenaustausch. Ersteres ist dabei nur ein Spezialfall von Letzterem. Ein entfernter Prozeduraufruf enthält im Rumpf den Namen der gewählten Operation, sowie dessen mit Typbezeichnung versehenen Parameter. Die Antwort des Services liefert dann den Rückgabewert der Operation, bzw. eine Fehlermeldung bei falschen Parametern oder unbekannter Operation. Beim XML-Dokumentenaustausch kann ein beliebiges XML-Dokument ausgetauscht werden. Der Web Service fungiert hierbei dann als Transformator und liefert ebenfalls ein Dokument zurück. Abbildung 4 und 5 zeigen eine Request- sowie Response- Nachricht. Die Nachrichten wurden an den Web Service BabelFish von AltaVista geschickt. BabelFish ist ein Übersetzungsdienst, der Texte mit max Zeichen in eine von 8 Sprachen übersetzen kann. Die Nachrichten entsprechen dem entfernten Prozeduraufruf ohne jegliche Header. Dieser Aufruf der Operation entspricht in Pseudocode BabelFish(String, String), welcher wiederum einen String zurück gibt. Die Rückgabe entspricht dabei der Übersetzung des zweiten Parameter. Die Quell- und Zielsprache wird über den ersten Parameter übergeben. Das Format ist vom Dienstanbieter vorgegeben. Im Beispiel ist der String car zu übersetzen. Mit en_de wird dem Service mitgeteilt, dass er aus dem Englischen ins Deutsche übersetzen soll. Im Response wird als Rückgabewert Auto zurück geliefert.

5 1 <?xml version=" 1.0 " encoding=" UTF -8 "?> 2 <SOAP:Envelope xmlns:soap=" http: // schemas. x m l s o a p. org / soap / e n v e l o p e / " x m l n s : x s i=" h t t p : // www. w3. org / / XMLSchema - i n s t a n c e " xmlns:xsd=" h t t p : // www. w3. org / 2001/ XMLSchema "> 3 <SOAP:Body> 4 <n s 1 : B a b e l F i s h xmlns: ns1=" u r n : x m e t h o d s B a b e l F i s h " SOAP:encodingStyle=" http: // schemas. x m l s o a p. org / soap / e n c o d i n g / "> 5 <t r a n s l a t i o n m o d e x s i : t y p e=" x s d : s t r i n g "> en de</ t r a n s l a t i o n m o d e> 6 <s o u r c e d a t a x s i : t y p e=" x s d : s t r i n g ">Car</ s o u r c e d a t a> 7 </ n s 1 : B a b e l F i s h> 8 </SOAP:Body> 9 </ SOAP:Envelope> Figure 4: Beispiel einer Request-Nachricht. 1 <?xml version=" 1.0 " encoding=" UTF -8 "?> 2 <SOAP:Envelope xmlns:soap ENC=" h t t p : // s c h e m a s. x m l s o a p. org / soap / e n c o d i n g / " SOAP:encodingStyle=" http: // schemas. x m l s o a p. org / soap / e n c o d i n g / " x m l n s : x s i=" h t t p : // www. w3. org / / XMLSchema - instance " xmlns:soap=" http: // schemas. x m l s o a p. org / soap / e n v e l o p e / " xmlns:xsd=" h t t p : // www. w3. org / / X M L S c h e m a "> 3 <SOAP:Body> 4 <namesp1:babelfishresponse xmlns:namesp1=" u r n : x m e t h o d s B a b e l F i s h "> 5 <r e t u r n x s i : t y p e=" x s d : s t r i n g ">Auto</ r e t u r n> 6 </ namesp1:babelfishresponse> 7 </SOAP:Body> 8 </ SOAP:Envelope> Figure 5: Beispiel einer Response-Nachricht. 4.3 WSDL Um die Plattformunabhängigkeit der Dienste zu erhalten, wird auch eine plattformunabhängige Methode benötigt, die Schnittstelle der Dienste zu beschreiben. Bei Web Services hat sich der Ansatz mit WSDL durchgesetzt. WSDL steht für Web Service Description Language [17]. Sie ist eine maschinenlesbare Beschreibung, welche es ermöglicht, automatische Codeerzeugungs-Werkzeuge zu erstellen, so dass der Programmierer den Web Service als lokale Methoden behandeln kann. WSDL ist in einem XML-Format spezifiziert. Abbildung 4.3 gibt einen Überblick. Die Inhalte sollen im Folgenden erläutert werden. In <wsdl:types/> werden die in der Schnittstelle verwendeten Datentypen aufgeführt. Um die Plattformunabhängigkeit zu erhalten, werden häufig auf Datentypen der XMLSchema-Spezifikation verwendet. Hier 1 <?xml version=" 1.0 " encoding=" UTF -8 "?> 2 <w s d l : d e f i n i t i o n s> 3 <w s d l : t y p e s /> Datentypen 4 <w s d l : m e s s a g e /> Nachrichten 5 <wsdl: porttype /> Operationen 6 <w s d l : b i n d i n g /> S c h n i t t s t e l l e n 7 <w s d l : s e r v i c e /> Z u g r i f f 8 </ w s d l : d e f i n i t i o n s> Figure 6: XML-Notation einer WSDL-Datei. 1 <complextype name=" Mensch "> 2 <element name=" Name " type=" xsd: string " /> 3 <element name=" Alter " type=" xsd: int " /> 4 </ complextype> Figure 7: Definition eines komplexen Datentyps. können jedoch auch eigene Datentypen definiert werden. Ein Beispiel für einen selbstdefinierten Typ ist in Abbildung 7 zu sehen. In diesem Beispiel wird der Typ Mensch definiert. Dieser besteht aus 2 Elementen Name und Geschlecht, welche als String bzw. Integer definiert sind. Bei <wsdl:message/> wird definiert, welcher Datentyp bei einer Nachricht übertragen wird. In <wsdl:porttype/> werden die Operationen beschrieben. Dabei werden die für die Operation eingehenden Nachrichten, sowie deren ausgehende Nachrichten definiert. Für jede Operation wird dabei die zum Aufruf versendeten Nachrichten (Name) defniert sowie in der Regel je eine für Anfrage und Antwort. In <wsdl:binding/> wird die konkrete Schnittstelle, also die Operationen die aufgerufen werden können, eines Dienstes angegeben. Bei <wsdl:service/> wird der Zugriff auf die Schnittstelle, meist über eine URL, genau angegeben. Damit erhält man eine vollständige Beschreibung des Web Service. Die WSDL-Datei ist meist über das HTTP- Protokoll auf einem Webserver erreichbar. Die Inhalte werden meist beim Dienstnutzer zwischengespeichert um nicht bei jedem Aufruf die XML-Elemente neu zu parsen. Die Adresse der WSDL-Datei wird auch, falls der Service in einem Verzeichnisdienst (siehe nächstes Unterkapitel) angemeldet wird, angegeben, damit der Dienst automatisiert gefunden und benutzt werden kann. Mittlerweile ist WSDL bereits in Version 2.0 erschienen. Ursprünglich war es die Version 1.2, aber durch grundlegende Namensänderungen wurde die Versionsnummer angehoben. Neu ist vor allem die vollständige Unterstützung von HTTP als Transportprotokoll, wodurch der Inhalts-Layer überflüssig wird. Des weiteren wurden PortTypes in interfaces und Ports in endpoints umbenannt [17]. 4.4 UDDI Für Dienstnutzer von Web Services ist es häufig wichtig, dass sie die benötigten Dienste automatisiert finden können. Bei Web Services gibt es Universal Description, Discovery and Integration, kurz UDDI [18]. Es ist ein Verzeichnisdienst bei dem sich Unternehmen, die einen Service anbieten wollen, registrieren können. Er kann von Nutzern über eine SOAP- Schnittstelle angesprochen werden und enthält alle nötigen Informationen um einen dort registrierten Dienst nutzen zu können. Dabei wird in drei Verzeichnis-Kategorien eingeteilt: White, Yellow und Green Pages. White Pages können mit einem Telefonbuch verglichen werden. Sie enthalten ein nach Namen sortiertes Namensregister, in welchem alle Anbieter mit allen

6 Detailangaben und Kontaktinformationen, wie Telefon und Fax aufgelistet werden. Yellow Pages ähneln den uns bekannten Gelben Seiten. Dabei werden die Anbieter nach Branchen geordnet. Diese Einträge werden dann mit dem zugehörigen White Pages des Anbieters verknüpft. In den Green Pages wird das Geschäftsmodell der Anbieter definiert. Dies beinhaltet die Zusicherungen an den Nutzer, sowie die Kosten für die Benutzung und das Abrechnungsmodell. In UDDI werden die Daten in den Verzeichnissen ebenfalls in XML-Notation verwaltet. Dabei gibt es im wesentlichen folgende Elemente: Im Element businessentity werden Informationen über die Organisation, Kontaktdaten, Branche und eine Liste der angebotenen Dienste gespeichert. Im businessservice ist eine allgemeine Beschreibung eines Dienstes zu finden. Die technischen Details sowie ein Verweis auf die WSDL-Datei eines Dienstes findet man im Element bindingtemplate Noch detailliertere technische Daten werden im tmodel offengelegt. Es beschreibt die Spezifikationen der Schnittstellen, die ein Web Service verwendet. Im tmodel eines Web Services ist unter anderem ein Schlüssel enthalten, der den Dienst beschreibt. Wenn zwei Services denselben Schlüssel besitzen, bedeutet dies, dass sie zueinander kompatibel sind, und gegeneinander ausgetauscht werden können. Ein UDDI-Verzeichnis ist selbst ein Web Service und wird mittels SOAP angesprochen. Für diesen Dienst wird ebenfalls ein WSDL-Dokument, das die Schnittstelle beschreibt, bereitgestellt. Dabei wird zwischen zwei Schnittstellen unterschieden: PublishSOAP ist für den Dienstanbieter gedacht, um seine Dienste im Verzeichnis zu verwalten. Es bietet Operationen zum Anlegen, Ändern und Löschen von Diensten. InquireSOAP liefert die Suche nach Diensten sowie deren Details die zur Verwendung benötigt werden. Ein Dienstnutzer wird diese Schnittstelle nutzen, um die dynamische Bindung zu einem Web Service herzustellen. 4.5 BPEL Mit den bislang kennengelernten Methoden kann man selbst die Web Services raussuchen und ansprechen. Einen Schritt weiter geht hier BPEL, mit welcher es möglich ist, Dienste miteinander interagieren zu lassen. Die Business Process Execution Language, kurz BPEL, ist eine Sprache, die zur Beschreibung der Steuerung und Koordination (Orchestration) mehrerer Web Services in einem Geschäftsprozess dient. Die einzelnen Web Services werden durch den BPEL-Prozess zusammengefasst. Dieser Prozess ist für die gesamte Abfolge verantwortlich, um verschiedene Dienste aufzurufen, die gemeinsam einen Geschäftsprozess erledigen sollen. BPEL ist von XML abgeleitet. Zunächst wird eine BPEL Prozessbeschreibung erstellt, die verschiedene Web Service verwendet. Diese Beschreibung wird auch komponierter Web Service genannt. In der Beschreibung werden die zunächst die Nachrichten (und damit auch Daten), die verschickt werden, definiert. Danach werden die gewünschten Web Services hinzugefügt. Die Nachrichten werden nun mit den Diensten in eine zeitliche Abfolge gebracht. Diese Beschreibung wird letztendlich an eine BPEL Execution Engine (wie z.b. Twister) übergeben, die die beschriebene Abfolge ausführt als BPEL Prozess ausführt. Eine genaue Spezifikation von BPEL findet man unter [19]. 5. DISKUSSION Serviceorientierte Architekturen erlauben es, leicht bestehende Funktionalitäten wiederzuverwenden. Da dabei die Implementierung nicht vervielfältigt, sondern zentral gehalten wird, ist auch die Wartung deutlich effizienter und damit günstiger. Durch die plattform- und programmiersprachenunabhängigen Schnittstellen ist auch die Zusammenführung von heterogenen Systemlandschaften leichter als Davor zu bewerkstelligen. Wenn sich eine solche Architektur erst einmal in einem Unternehmen konsequent durchgesetzt hat, lassen sich selbst komplexe Aufgaben relativ schnell und einfach durch Kombination der geeigneten internen und evtl. externen Dienste erledigen. Dabei ist auch das leichte Austauschen von Services ein großer Vorteil, wodurch leicht Kosten eingespart werden können. Es ist sogar theoretisch möglich, die Dienste erst zur Laufzeit dynamisch über einen Verzeichnisdienst auszuwählen. SOA birgt aber auch Nachteile. Zwar sind die Dienste lose gekoppelt, doch wenn ein Dienst nicht erreichbar ist und keine Alternative besteht, kann die Aufgabe nicht ausgeführt werden. Ein weiterer neuer Aspekt bei Verwendung externer Dienste ist die evtl. Datenoffenlegung firmeninterner Geheimnisse an einen Konkurrenten. Hier muss genau begutachtet werden, welche Informationen preisgegeben werden. Auch muss der Kommunikationskanal, der erst durch die Verteilung entsteht, neu behandelt werden. Zum Einen müssen die Daten sicher übertragen werden, zum Anderen entstehen neue Fehlerquellen beim evtl. Ausfall einzelner Zwischenknoten, welche bei lokalen Programmen nicht gegeben wären. Außerdem können einige Probleme nicht sinnvoll in dienstorientierten Architekturen umgesetzt werden. So lassen sich Ereignisse nicht implementieren, da die Kommunikation immer vom Nutzer ausgeht. Dies ließe sich hier nur mit Polling, also dem ständigen Abfragen, realisieren. Einen Lösungsansatz hierfür bietet die ereignisgesteuerte Architektur (eventdriven architecture, kurz EDA), welche im nachfolgenden Unterkapitel kurz behandelt werden soll. Des weiteren soll daraufhin noch auf die Diskussion eingegangen werden, ob

7 SOA nicht nur ein Zugriff auf ein entferntes Objekt ist. 5.1 Ereignisgesteuerte Architektur EDA verfolgt auch das Prinzip der serviceorientierten Architektur. Ein Dienstanbieter bietet einen Service an und veröffentlicht ihn in einem Verzeichnisdienst. Ein Nutzer sucht darüber seinen Dienst, den er verwenden will. Hat er einen Dienst gefunden, wird er in Anspruch genommen. Hier kommt nun der Unterschied. Der Nutzer schickt nun keine Nachricht an den Dienst, sondern er registriert sich bei ihm, dass er kontaktiert werden möchte, wenn ein gewisses Ereignis eintritt. Ein einfaches Beispiel hierfür könnte ein Ping-Service sein. Der Nutzer registriert sich beim Service und trägt sich in die Ereignisliste ein, sobald z.b. ein bestimmter Webserver nicht mehr erreichbar ist. Er ist nun beim Dienst registriert. Der Dienst pingt diesen Webserver an. Sollte er einmal nicht erreichbar sein, kontaktiert der Dienst alle in der Liste der für dieses Event eingetragenen Nutzer. Wie sich jedoch dieser Ansatz in Zukunft im Vergleich zur serviceorientierung entwickeln wird, ist offen. 5.2 Sind Web Services nur ein Zugriff auf ein entferntes Objekt? Was unterscheidet einen Web Service eigentlich vom Zugriff auf ein entferntes Objekt? Experten sind geteilter Meinung, ob es überhaupt einen Unterschied gibt, was auch verschiedene Publikationen zeigen [1,2]. Betrachtet man zunächst die Gemeinsamkeit beider Systeme: Sowohl Web Services als auch entfernte Objektaufrufe sind eine Ausprägung verteilter Systeme. Hier enden aber bereits die Gemeinsamkeiten. Während entfernte Objektaufrufe eher für das Intranet entworfen wurden, zielen Web Services eher auf die Reichweite des Internets ab. Betrachtet man Web Services in seiner einfachsten Art: Ein Dienstnutzer schickt ein XML-Dokument an den Service. Der Service antwortet wiederum wieder mit einem XML- Dokument. Aus dieser Sicht ist der Vorgang nur ein Dokumentenaustausch, und das ist noch weit entfernt von der Instanzierung eines entfernten Objekts. Auch Dinge wie Referenzen, Lebenszyklen oder Garbage Collection gibt es in Web Services nicht. Web Services kommt ein persistenten Objekten, welches mit dem singleton-pattern nur einmal instanziert werden kann, am nächsten, ist aber immer noch weit entfernt von reinem Dokumentenaustausch eines solchen Service. Denn Web Services sind im Normalfall ständig verfügbare, direkt ansprechbare Schnittstellen. Sie werden nicht instanziert und nach Benutzung auch nicht wieder entfernt. Der Unterschied ist damit zumindest aus der Sicht der Architektur deutlich ersichtlich. Betrachtet man das ganze jedoch aus Sicht des Entwicklers, so verwischt sich der Unterschied. In beiden Fällen wird meist ein lokales Stellvertreter-Objekt erstellt, das mit dem Web Service bzw. dem entfernten Objekt interagiert. Und in beiden Fällen ist der entfernte Prozeduraufruf der eigentliche Hintergrund. Man sollte also noch nicht Web Services mit entfernten Objekten vergleichen. Alle genannten Eigenschaften, die man aus entfernten Objektaufrufen kennt, gibt es noch nicht bei Web Services. Web Services können aber durch diese Funktionalität erweitert werden. Auch hier werden die Bedürfnisse der Dienstnutzer Einfluss darauf nehmen, wie die Entwicklung voranschreitet. 6. REFERENZEN 1. Vogels, W. Web services are not distributed objects. IEEE Internet Comput. 7, 6 (Nov.-Dec. 2003), Birman, K. Like it or not, Web Services are distributed objects. Communications of the ACM. 47, 12 (Dec. 2004), Hashimi, S. Service-Oriented Architecture Explained Weller, A., Müller, T. T-Systems SOA Blog Herrmann, W. In zehn Schritten zur SOA Herrmann, W. Gartner nennt die zwölf SOA-Todsünden Snell, J., Tidwell, D., Kulchenko, P. Webservice- Programmierung mit SOAP. O Reilly. Juli Schmidt, T. The Enterprise Service Bus: Making service-oriented architecture real.ibm Systems Journal. VOL 44, NO 4, 2005, Japs, F. Flexibilität und Kopplung von IT-Systemen am Beispiel des Schnittstellenmanagements mit Web Services. Westfälische Wilhelms-Universität Münster Hamann, K. Diensteorientierte Architektur. Universität Hamburg Schoetzau, F. Architektur und Basiskomponenten moderner Web Services mit Schwerpunkt SOAP. Wirtschaftswissenschaften der Universität Hannover Krause, T. Service Oriented Architecture: Service Lookup & Service Repository. Hochschule für Angewandte Wissenschaften Hamburg Bender, M. Service-Oriented Architecture. Universität Koblenz W3C XML W3C Web Service W3C SOAP W3C WSDL /2007.

8 18. UDDI-Spezifikationen BPEL-Spezifikationen. April ebay-application Programming Interfaces. Zugriff: Dezember Amazon Web Services. Zugriff: Dezember Yahoo! Search Web Services. Zugriff: Dezember Google SOAP Search API. Zugriff: Dezember 2007.

Serviceorientierte Architektur / Web Service

Serviceorientierte Architektur / Web Service / Web Service Hauptseminar im Institut für Verteilte Systeme Nenad Marjanovic Universität Ulm 17.12.2007 Übersicht Was ist SOA? Vorteile aus Sicht des Entwicklers Vorteile aus Sicht des Managers Nachteile

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

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

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

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

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

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

Webservices. 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung. Hauptseminar Internet Dienste

Webservices. 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung. Hauptseminar Internet Dienste Hauptseminar Internet Dienste Sommersemester 2004 Boto Bako Webservices 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung Was sind Web Services? Web Services sind angebotene

Mehr

SOA. Prof. Dr. Eduard Heindl Hochschule Furtwangen Wirtschaftsinformatik

SOA. Prof. Dr. Eduard Heindl Hochschule Furtwangen Wirtschaftsinformatik SOA Prof. Dr. Eduard Heindl Hochschule Furtwangen Wirtschaftsinformatik Laderampen müssen passen Modularisieren Softwarearchitektur Modul A Modul B Modul C Modul D Große Anwendung im Unternehmen Modul

Mehr

Web-Kürzel. Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter

Web-Kürzel. Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter 2 Inhaltsverzeichnis 1 Web-Kürzel 4 1.1 Einführung.......................................... 4 1.2 Web-Kürzel.........................................

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

Datensicherung. Beschreibung der Datensicherung

Datensicherung. Beschreibung der Datensicherung Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten

Mehr

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere

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

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

ARCO Software - Anleitung zur Umstellung der MWSt

ARCO Software - Anleitung zur Umstellung der MWSt ARCO Software - Anleitung zur Umstellung der MWSt Wieder einmal beschert uns die Bundesverwaltung auf Ende Jahr mit zusätzlicher Arbeit, statt mit den immer wieder versprochenen Erleichterungen für KMU.

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

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

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

PHPNuke Quick & Dirty

PHPNuke Quick & Dirty PHPNuke Quick & Dirty Dieses Tutorial richtet sich an all die, die zum erstenmal an PHPNuke System aufsetzen und wirklich keine Ahnung haben wie es geht. Hier wird sehr flott, ohne grosse Umschweife dargestellt

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

Zustandsgebundene Webservices

Zustandsgebundene Webservices Zustandsgebundene Webservices Präsentation ausgewählter Problemstellungen der Informatik Markus Oertel [email protected] Universität Paderborn 25. September 2005 Zustandsgebundene Webservices Seite

Mehr

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Dateiname: ecdl5_01_00_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Grundlagen

Mehr

Implementierung von Web Services: Teil I: Einleitung / SOAP

Implementierung von Web Services: Teil I: Einleitung / SOAP Implementierung von Web Services: Teil I: Einleitung / SOAP Prof. Dr. Kanne - FSS 2007 Carl-Christian Kanne, February 25, 2007 Web Services - p. 1/12 Web Services: Allgemein XML Datenaustauschformat plattformunabhängig

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

Der Kalender im ipad

Der Kalender im ipad Der Kalender im ipad Wir haben im ipad, dem ipod Touch und dem iphone, sowie auf dem PC in der Cloud einen Kalender. Die App ist voreingestellt, man braucht sie nicht laden. So macht es das ipad leicht,

Mehr

Gruppenrichtlinien und Softwareverteilung

Gruppenrichtlinien und Softwareverteilung Gruppenrichtlinien und Softwareverteilung Ergänzungen zur Musterlösung Bitte lesen Sie zuerst die gesamte Anleitung durch! Vorbemerkung: Die Begriffe OU (Organizational Unit) und Raum werden in der folgenden

Mehr

Installation der SAS Foundation Software auf Windows

Installation der SAS Foundation Software auf Windows Installation der SAS Foundation Software auf Windows Der installierende Benutzer unter Windows muss Mitglied der lokalen Gruppe Administratoren / Administrators sein und damit das Recht besitzen, Software

Mehr

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Objektorientierte Programmierung für Anfänger am Beispiel PHP Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten

Mehr

OLXTeamOutlook 1.5 für Outlook 2003, 2002/XP, 2000 und 97/98

OLXTeamOutlook 1.5 für Outlook 2003, 2002/XP, 2000 und 97/98 OLXTeamOutlook 1.5 für Outlook 2003, 2002/XP, 2000 und 97/98 Neue Version: Outlook-Termine, Kontakte, Mails usw. ohne Exchange-Server auf mehreren Rechnern nutzen! Mit der neuesten Generation intelligenter

Mehr

Übersicht. Angewandte Informatik 2 - Tutorium 6. Teile einer WSDL-Datei. Was ist WSDL. Besprechung: Übungsblatt 5

Übersicht. Angewandte Informatik 2 - Tutorium 6. Teile einer WSDL-Datei. Was ist WSDL. Besprechung: Übungsblatt 5 Übersicht Angewandte Informatik 2 - Tutorium 6 Besprechung: Übungsblatt 5 Götz Bürkle ([email protected]) Übungsblatt 5: Aufgabe 4 - Webservices Institut für Angewandte Informatik und Formale Beschreibungsverfahren

Mehr

Diplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008

Diplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008 Konzeption und Implementierung einer automatisierten Testumgebung, 10. Dezember 2008 1 Gliederung Einleitung Softwaretests Beispiel Konzeption Zusammenfassung 2 Einleitung Komplexität von Softwaresystemen

Mehr

Bedienungsanleitung. Matthias Haasler. Version 0.4. für die Arbeit mit der Gemeinde-Homepage der Paulus-Kirchengemeinde Tempelhof

Bedienungsanleitung. Matthias Haasler. Version 0.4. für die Arbeit mit der Gemeinde-Homepage der Paulus-Kirchengemeinde Tempelhof Bedienungsanleitung für die Arbeit mit der Gemeinde-Homepage der Paulus-Kirchengemeinde Tempelhof Matthias Haasler Version 0.4 Webadministrator, email: [email protected] Inhaltsverzeichnis 1 Einführung

Mehr

Robot Karol für Delphi

Robot Karol für Delphi Robot Karol für Delphi Reinhard Nitzsche, OSZ Handel I Version 0.1 vom 24. Januar 2003 Zusammenfassung Nach der Einführung in die (variablenfreie) Programmierung mit Robot Karol von Freiberger und Krško

Mehr

arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek

arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek Speaker Andreas Holubek VP Engineering [email protected] arlanis Software AG, D-14467 Potsdam 2009, arlanis

Mehr

Guide DynDNS und Portforwarding

Guide DynDNS und Portforwarding Guide DynDNS und Portforwarding Allgemein Um Geräte im lokalen Netzwerk von überall aus über das Internet erreichen zu können, kommt man um die Themen Dynamik DNS (kurz DynDNS) und Portweiterleitung(auch

Mehr

DriveLock 6. DriveLock und das Windows Sicherheitsproblem mit LNK Dateien. CenterTools Software GmbH

DriveLock 6. DriveLock und das Windows Sicherheitsproblem mit LNK Dateien. CenterTools Software GmbH 6 DriveLock und das Windows Sicherheitsproblem mit LNK Dateien CenterTools Software GmbH 2010 Copyright Die in diesen Unterlagen enthaltenen Angaben und Daten, einschließlich URLs und anderen Verweisen

Mehr

SharePoint Demonstration

SharePoint Demonstration SharePoint Demonstration Was zeigt die Demonstration? Diese Demonstration soll den modernen Zugriff auf Daten und Informationen veranschaulichen und zeigen welche Vorteile sich dadurch in der Zusammenarbeit

Mehr

Urlaubsregel in David

Urlaubsregel in David Urlaubsregel in David Inhaltsverzeichnis KlickDown Beitrag von Tobit...3 Präambel...3 Benachrichtigung externer Absender...3 Erstellen oder Anpassen des Anworttextes...3 Erstellen oder Anpassen der Auto-Reply-Regel...5

Mehr

1. Loggen Sie sich mit Ihrem Benutzernamen in den Hosting-Manager (Confixx) auf Ihrer entsprechenden AREA ein.

1. Loggen Sie sich mit Ihrem Benutzernamen in den Hosting-Manager (Confixx) auf Ihrer entsprechenden AREA ein. Page 1 of 7 Mailing Listen verwenden Vorwort Mailing-Listen (Mailing Lists) dienen der E-Mail Konversation zwischen mehreren Mitgliedern einer Liste. Man kann sich das wie ein Online-Forum vorstellen,

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

Das Leitbild vom Verein WIR

Das Leitbild vom Verein WIR Das Leitbild vom Verein WIR Dieses Zeichen ist ein Gütesiegel. Texte mit diesem Gütesiegel sind leicht verständlich. Leicht Lesen gibt es in drei Stufen. B1: leicht verständlich A2: noch leichter verständlich

Mehr

Berechtigungen im Kalender Anleitung für die Rechtevergabe im Outlook Kalender 2010. FHNW, Services, ICT

Berechtigungen im Kalender Anleitung für die Rechtevergabe im Outlook Kalender 2010. FHNW, Services, ICT Berechtigungen im Kalender Anleitung für die Rechtevergabe im Outlook Kalender 2010 FHNW, Services, ICT Windisch, März 2013 Berechtigungen im Kalender 1 1 Gruppen 3 1.1 Die Gruppe/der Benutzer Standard

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

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

Beheben von verlorenen Verknüpfungen 20.06.2005

Beheben von verlorenen Verknüpfungen 20.06.2005 Vor folgender Situation ist sicher jeder Solid Edge-Anwender beim Öffnen von Baugruppen oder Drafts schon einmal gestanden: Die Ursache dafür kann sein: Die Dateien wurden über den Explorer umbenannt:

Mehr

Registrierung am Elterninformationssysytem: ClaXss Infoline

Registrierung am Elterninformationssysytem: ClaXss Infoline elektronisches ElternInformationsSystem (EIS) Klicken Sie auf das Logo oder geben Sie in Ihrem Browser folgende Adresse ein: https://kommunalersprien.schule-eltern.info/infoline/claxss Diese Anleitung

Mehr

Task: Nmap Skripte ausführen

Task: Nmap Skripte ausführen Task: Nmap Skripte ausführen Inhalt Einfache Netzwerkscans mit NSE Ausführen des Scans Anpassung der Parameter Einleitung Copyright 2009-2015 Greenbone Networks GmbH Herkunft und aktuellste Version dieses

Mehr

Wichtig ist die Originalsatzung. Nur was in der Originalsatzung steht, gilt. Denn nur die Originalsatzung wurde vom Gericht geprüft.

Wichtig ist die Originalsatzung. Nur was in der Originalsatzung steht, gilt. Denn nur die Originalsatzung wurde vom Gericht geprüft. Das ist ein Text in leichter Sprache. Hier finden Sie die wichtigsten Regeln für den Verein zur Förderung der Autonomie Behinderter e. V.. Das hier ist die Übersetzung der Originalsatzung. Es wurden nur

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

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

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage .htaccess HOWTO zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage Stand: 21.06.2015 Inhaltsverzeichnis 1. Vorwort...3 2. Verwendung...4 2.1 Allgemeines...4 2.1 Das Aussehen der.htaccess

Mehr

4 Aufzählungen und Listen erstellen

4 Aufzählungen und Listen erstellen 4 4 Aufzählungen und Listen erstellen Beim Strukturieren von Dokumenten und Inhalten stellen Listen und Aufzählungen wichtige Werkzeuge dar. Mit ihnen lässt sich so ziemlich alles sortieren, was auf einer

Mehr

Nutzung von GiS BasePac 8 im Netzwerk

Nutzung von GiS BasePac 8 im Netzwerk Allgemeines Grundsätzlich kann das GiS BasePac Programm in allen Netzwerken eingesetzt werden, die Verbindungen als Laufwerk zu lassen (alle WINDOWS Versionen). Die GiS Software unterstützt nur den Zugriff

Mehr

Software Engineering Interaktionsdiagramme

Software Engineering Interaktionsdiagramme Software Engineering Interaktionsdiagramme Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Nachrichtenaustausch Welche Nachrichten werden ausgetauscht? (Methodenaufrufe)

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

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

SDD System Design Document

SDD System Design Document SDD Software Konstruktion WS01/02 Gruppe 4 1. Einleitung Das vorliegende Dokument richtet sich vor allem an die Entwickler, aber auch an den Kunden, der das enstehende System verwenden wird. Es soll einen

Mehr

icloud nicht neu, aber doch irgendwie anders

icloud nicht neu, aber doch irgendwie anders Kapitel 6 In diesem Kapitel zeigen wir Ihnen, welche Dienste die icloud beim Abgleich von Dateien und Informationen anbietet. Sie lernen icloud Drive kennen, den Fotostream, den icloud-schlüsselbund und

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

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

Software Engineering Klassendiagramme Assoziationen

Software Engineering Klassendiagramme Assoziationen Software Engineering Klassendiagramme Assoziationen Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Lesen von Multiplizitäten (1) Multiplizitäten werden folgendermaßen

Mehr

Grundfunktionen und Bedienung

Grundfunktionen und Bedienung Kapitel 13 Mit der App Health ist eine neue Anwendung in ios 8 enthalten, die von vorangegangenen Betriebssystemen bislang nicht geboten wurde. Health fungiert dabei als Aggregator für die Daten von Fitness-

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

Stammdaten Auftragserfassung Produktionsbearbeitung Bestellwesen Cloud Computing

Stammdaten Auftragserfassung Produktionsbearbeitung Bestellwesen Cloud Computing Stammdaten Auftragserfassung Produktionsbearbeitung Bestellwesen Cloud Computing Finanzbuchhaltung Wenn Sie Fragen haben, dann rufen Sie uns an, wir helfen Ihnen gerne weiter - mit Ihrem Wartungsvertrag

Mehr

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Ab der Version forma 5.5 handelt es sich bei den Orientierungshilfen der Architekten-/Objektplanerverträge nicht

Mehr

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität

Mehr

Einrichten der Outlook-Synchronisation

Einrichten der Outlook-Synchronisation Das will ich auch wissen! - Kapitel 3 Einrichten der Outlook-Synchronisation Inhaltsverzeichnis Überblick über dieses Dokument... 2 Diese Kenntnisse möchten wir Ihnen vermitteln... 2 Diese Kenntnisse empfehlen

Mehr

Fehler und Probleme bei Auswahl und Installation eines Dokumentenmanagement Systems

Fehler und Probleme bei Auswahl und Installation eines Dokumentenmanagement Systems Fehler und Probleme bei Auswahl und Installation eines Dokumentenmanagement Systems Name: Bruno Handler Funktion: Marketing/Vertrieb Organisation: AXAVIA Software GmbH Liebe Leserinnen und liebe Leser,

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion

Mehr

.NET Code schützen. Projekt.NET. Version 1.0

.NET Code schützen. Projekt.NET. Version 1.0 .NET Code schützen Projekt.NET Informationsmaterial zum Schützen des.net Codes Version 1.0 Autor: Status: Ablage: Empfänger: Seiten: D. Hoyer 1 / 6 Verteiler : Dokument1 Seite 1 von 1 Änderungsprotokoll

Mehr

Windows Server 2008 für die RADIUS-Authentisierung einrichten

Windows Server 2008 für die RADIUS-Authentisierung einrichten Windows Server 2008 für die RADIUS-Authentisierung einrichten Version 0.2 Die aktuellste Version dieser Installationsanleitung ist verfügbar unter: http://www.revosec.ch/files/windows-radius.pdf Einleitung

Mehr

crm-now/ps Webforms Webdesigner Handbuch Erste Ausgabe

crm-now/ps Webforms Webdesigner Handbuch Erste Ausgabe crm-now/ps Webforms Webdesigner Handbuch Erste Ausgabe crm-now/ps Webforms: Webdesigner Handbuch Copyright 2006 crm-now Versionsgeschichte Version 01 2006-08-21 Release Version crm-now c/o im-netz Neue

Mehr

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank

Mehr

Barrierefreie Webseiten erstellen mit TYPO3

Barrierefreie Webseiten erstellen mit TYPO3 Barrierefreie Webseiten erstellen mit TYPO3 Alternativtexte Für jedes Nicht-Text-Element ist ein äquivalenter Text bereitzustellen. Dies gilt insbesondere für Bilder. In der Liste der HTML 4-Attribute

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

Telenet SocialCom. verbindet Sie mit Social Media.

Telenet SocialCom. verbindet Sie mit Social Media. Telenet SocialCom verbindet Sie mit Social Media. (Titelseite des Vortrags: Kurze Begrüßung bzw. Überleitung von einem anderen Thema. Die Einleitung folgt ab der nächsten Seite...) Ein Kunde ruft an...

Mehr

Leichte-Sprache-Bilder

Leichte-Sprache-Bilder Leichte-Sprache-Bilder Reinhild Kassing Information - So geht es 1. Bilder gucken 2. anmelden für Probe-Bilder 3. Bilder bestellen 4. Rechnung bezahlen 5. Bilder runterladen 6. neue Bilder vorschlagen

Mehr

Was ist Sozial-Raum-Orientierung?

Was ist Sozial-Raum-Orientierung? Was ist Sozial-Raum-Orientierung? Dr. Wolfgang Hinte Universität Duisburg-Essen Institut für Stadt-Entwicklung und Sozial-Raum-Orientierte Arbeit Das ist eine Zusammen-Fassung des Vortrages: Sozialräume

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

Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java

Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java Objektorientierte Programmierung mit Java Eine praxisnahe Einführung mit BlueJ Klassenentwurf Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? 1.0 Zentrale Konzepte

Mehr

Email Adressen und Kontaktinformationen

Email Adressen und Kontaktinformationen Email Adressen und Kontaktinformationen WEB Seiten sind von der Sache her öffentlich. Jeder sollte freien Zugang zu den veröffentlichten Informationen haben. Doch es ist Vorsicht geboten. Viele Informationen

Mehr

ERSTELLEN VON INCENTIVES IM ZANOX NETZWERK

ERSTELLEN VON INCENTIVES IM ZANOX NETZWERK ERSTELLEN VON INCENTIVES IM ZANOX NETZWERK USER GUIDE FÜR ADVERTISER INHALTSVERZEICHNIS 1. Einführung...3 2. Incentives veröffentlichen...4 3. Weitere Funktionen...9 ZANOX.de AG Erstellen von Incentives

Mehr

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.

Mehr

Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten

Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten Version 1.0 Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten In unserer Anleitung zeigen wir Dir, wie Du Blogbeiträge

Mehr

OP-LOG www.op-log.de

OP-LOG www.op-log.de Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server

Mehr

SOA Serviceorientierte Architektur Definition, Marktpotenzial und Perspektiven

SOA Serviceorientierte Architektur Definition, Marktpotenzial und Perspektiven SOA Serviceorientierte Architektur Definition, Marktpotenzial und Perspektiven SO A Fraunhofer-Institut für Softwareund Systemtechnik ISST Dr. Ulrich Springer Dr. Bernhard Holtkamp Dortmund, 20.01.2009

Mehr

Windows 8 Lizenzierung in Szenarien

Windows 8 Lizenzierung in Szenarien Windows 8 Lizenzierung in Szenarien Windows Desktop-Betriebssysteme kommen in unterschiedlichen Szenarien im Unternehmen zum Einsatz. Die Mitarbeiter arbeiten an Unternehmensgeräten oder bringen eigene

Mehr

Outsourcing und Offshoring. Comelio und Offshoring/Outsourcing

Outsourcing und Offshoring. Comelio und Offshoring/Outsourcing Outsourcing und Offshoring Comelio und Offshoring/Outsourcing INHALT Outsourcing und Offshoring... 3 Comelio und Offshoring/Outsourcing... 4 Beauftragungsmodelle... 4 Projektleitung vor Ort und Software-Entwicklung

Mehr

Step by Step Webserver unter Windows Server 2003. von Christian Bartl

Step by Step Webserver unter Windows Server 2003. von Christian Bartl Step by Step Webserver unter Windows Server 2003 von Webserver unter Windows Server 2003 Um den WWW-Server-Dienst IIS (Internet Information Service) zu nutzen muss dieser zunächst installiert werden (wird

Mehr

Handbuch Groupware - Mailserver

Handbuch Groupware - Mailserver Handbuch Inhaltsverzeichnis 1. Einführung...3 2. Ordnerliste...3 2.1 E-Mail...3 2.2 Kalender...3 2.3 Kontakte...3 2.4 Dokumente...3 2.5 Aufgaben...3 2.6 Notizen...3 2.7 Gelöschte Objekte...3 3. Menüleiste...4

Mehr

White Paper. Installation und Konfiguration der PVP Integration

White Paper. Installation und Konfiguration der PVP Integration Copyright Fabasoft R&D GmbH, A-4020 Linz, 2010. Alle Rechte vorbehalten. Alle verwendeten Hard- und Softwarenamen sind Handelsnamen und/oder Marken der jeweiligen Hersteller. Diese Unterlagen sind streng

Mehr

Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing

Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing Fassade Objektbasiertes Strukturmuster C. Restorff & M. Rohlfing Übersicht Motivation Anwendbarkeit Struktur Teilnehmer Interaktion Konsequenz Implementierung Beispiel Bekannte Verwendung Verwandte Muster

Mehr

PHP Kurs Online Kurs Analysten Programmierer Web PHP

PHP Kurs Online Kurs Analysten Programmierer Web PHP PHP Kurs Online Kurs Analysten Programmierer Web PHP Akademie Domani [email protected] Allgemeines Programm des Kurses PHP Modul 1 - Einführung und Installation PHP-Umgebung Erste Lerneinheit Introduzione

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

Was meinen die Leute eigentlich mit: Grexit?

Was meinen die Leute eigentlich mit: Grexit? Was meinen die Leute eigentlich mit: Grexit? Grexit sind eigentlich 2 Wörter. 1. Griechenland 2. Exit Exit ist ein englisches Wort. Es bedeutet: Ausgang. Aber was haben diese 2 Sachen mit-einander zu tun?

Mehr

Corporate Design leicht gemacht. officeatwork für Microsoft Dynamics AX und Microsoft Dynamics CRM

Corporate Design leicht gemacht. officeatwork für Microsoft Dynamics AX und Microsoft Dynamics CRM Corporate Design leicht gemacht officeatwork für Microsoft Dynamics AX und Microsoft Dynamics CRM officeatwork Dynamics Connector Corporate Design leicht gemacht officeatwork ist die Business-Lösung für

Mehr

E-Sourcing einfach, effizient und erfolgreich

E-Sourcing einfach, effizient und erfolgreich E-Sourcing einfach, effizient und erfolgreich In wenigen Schritten von der Lieferanteninformation zur Auktion Die Beschaffung von Waren und Dienstleistungen ist für Unternehmen immer mit einem enormen

Mehr