Konzeption und Implementierung einer modularen prototypischen Integrationslösung auf. Basis von Entwurfsmustern für asynchrone Messaging Systeme
|
|
- Margarete Kohl
- vor 8 Jahren
- Abrufe
Transkript
1 Konzeption und Implementierung einer modularen prototypischen Integrationslösung auf Basis von Entwurfsmustern für asynchrone Messaging Systeme Diplomarbeit Tobias Schuhmacher Matrikel-Nr: Studiengang Online Medien Fakultät Digitale Medien Hochschule Furtwangen University Betreuende Professoren: Prof. Wilhelm Walter Prof. Dr. Dirk Eisenbiegler
2
3 Eidesstattliche Erklärung Ich erkläre hiermit an Eides statt, dass ich die vorliegende Diplomarbeit selbständig und ohne unzulässige fremde Hilfe angefertigt habe. Alle verwendeten Quellen und Hilfsmittel sind angegeben. Ehingen, den Tobias Schuhmacher
4
5 Abstract Diplomarbeit Pattern für Integrationslösungen auf Basis asynchroner Messaging Systeme Erfolgreiche Enterprise Applikationen arbeiten heute nur noch selten in einer isolierten Umgebung. Die Kombination verschiedener Systeme, um ein größeres Maß an Funktionalität und Leistungsfähigkeit zu erreichen, stellt immer mehr ein Erfolgskriterium für die Betreiber dar. Inzwischen haben sich mehrere Technologien verbreitet, die dem Thema Software Integration auf verschiedenen Wegen begegnen. Ein vielversprechender Ansatz, um eine lose Kopplung zwischen verschiedenen Software Applikationen zu erreichen, bieten asynchrone Messaging Systeme. Die Implementierung von Integrationslösungen auf Basis von Messaging Systemen stellt die Entwickler allerdings vor neue Herausforderungen. Um eine klare und flexible Softwarearchitektur zu erreichen, haben sich inzwischen verschiedene Entwurfsmuster (s.g. Patterns) für asynchrone Messaging Systeme herauskristallisiert. In dieser Arbeit soll auf diese Patterns näher eingegangen werden. Abschließend ist ein Prototyp geplant, in dem eine praktische Anwendung einiger Patterns erfolgt. Inhaltlich sollen folgende Punkte behandelt werden: Einleitung: Software Integration Notwendigkeit von Software Integration Anforderungen an Integrationslösungen Technologien zur Software Integration. Vorstellung von Messaging Systemen. Vor- und Nachteile von asynchronen Messaging Systemen Patterns für Messaging Systeme Notation von Integration Patterns Vorstellung der Basiskonzepte - Channels - Messages (Konstruktion von Messages, einfaches/kombiniertes Messaging) - Pipes und Filter - Routing - Transformation - Endpoint Entwicklung eines Prototypen in dem zwei Software Applikationen auf Basis eines Messaging Systemes, dessen Konzeption verschiedene Integration Patterns involviert, miteinander interagieren können. Anforderungen an den Prototypen - Muster die angewendet werden
6 Technischen Rahmenbedingungen - verwendete Programmiersprache - Anforderungen an die Laufzeitumgebung, verwendetes Queuing System usw. Technische Konzeption Implementierung und Dokumentation
7 Inhaltsverzeichnis 1 Einführung Vorwort Ziel dieser Arbeit Software-Integration Notwendigkeit von Software-Integration Integrationstypen Herausforderungen bei der Einführung einer Integrationslösung Lose Kopplung Technologien zur Software-Integration File Transfer Shared Database Remote Procedure Invocation Messaging Messaging Synchrone und asynchrone Kommunikation Funktionsweise von Messaging Systemen Message-Übermittlung Send-and-forget Store-and-forward Vorteile von Messaging Systemen Nachteile von Messaging Systemen Verbreitung von Messaging Systemen Entwurfsmuster für Messaging Systeme Muster in der Software-Architektur Charakterisierung von Software-Architektur Komponente Beziehungen Sichten Funktionale und nicht-funktionale Eigenschaften Software-Entwurf Definition von Muster Kategorisierung von Mustern Bedeutung von Mustern bei der Software-Architektur Beschreibung von Mustern Notation von Entwurfsmustern Entwurfsmuster für asynchrone Messaging Systeme Message Channels Point-to-Point Channel Publish-Subscribe Channel...28
8 Guaranteed Delivery Message Constructions Command Message Document Message Event Message Request-Reply Return Address Correlation Identifier Pipes und Filter-Architektur, Message Routing Content Based Router Message Filter Recipient List Splitter Aggregator Message Transformation Content Filter Canonical Data Model Message Endpoint Messaging Gateway Polling Consumer Event-Driven Consumer Durable Subscriber System Management Control Bus Entwicklung einer Integrationslösung Ausgangssituation Beschreibung der Ausgangssituation Analyse Optimierungspotential durch Software-Integration Verstehen des Anwendungsfalls und der Problembereiche Identifikation der für die Integrationslösung relevanten Geschäftsfälle Identifikation der auszutauschenden Daten Ermittlung der geeignetsten Integrationstechnologie Vorteile von asynchronen gegenüber synchronen Verfahren Konzeption Bestandteile einer Nachricht analysieren und Nachrichtenformate festlegen Verwendung des Canonical Data Models Einsatz von XML Entwicklung eines geeigneten XML-Dokumenten-Schemas Design des Nachrichtenflusses...80
9 Entscheidungskriterien für Nachrichtenkanäle Konzeption des Nachrichtenflusses Monitoring eines Messaging Systems Crash Proof Optimierung der Performance Implementierung JMS Konzepte der JMS API Programmier-Modell der JMS API JMS Client Anwendung Einschränkungen von JMS Auswahl des JMS Providers Software Architektur Architektur der Anwendungen innerhalb der Ausgangssituation Grundlegende konzeptionelle Entscheidungen Kommunikation zwischen Messaging Komponenten und JMS Provider Konzeption der Messaging Komponenten Datensynchronisation Abschlussbemerkung Bewertung Fazit I.Abbildungsverzeichnis II.Tabellenverzeichnis III.Abkürzungsverzeichnis IV.Literaturverzeichnis V.Anhang...131
10 Es ist möglich, Gebäude durch lose Aneinanderreihung von Mustern zu bauen. Ein so konstruiertes Gebäude stellt eine Ansammlung von Mustern dar. Es besitzt keinen inneren Zusammenhalt. Es hat keine wirkliche Substanz. Es ist aber auch möglich, Muster so zusammenzufügen, dass sich viele Muster innerhalb desselben Raumes überlagern: Das Gebäude besitzt einen inneren Zusammenhalt; es besitzt viele Bedeutungen, auf kleinem Raum zusammengefasst. Durch diesen Zusammenhalt gewinnt es an Substanz. (Übersetzung aus A Pattern Language von Ch. Alexander, Quelle: [Gamma2003], S. 441)
11 Einführung 1 Einführung 1.1 Vorwort Erfolgreiche Enterprise Anwendungen arbeiten heute nur noch selten in einer isolierten Umgebung. Die Kombination verschiedener Systeme, um ein größeres Maß an Funktionalität und Leistungsfähigkeit zu erreichen, stellt immer mehr ein Erfolgskriterium für die Betreiber dar. Inzwischen haben sich mehrere Technologien verbreitet, die dem Thema Software Integration auf verschiedenen Wegen begegnen. Einen vielversprechenden Ansatz bieten asynchrone Messaging Systeme. Damit eröffnen sich neue Herausforderungen an Software-Architekten, die neue Konzeptionsweisen bei asynchroner Kommunikation berücksichtigen müssen. Um eine klare und flexible Softwarearchitektur zu erreichen, haben sich inzwischen verschiedene Entwurfsmuster (engl. Design Pattern) für asynchrone Messaging Systeme herauskristallisiert. Diese Entwurfsmuster liefern Ansätze, auf deren Basis ein effektiver, flexibler und systematisierter Software-Entwurf möglich wird. 1.2 Ziel dieser Arbeit In dieser Arbeit steht die Konzeption und Implementierung einer modularen prototypischen Integrationslösung, auf Basis von Entwurfsmustern für asynchrone Messaging Systeme, im Vordergrund. Um diesen Aufgabenbereich umfassend erschließen zu können, unterteilt sich die Arbeit in einen theoretischen und einen praktischen Teil. Beim theoretischen Teil wird auf den Kontext von Messaging innerhalb des Themenbereiches Software-Integration eingegangen und erläutert, welche Vor- und Nachteile aus dem Einsatz von Messaging entstehen. Anschließend werden Entwurfsmuster für Messaging Systeme behandelt, wo eine Auswahl an Mustern vorgestellt wird. Ziel ist nicht, neue Entwurfsmuster zu entdecken, sondern die bestehenden auszuwerten und aufzuarbeiten. Darauf aufbauend entsteht der umfangreichste Teil dieser Arbeit, in der die Analyse und Konzeption einer prototypischen Integrationslösung mit einer Auswahl von Mustern erfolgt. Das Software-Design wird darauf ausgelegt, modulare Strukturen zu schaffen um jedes Entwurfsmuster flexibel in die Integrationslösung einzubetten. Der Prototyp soll die Funktionsweise dieser Muster praxisnah darstellen, sowie die Vorteile einer Integrationslösung auf Basis eines Messaging Systems verdeutlichen. Abschließend findet eine Bewertung der Ergebnisse statt. Der praktische Teil besteht aus der Umsetzung des zuvor konzipierten Systems. Konzeption und Implementierung beanspruchten zeitlich den größten Teil dieser Arbeit. Es wird hier auf den Abdruck von Quellcode weitgehendst verzichtet. Sämtliche Source-Codes befinden sich auf einer CDRom im Anhang gespeichert. Auf dieser CD-Rom ist auch eine Ausgabe der API Dokumentation im HTML Format hinterlegt. 1
12 Software-Integration 2 Software-Integration 2.1 Notwendigkeit von Software-Integration Das Wort Integration (aus: lateinisch integer, griechisch entagros = "unberührt", "unversehrt", "ganz"), wird im deutschen als die Herstellung eines Ganzen bezeichnet. Die Integration in der Informatik, speziell in der Software-Entwicklung, dient zur Verknüpfung von verschiedenen Anwendungen. Man kann mittlerweile davon ausgehen, dass insbesonders Enterprise Anwendungen dauerhaft nicht in einer isolierten Landschaft leben können. Dies wird von Erfahrungsberichten von IT-Mitarbeitern bestätigt (Vgl. Aussage von Randy Stattford, Chief Architect IQNavigator Incorporation, siehe [Hohpe2004] Praise und Vgl. [Hohpe2004], S. xxix) Der Zeitpunkt, an denen Systeme mit anderen Systemen zusammenarbeiten müssen, ist je nach Anwendungsgebiet und Relevanz der Anwendung, innerhalb des Kontextes zum Unternehmen, verschieden. Diese zwei Szenarien sind Beispiele dafür, wann Integration erforderlich wird: das Warenwirtschaftssystem eines Unternehmens muss seine Bestände mit denen eines Online-Shop-Systems abgleichen, um Kunden die aktuelle Verfügbarkeit eines Produktes mitteilen zu können. Ein weiterer denkbarer Fall wäre, dass Pocket PCs von Kundendienst-Mitarbeiten die tagsüber erfassten Daten über Nacht mit dem Datenbestand des zentralen Firmen-Servers synchronisieren sollen. Die Integration von Anwendungen stellt häufig eine strategische Entscheidung dar. Ziel ist, mehrere informationsverarbeitende Systeme aneinander zu binden, um deren Service und Informationsgehalt zu bündeln. Dadurch wird die Möglichkeit unterstützt, Daten untereinander auszutauschen und Prozesse möglichst in Echtzeit zu verknüpfen. Enterprise Anwendungen können ein Mix aus beliebig vielen verschiedenen SoftwareAnwendungen darstellen. Dabei kann es sich um selbst erstellte Software oder um Software-Produkte von Drittherstellern handeln, die auf verschiedensten Plattformen unter Einsatz verschiedenster Technologien arbeiten. Sie können, je nach Organisation des Unternehmens, geografisch weit voneinander verteilt sein. Die Ursache für eine solch chaotisch anmutende Entwicklung liegt oftmals nicht am Versagen der verantwortlichen IT-Experten, sondern scheint auf zwei Faktoren zurückzugehen (Vgl. [Hohpe2004], S. 1ff) : 1. Die Anforderungsprofile der Unternehmen sind so different und unterliegen laufenden Fluktuationen, dass es bei Enterprise Applikation unmöglich scheint, sämtliche Bedürfnisse verschiedenster Unternehmen in einem großen Software-Produkt zu befriedigen. Beispiel sind die großen ERP-Lösungen von Firmen wie Oracle, SAP oder Peoplesoft, die oftmals nur einen Teil der geforderten Funktionalitäten unterstützen und bei denen häufig Integrationsbedarf besteht. 2. Der Einsatz verschiedener Software, die auf verschiedenen Plattformen laufen, erlaubt den Betrieben größte Flexibilität in der Auswahl der für den jeweiligen Einsatzbereich am geeignetsten Software-Lösung. 2
13 Software-Integration Um laufende Geschäftsvorgänge über mehrere Anwendungen verteilt abwickeln zu können, bedarf es der Integration dieser Anwendungen. In einer nicht integrierten IT-Landschaft können Reibungsverluste entstehen. Beispielsweise aufgrund redundanter Datenhaltung und -erfassung, Dateninkonsistenz, unterbrochener Prozessketten usw. Bereits die Durchführung einer Kundenbestellung kann eine anwendungsübergeifende Prozessabwicklung erfordern und setzt damit die Interaktion mehrerer Anwendungen voraus. 2.2 Integrationstypen Die Integration von Software-Anwendungen kann anhand verschiedener Konzepte erfolgen, die sich in vier Klassen typisieren lassen. (Vgl. [Linthicum2004], S. 6ff und [Hohpe2004], S. 5ff) 1. Informations orientiert 1.1 Daten-Replikation Viele Enterprise Applikationen benötigen Zugriff auf den gleichen Datenbestand (z. B. CRMSystem, Buchführungssystem usw.). Oftmals führen mehrere Systeme ihren eigenen Datenbestand, sodass eine Synchronisation zwischen den Datenquellen notwendig wird. Integration wird erreicht, indem Daten zwischen mehreren Datenbanken dupliziert werden. Ob die beteiligten Datenbanken von verschiedenen Herstellern stammen und eventuell sogar mit unterschiedlichen Datenmodellen arbeiten, ist hierbei nicht relevant. Die fundamentale Anforderung liegt in der Infrastruktur, die den Datenaustausch zwischen den unterschiedlichen Datenbank-Modellen und Datenbank-Schemata koordiniert. Abbildung 1: Integration durch Daten Replikation (Quelle: [Linthicum2004], S. 7) 1.2 Datenbank-Föderation Datenbank-Föderation ist die Integration von mehreren Datenbanken und DatenbankModellen in eine einzige, vereinheitlichte Sicht dieser Systeme. Eine Datenbank-Föderation kann durch Einsatz einer entsprechenden Softwarelösung erreicht werden. Die Softwarelösung fügt eine zusätzliche Abstraktionsschicht zwischen die physikalisch verteilten Datenbanken und die Anwendungen, die auf diese Datenbanken zugreifen, ein. Diese Schicht verbindet sich mit dem Datenbank-Backend und mapped die physikalischen Datenbanken zu einer virtuellen Datenbank, die nur innerhalb der Softwarelösung existiert. Sie koordiniert die Verbindung und Verteilung der Daten zwischen Anwendung und Datenbank-Backend. 3
14 Software-Integration Abbildung 2: Integration durch Daten-Föderation (Quelle: [Linthicum2004], S. 8) 1.3 Geteilte Geschäftsfunktionen (Interface Processing) Nach dem gleichen Ansatz, wie es zu redundanter Datenhaltung in Enterprise Anwendungen kommt, besteht der Trend, dass sich Funktionalitäten zwischen Anwendungen überschneiden. Geteilte Geschäftsfunktionen stellen klar definierte Schnittstellen einer Anwendung bereit. Dadurch werden Informationen und Services dieser Anwendung externalisiert und anderen Anwendungen zur Verfügung gestellt. Abbildung 3: Integration durch geteilte Geschäftsfunktionen (Quelle: [Linthicum2004], S. 9) 4
15 Software-Integration 2. Geschäftsprozess orientiert Dieser Ansatz fügt auf bereits vorhandener Schnittstellen mehrerer Anwendungen eine zusätzliche Abstraktionsschicht ein. Diese bietet einfache und zentral verwaltete Prozesse an, die auf existierende Schnittstellen der Anwendungen zugreifen und so anwendungsübergreifende Operationen erlauben. Das Ziel ist die Zusammenführung der in dem Unternehmen anfallenden Prozesse, Kapselung des Informationsflusses und der Geschäftslogik. Man erkennt, dass eine unscharfe Grenze zwischen service orientierter und geschäftsprozess orientierter Architektur besteht. Als Beispiel können Geschäftsfunktionen als Service bereitgestellt werden und Geschäftsprozesse innerhalb einer Anwendung greifen auf diese Services mittels einer service-orientierten Architektur zu. Abbildung 4: Business-to-Business Integration (Quelle: [Linthicum2004], S. 11) 3. Service orientierte Architektur (SOA) Geteilte Geschäftsfunktionen werden häufig als Service anderen Anwendungen zur Verfügung gestellt. Sobald eine Anwendung eine Sammlung von Services vorhält, wird das Management dieser Sammlung zu einer entscheidenden Funktion. Es bedarf eines zentralen Verzeichnisses, in dem alle Dienste gelistet sind. Als zweites sollte jeder Service eine Schnittstellenbeschreibung zur Verfügung stellen, damit andere Anwendungen über ein Kommunikationsabkommen verhandeln können. Entdeckung und Aushandlung sind die Schlüsselelemente einer serviceorientierten Architektur. 5
16 Software-Integration Eine SOA erlaubt mehreren Anwendungen Geschäftslogik bzw. Methoden über Web Services zu teilen. Geteilte Methoden können auf einem zentralen Server, auf den die Anwendungen Zugriff haben, gehostet werden. Alternativ können sie auch durch den Einsatz von Web Service Mechanismen, wie sie beispielsweise.net enthält, offeriert werden. Abbildung 5: Service orientierte Architektur (Quelle: [Linthicum2004], S. 17) Service orientierte Architekturen verwischen die Linie zwischen Integration und verteilten Anwendungen. Neue Anwendungen können so konzipiert sein, dass sie auf bestehende RemoteServices anderer Applikationen zugreifen. Andererseits bieten viele SOA inzwischen Werkzeuge an, die es erlauben, externe Services gleich wie lokale Methoden aufzurufen. Damit ähnelt die Entwicklung einer Applikation, die SOA umsetzt, der Entwicklung einer verteilten Anwendung. 4. Portal orientiert Portal orientierte Integration, auch als Informationsportal bezeichnet, bündelt verschiedene Oberflächen von Systemen (z. B. interne Enterprise Systeme oder externe Handelssysteme). Dadurch werden mehrere einzelne Benutzeroberflächen unter einer Oberfläche verschmolzen. Während sich andere Integrationstypen auf den Datenaustausch in Echtzeit konzentrieren, fokussiert dieser Ansatz sich darauf, die verschiedenen Informationen aus mehreren Enterprise Anwendungen in eine einzige Anwendung bzw. Oberfläche auszulagern. 6
17 Software-Integration Abbildung 6: Portal orientierte Integration (Quelle: [Linthicum2004], S. 20) 2.3 Herausforderungen bei der Einführung einer Integrationslösung Die Integration von Enterprise Anwendungen geht über die Entwicklung einer Standalone-Applikation, die auf einer Multi-Tier-Architektur aufsetzt, hinaus. Im Vergleich zum Tier-Modell, wo eine Schicht ohne die andere nicht selbstständig funktionieren kann, handelt es sich bei integrierten Applikationen um eigenständige Anwendungen, bei der jede für sich unabhängig arbeitet. Anhand loser Kopplung können Funktionen auslagert werden. Die Ansprüche, die an integrierte Systeme gestellt werden (z. B. Effizienz, Zuverlässigkeit, sicherer Datenaustausch zwischen Anwendungen usw.), erfordern eine umfassende Konzeption, da mit verschiedenen Problemfällen zu rechnen ist. (Vgl. [Hohpe2004], S. xix, S. xxix und S. 3) Das Netzwerk zwischen den integrierten Systemen kann gestört oder aufgrund von Überlastung temporär nicht verfügbar sein. Methodenaufrufe über ein Netzwerk sind langsamer als lokale Methodenaufrufe, was bei umfassender Kommunikation zwischen den Systemen zu spürbaren Performance-Einbrüchen führen kann. Die integrierten Systeme können auf Basis von völlig unterschiedlicher Soft- und Hardware betrieben werden. Bei Integrationslösungen bedarf es ausreichender Flexibilität, um mit verschiedenen Technologien kompatibel zu sein. 7
18 Software-Integration Software-Systeme unterliegen Fluktuationen. Auf Dauer ist es unvermeidbar, dass sich SoftwareKomponenten ändern, was auch die Integrationslösung betrifft. Aus diesem Grund sollte sie ein Minimum von Abhängigkeit zu anderen Systemen aufweisen und eine lose Kopplung das Ziel sein (siehe Kapitel 2.3.1). Integrationslösungen dürfen nicht als reine Kommunikationsbrücke zwischen mehreren Anwendungen gesehen werden. Sie stellen gleichzeitig eine Brücke zwischen organisatorischen Einheiten (z. B. Gruppen, Abteilungen und Filialen) eines Unternehmens dar. Die Nutzer müssen verstehen, dass sie zukünftig nicht einen Teil einer spezifischen Applikation bedienen, sondern einen Teil einer integrierten Anwendung, die sich über das gesamte Unternehmen erstreckt. Software-Integration gilt als kritischer Teil innerhalb einer Enterprise Applikation. Sobald eine wichtige Geschäftsfunktion fehlerhaft implementiert ist, können dem Unternehmen Verluste entstehen. Die korrekte Funktionsweise ist deshalb essentiell. Software-Entwickler haben oftmals keine Kontrolle über die zu integrierenden Systeme. Die Einführung einer Integrationslösung darf häufig keine Änderung des zu partizipierenden Systems erfordern, was sich nachteilig auf das System-Design auswirken kann. Aufgrund der verschiedenen zu integrierenden Systeme und der eingesetzten Technologien, können Entwicklungsprozesse einer Integrationslösung zu komplexen Vorgängen werden, deren Durchführung ein vielseitiges Entwicklerteam voraussetzt. IT-Abteilungen verfügen oft nicht über Personal mit entsprechendem Fachwissen Lose Kopplung Kopplung, im Zusammenhang mit Software Integration, bedeutet die Verknüpfung mehrerer Anwendungen, sodass beide im gewissen Umfang voneinander abhängig sind. Diese Abhängigkeit kann beispielsweise darin bestehen, dass die Anwendungen auf geteilte Methoden, Schnittstellen oder Daten zugreifen. (Vgl. [Linthicum2004], S. 28) Eines der Schlagwörter bei Integration von Enterprise Anwendungen ist lose Kopplung (engl. loose coupling) der Systeme. Ein Begriff, der mit der wachsenden Popularität von Web Services eine zentrale Stellung erhalten hat. Die Kernaussage die hinter loser Kopplung steht, ist die Reduzierung der Abkommen, die zwei Parteien (z. B. Komponenten, Anwendungen, Dienste, Programme, Anwender usw.) getroffen haben, um miteinander interagieren zu können (z. B. um gegenseitig Daten austauschen, geteilte Methoden aufzurufen usw.). (Vgl. [Hohpe2004], S. 10 und S. 15) Je mehr Abkommen zwischen zwei Parteien bestehen, desto intoleranter ist die Lösung gegen Störungen oder Änderungen. Eine lose Kopplung erlaubt mehr Flexibilität und Skalierbarkeit. Allerdings erfordert die Umsetzung von lose gekoppelten Systemen komplexere Programmiermodelle und erschwert die Konzeption, Implementierung und Fehlersuche. 8
19 Software-Integration 2.4 Technologien zur Software-Integration Inzwischen gibt es eine Unzahl an Technologien, deren Ziel in der Integration von Software-Applikationen liegt. Im Kern können vier grundlegende Verfahren unterschieden werden. Alle Verfahren besitzen natürlich Vor- und Nachteile, weshalb beim Entwurf einer Integrationslösung das für den jeweiligen Fall geeignetste Verfahren bestimmt werden sollte File Transfer Der Datenaustausch erfolgt, indem ein System eine Datei mit Daten erzeugt und ein anderes System diese Daten zu einem späteren Zeitpunkt ausliest. Der Lesevorgang findet häufig in vorgegebenen Intervallen statt. Bei den Systemen bedarf es einer Konvention über Dateiname, Dateiformat und Ort an dem das File gespeichert wird. (Vgl. [Hohpe2004], S. xxx) Abbildung 7: File-Transfer (Quelle: [Hohpe2004], S. 44) Inzwischen haben sich einige standardisierte Formate etabliert. Mainframe Systeme nutzen DataFeeds basierend auf den Datei-System-Formaten von COBOL. UNIX benutzt textbasierte Dateien und bei neueren Entwicklungen wird XML eingesetzt. Vorteile: Software-Entwickler benötigen beim File-Transfer kein Wissen über interne Strukturen der zu integrierenden Anwendung. Es bedarf keiner zusätzlichen Werkzeuge. Was allerdings bedeutet, dass die Entwickler den Großteil der Arbeit (Files erzeugen, Datenaustausch, File auswerten und löschen usw.) selbst erledigen müssen. Die Kommunikation erfolgt asynchron. Nachteile: Ein Nachteil besteht im Aufwand die Files benötigen, um erzeugt und ausgewertet zu werden. Dies ist ein Grund, warum ein Datenabgleich meist in periodischen Zyklen stattfindet. Erfolgt ein Abgleich der Systeme in zu großen Zeitabständen, kann es zum Verlust der Synchronisation dieser Systeme kommen. Grundsätzlich wäre es möglich, bei jeder Datenänderung ein File zu erzeugen (womit dieses Verfahren dem Prinzip von Messaging nahe kommt). Dies kann aber Management-Probleme auslösen, denn es muss sichergestellt sein, dass alle Files beim Empfänger ankommen und keines verlorengeht. Bei zu häufigem File-Austausch kann es zu Performance-Einbrüchen bei den beteiligten Systemen kommen. 9
20 Software-Integration Die Kapselung von Daten stellt ein wichtiger Faktor innerhalb einer Software-Architektur dar. Software-Module tauschen Daten über Methodenaufrufe aus, was bedeutet, dass eine Datenänderung einen entsprechende Methodenaufruf auslösen sollte. Bei File Transfer kann eine entfernte Anwendung, beim Auswerten eines Files, auf Datenänderungen mit einem Methodenaufruf reagieren. Der große Nachteil besteht darin, dass alle Methodenaufrufe verzögert beim Empfänger-System stattfinden. (Vgl. [Hohpe2004], S. xxx, S. 44ff, S. 50) Shared Database Mehrere Anwendungen teilen sich denselben Datenbestand. Da alle beteiligten Anwendungen auf die gleichen Daten Zugriff haben, ist ein Datenaustausch nicht notwendig. (Vgl. [Hohpe2004], S. xxx) Abbildung 8: Shared Database (Quelle: [Hohpe2004], S. 48) Vorteile: Anwendungen, die auf den gleichen Datenbestand zugreifen, erhalten immer aktuelle und durch Einsatz von Transaktion-Management-Systeme, auch immer konsistente Daten. Da SQL als Abfragesprache von gängigen Technologien und Programmiersprachen unterstützt wird, ist eine Anbindung der Anwendungen an die geteilte Datenbestände relativ gut möglich. Nachteile: Semantische Dissonanzen können zu Konflikten führen. Anwendung A erwartet unter Feld X einen anderen Wert als Anwendung B. Ein großes Problem bei geteilten Datenbanken ist, ein einheitliches Datenbankmodell für alle Anwendungen zu schaffen. Einige Anwendungen funktionieren nur mit dem von ihnen vorgegebenen Schema, was eine Adaption erfordert (sofern dies möglich ist). Sollte eine Anwendung Änderungen am Datenbank-Schema erfordern, können Kompatibilitätsprobleme mit bereits angebundenen Anwendungen auftreten. Wird die geteilte Datenbank zu stark von angebundenen Applikationen frequentiert, kann es zu Performance Engpässen kommen, was die Datenbank zum Flaschenhals werden lässt. Zugriffe auf eine geteilte Datenbank über ein WAN sind langsam. Kapselung der Daten aufgrund der offenen Datenstruktur nur schwer möglich. 10
21 Software-Integration Bei Ausfall des Datenbank-Systems kann der störungsfreie Betrieb der verschiedenen Anwendungen nicht mehr gewährleistet werden. (Vgl. [Hohpe2004], S. 47ff) Remote Procedure Invocation Durch Verwendung entsprechender Protokolle und Software ist eine Anwendung in der Lage, Funktionen eines entfernten Systems aufzurufen. Die Anwendung übergibt die notwendigen Informationen und empfängt von der entfernten Methode den Rückgabewert. Man spricht hier von entferntem Methodenaufruf. Die Kommunikation erfolgt synchron. (Vgl. [Hohpe2004], S.xxx) Abbildung 9: Remote Procedure Invocation (Quelle: [Hohpe2004], S. 51) Vorteile: Erlaubt eine klare Kapselung der Daten durch Methoden. Anwendungen greifen nicht direkt auf die Datenstrukturen einer entfernten Anwendung zu, sondern rufen deren Methoden auf. Jede Anwendung wird damit in die Lage versetzt, selbst für Konsistenz und Integrität seiner Daten zu sorgen. Änderungen in der Software sind möglich, solang bei Remote-Methoden die Methodendeklaration konsistent bleiben. Änderungen der internen Repräsentation der Daten sind möglich, ohne andere Anwendungen zu beeinflussen. Durch Kapselung ist es einfacher, semantische Dissonanzen zu beheben. Anwendungen können mehrere Schnittstellen auf ein und die selben Daten, unter Verwendung unterschiedlicher Methodendeklarationen, bieten. Inzwischen existieren mehrere Technologien, die Remote Procedure Invocation ermöglichen: CORBA, COM,.NET Remoting oder Java RMI usw. Nachteile: Jede integrierte Anwendung muss die Schnittstellendeklaration seines Nachbarn kennen. Zwar hilft die Kapselung geteilte Datenstrukturen zu vermeiden, dennoch führt Remote Procedure Invocation zu einer engen Kopplung der Systeme. Dieses Verfahren weisst geringere Performance und Zuverlässigkeit im Vergleich zu lokalen Methodenaufrufen auf, was zu langsamen und unzuverlässigen Systemen führen kann. (Vgl. [Hohpe2004], S.50ff) 11
22 Software-Integration Messaging Messaging ist ein Verfahren zur Kommunikation zwischen Software Komponenten oder Anwendungen. Die Clients können Informationen, als Nachricht (so genannte Messages) verpackt, senden und empfangen. Messaging ermöglicht eine verteilte Kommunikation, die lose gekoppelt ist. Dies wird erreicht, indem die Clients Nachrichtenkanäle zum Datenaustausch benutzen. Diese Kanäle erlauben eine asynchrone Kommunikation, bei der Sender und Empfänger keinerlei Kenntnisse voneinander benötigen. Zur Kommunikation ist es ausreichend, dass beide Zugriff auf den Nachrichtenkanal besitzen und sich über das Nachrichtenformat einig sind. (Vgl. [Haase2002], S. 9) Abbildung 10: Messaging (Quelle: [Hohpe2004], S. 54) Vorteile: Durch den Versand kleiner Datenpakete ist ein schneller Datenaustausch möglich. Semantische Dissonanzen können durch Message Translator überwunden werden. Ein Messaging System koordiniert den Übertragungsprozess und sorgt für einen zuverlässigen Nachrichtenaustausch. Die integrierten Systeme kommunizieren über Nachrichtenkanäle, wodurch sie keinerlei Details über andere Anwendungen besitzen. Eine Anwendung kennt den Nachrichtenkanal, über den es Nachrichten sendet bzw. empfängt. Es besitzt keine Kenntnisse über den Kommunikationspartner selbst. Anstelle einer Kopplung wird eine Kollaboration erreicht. Aufgrund der asynchronen Kommunikation müssen nicht beide Kommunikationspartner zur gleichen Zeit bereit sein, was eine hohe Verfügbarkeit schafft. Die integrierten Systeme greifen nicht auf Datenstrukturen anderer Anwendungen zu, wodurch eine Kapselung der Daten möglich ist. Nachteile: Konzeption, Entwicklung und Fehlersuche von Systemen die Messaging verwenden, ist komplex. Beim Ausfall des Message Bus Systems kann kein Nachrichtenaustausch mehr erfolgen, wodurch die Funktionalität der gesamten Integrationslösung beeinträchtigt werden kann. (Vgl. [Hohpe2004], S.53ff) 12
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
MehrFachbericht 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
MehrWorkflow, 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
MehrWeb 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.
MehrEasyWk DAS Schwimmwettkampfprogramm
EasyWk DAS Schwimmwettkampfprogramm Arbeiten mit OMEGA ARES 21 EasyWk - DAS Schwimmwettkampfprogramm 1 Einleitung Diese Präsentation dient zur Darstellung der Zusammenarbeit zwischen EasyWk und der Zeitmessanlage
MehrGrundlagen 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)
MehrJava Enterprise Architekturen Willkommen in der Realität
Java Enterprise Architekturen Willkommen in der Realität Ralf Degner (Ralf.Degner@tk-online.de), Dr. Frank Griffel (Dr.Frank.Griffel@tk-online.de) Techniker Krankenkasse Häufig werden Mehrschichtarchitekturen
MehrSpeicher 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
MehrDesign Pattern - Strukturmuster. CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi
Design Pattern - Strukturmuster CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi Agenda Einleitung Strukturmuster Fassade Model View Controller Vergleich 2 Einleitung Strukturmuster
MehrSkript Pilotphase em@w für Arbeitsgelegenheiten
Die Pilotphase erstreckte sich über sechs Meilensteine im Zeitraum August 2011 bis zur EMAW- Folgeversion 2.06 im August 2013. Zunächst einmal musste ein grundsätzliches Verständnis für das Verfahren geschaffen
MehrSynchronisations- Assistent
TimePunch Synchronisations- Assistent Benutzerhandbuch Gerhard Stephan Softwareentwicklung -und Vertrieb 25.08.2011 Dokumenten Information: Dokumenten-Name Benutzerhandbuch, Synchronisations-Assistent
MehrAutorisierung. 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
MehrContent Management System mit INTREXX 2002.
Content Management System mit INTREXX 2002. Welche Vorteile hat ein CM-System mit INTREXX? Sie haben bereits INTREXX im Einsatz? Dann liegt es auf der Hand, dass Sie ein CM-System zur Pflege Ihrer Webseite,
MehrSE2-10-Entwurfsmuster-2 15
Architektur und Skalierbarkeit SE2-10-Entwurfsmuster-2 15 Skalierbarkeit Skalierbarkeit bedeutet die Anpassung einer Software an wachsende Last: Interaktionsfrequenz Nutzerzahl Anpassung durch Hinzufügen
MehrJava 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
MehrSDD 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
MehrOP-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Ü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Übungsklausur vom 7. Dez. 2007
Übungsklausur vom 7. Dez. 2007 Ein Lösungsmuster Teilbereiche der Softwaretechnik Software Anforderungen Software Entwurf Software Konstruktion Software Test Software Wartung Software Konfigurationsmanagement
MehrSynchronisation von redundanten Datenbeständen
Synchronisation von redundanten Datenbeständen seit 1999 Themenübersicht Mobile Anwendungen Verteilte Datenbanksysteme Synchronisation Lösungsansätze Mobile Anwendungen Erwartungen der Anwender Der App-Stil
MehrAgile Vorgehensmodelle in der Softwareentwicklung: Scrum
C A R L V O N O S S I E T Z K Y Agile Vorgehensmodelle in der Softwareentwicklung: Scrum Johannes Diemke Vortrag im Rahmen der Projektgruppe Oldenburger Robot Soccer Team im Wintersemester 2009/2010 Was
Mehr2 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
MehrAnNoText. AnNoText Online-Update. Copyright Wolters Kluwer Deutschland GmbH
Copyright Wolters Kluwer Deutschland GmbH AnNoText AnNoText Online-Update Wolters Kluwer Deutschland GmbH Software + Services Legal Robert-Bosch-Straße 6 D-50354 Hürth Telefon (02 21) 9 43 73-6000 Telefax
MehrDatabase Exchange Manager. Infinqa IT Solutions GmbH, Berlin Stralauer Allee 2 10245 Berlin Tel.:+49(0) 30 2900 8639 Fax.:+49(0) 30 2900 8695
Database Exchange Manager Replication Service- schematische Darstellung Replication Service- allgemeines Replikation von Daten von bzw. in ein SAP-System und einer relationalen DMS-Datenbank Kombination
MehrIT-Governance und Social, Mobile und Cloud Computing: Ein Management Framework... Bachelorarbeit
IT-Governance und Social, Mobile und Cloud Computing: Ein Management Framework... Bachelorarbeit zur Erlangung des akademischen Grades Bachelor of Science (B.Sc.) im Studiengang Wirtschaftswissenschaft
MehrSWT II Projekt. Chat - Anwendung. Pflichtenheft 2000 SWT
SWT II Projekt Chat - Anwendung Pflichtenheft 2000 SWT i Versionen Datum Version Beschreibung Autor 3.11.2000 1.0 erste Version Dietmar Matthes ii Inhaltsverzeichnis 1. ZWECK... 1 1.1. RAHMEN... 1 1.2.
Mehr(1) Mit dem Administrator Modul werden die Datenbank, Gruppen, Benutzer, Projekte und sonstige Aufgaben verwaltet.
1 TimeTrack! TimeTrack! Ist ein Softwareprodukt von The Project Group, welches der Erfassung von Ist- Aufwänden von Projekten dient. Voraussetzung hierfür ist allerdings, dass das Projekt vorher mit Microsoft
MehrPowermanager Server- Client- Installation
Client A Server Client B Die Server- Client- Funktion ermöglicht es ein zentrales Powermanager Projekt von verschiedenen Client Rechnern aus zu bedienen. 1.0 Benötigte Voraussetzungen 1.1 Sowohl am Server
MehrRT Request Tracker. Benutzerhandbuch V2.0. Inhalte
RT Request Tracker V2.0 Inhalte 1 Was ist der RT Request Tracker und wo finde ich ihn?...2 2 Was möchten wir damit erreichen?...2 3 Wie erstelle ich ein Ticket?...2 4 Wie wird das Ticket abgearbeitet?...4
MehrDatensicherung. 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
MehrANYWHERE Zugriff von externen Arbeitsplätzen
ANYWHERE Zugriff von externen Arbeitsplätzen Inhaltsverzeichnis 1 Leistungsbeschreibung... 3 2 Integration Agenda ANYWHERE... 4 3 Highlights... 5 3.1 Sofort einsatzbereit ohne Installationsaufwand... 5
MehrFassade. 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
MehrIntegration mit. Wie AristaFlow Sie in Ihrem Unternehmen unterstützen kann, zeigen wir Ihnen am nachfolgenden Beispiel einer Support-Anfrage.
Integration mit Die Integration der AristaFlow Business Process Management Suite (BPM) mit dem Enterprise Information Management System FILERO (EIMS) bildet die optimale Basis für flexible Optimierung
Mehrpro4controlling - Whitepaper [DEU] Whitepaper zur CfMD-Lösung pro4controlling Seite 1 von 9
Whitepaper zur CfMD-Lösung pro4controlling Seite 1 von 9 1 Allgemeine Beschreibung "Was war geplant, wo stehen Sie jetzt und wie könnte es noch werden?" Das sind die typischen Fragen, mit denen viele Unternehmer
MehrAnalyse zum Thema: Laufzeit von Support-Leistungen für ausgewählte Server OS
Analyse zum Thema: Laufzeit von Support-Leistungen für Axel Oppermann Advisor phone: +49 561 506975-24 mobile: +49 151 223 223 00 axel.oppermann@experton-group.com Januar 2010 Inhalt Summary und Key Findings
MehrMulticast Security Group Key Management Architecture (MSEC GKMArch)
Multicast Security Group Key Management Architecture (MSEC GKMArch) draft-ietf-msec-gkmarch-07.txt Internet Security Tobias Engelbrecht Einführung Bei diversen Internetanwendungen, wie zum Beispiel Telefonkonferenzen
MehrDokumentation IBIS Monitor
Dokumentation IBIS Monitor Seite 1 von 16 11.01.06 Inhaltsverzeichnis 1. Allgemein 2. Installation und Programm starten 3. Programmkonfiguration 4. Aufzeichnung 4.1 Aufzeichnung mitschneiden 4.1.1 Inhalt
MehrProseminar: Website-Managment-System. NetObjects Fusion. von Christoph Feller
Proseminar: Website-Managment-System NetObjects Fusion von Christoph Feller Netobjects Fusion - Übersicht Übersicht Einleitung Die Komponenten Übersicht über die Komponenten Beschreibung der einzelnen
MehrWhite Paper. Konfiguration und Verwendung des Auditlogs. 2012 Winter Release
White Paper Konfiguration und Verwendung des Auditlogs 2012 Winter Release Copyright Fabasoft R&D GmbH, A-4020 Linz, 2011. Alle Rechte vorbehalten. Alle verwendeten Hard- und Softwarenamen sind Handelsnamen
MehrObjectBridge Java Edition
ObjectBridge Java Edition Als Bestandteil von SCORE Integration Suite stellt ObjectBridge Java Edition eine Verbindung von einem objektorientierten Java-Client zu einer fast beliebigen Server-Komponente
MehrÜbungen zur Softwaretechnik
Technische Universität München Fakultät für Informatik Lehrstuhl IV: Software & Systems Engineering Markus Pister, Dr. Bernhard Rumpe WS 2002/2003 Lösungsblatt 9 17. Dezember 2002 www4.in.tum.de/~rumpe/se
MehrHandbuch. timecard Connector 1.0.0. Version: 1.0.0. REINER SCT Kartengeräte GmbH & Co. KG Goethestr. 14 78120 Furtwangen
Handbuch timecard Connector 1.0.0 Version: 1.0.0 REINER SCT Kartengeräte GmbH & Co. KG Goethestr. 14 78120 Furtwangen Furtwangen, den 18.11.2011 Inhaltsverzeichnis Seite 1 Einführung... 3 2 Systemvoraussetzungen...
MehrEnterprise Service Bus
Enterprise Service Bus Christopher Weiß 25.01.2010 Gliederung 1 Motivation und Einordung Integrationsformen 2 Definition und Eigenschaften Definitionen Eigenschaften 3 Aufbau und Konzepte Aufbau Produkte
MehrLizenzierung 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
MehrDiplomarbeit. 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
MehrWinVetpro im Betriebsmodus Laptop
WinVetpro im Betriebsmodus Laptop Um Unterwegs Daten auf einem mobilen Gerät mit WinVetpro zu erfassen, ohne den Betrieb in der Praxis während dieser Zeit zu unterbrechen und ohne eine ständige Online
Mehrmywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger
mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger Grundlegendes Oracle9i PostgreSQL Prevayler Memory mywms bietet umfangreiche Konfigurationsmöglichkeiten um die Daten dauerhaft zu speichern.
MehrLizenzen auschecken. Was ist zu tun?
Use case Lizenzen auschecken Ihr Unternehmen hat eine Netzwerk-Commuterlizenz mit beispielsweise 4 Lizenzen. Am Freitag wollen Sie Ihren Laptop mit nach Hause nehmen, um dort am Wochenende weiter zu arbeiten.
MehrInside. IT-Informatik. Die besseren IT-Lösungen.
Inside IT-Informatik Die Informationstechnologie unterstützt die kompletten Geschäftsprozesse. Geht in Ihrem Unternehmen beides Hand in Hand? Nutzen Sie Ihre Chancen! Entdecken Sie Ihre Potenziale! Mit
MehrHandbuch 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
MehrLizenzierung von System Center 2012
Lizenzierung von System Center 2012 Mit den Microsoft System Center-Produkten lassen sich Endgeräte wie Server, Clients und mobile Geräte mit unterschiedlichen Betriebssystemen verwalten. Verwalten im
MehrClient/Server-Systeme
Fachbereich Informatik Projektgruppe KOSI Kooperative Spiele im Internet Client/Server-Systeme Vortragender Jan-Ole Janssen 26. November 2000 Übersicht Teil 1 Das Client/Server-Konzept Teil 2 Client/Server-Architekturen
Mehr1 Einleitung. 1.1 Caching von Webanwendungen. 1.1.1 Clientseites Caching
1.1 Caching von Webanwendungen In den vergangenen Jahren hat sich das Webumfeld sehr verändert. Nicht nur eine zunehmend größere Zahl an Benutzern sondern auch die Anforderungen in Bezug auf dynamischere
MehrHandbuch 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
MehrMicrosoft PowerPoint 2013 Folien gemeinsam nutzen
Hochschulrechenzentrum Justus-Liebig-Universität Gießen Microsoft PowerPoint 2013 Folien gemeinsam nutzen Folien gemeinsam nutzen in PowerPoint 2013 Seite 1 von 4 Inhaltsverzeichnis Einleitung... 2 Einzelne
MehrProzessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am 14.08.08
Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements von Stephanie Wilke am 14.08.08 Überblick Einleitung Was ist ITIL? Gegenüberstellung der Prozesse Neuer
MehrEigenen WSUS Server mit dem UNI WSUS Server Synchronisieren
Verwaltungsdirektion Informatikdienste Eigenen WSUS Server mit dem UNI WSUS Server Synchronisieren Inhaltsverzeichnis Einleitung... 3 Installation WSUS Server... 4 Dokumente... 4 Step by Step Installation...
MehrEnterprise 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
MehrSession Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de
s & Servlet Integration Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Motivation Das Interface Stateful und Stateless s Programmierung einer Stateful
MehrSAP NetWeaver Gateway. Connectivity@SNAP 2013
SAP NetWeaver Gateway Connectivity@SNAP 2013 Neue Wege im Unternehmen Neue Geräte und Usererfahrungen Technische Innovationen in Unternehmen Wachsende Gemeinschaft an Entwicklern Ausdehnung der Geschäftsdaten
MehrSQL Server 2008 Standard und Workgroup Edition
September 2008 Produktgruppe: Server Lizenzmodell: Microsoft Server Server/ Serverlizenz Zugriffslizenz () pro Gerät Zugriffslizenz () pro Nutzer Produktgruppe: Server Lizenzmodell: Microsoft Server Pro
MehrResearch Note zum Thema: Laufzeit von Support-Leistungen für Server OS
Research Note zum Thema: Laufzeit von Support-Leistungen für Axel Oppermann Advisor phone: +49 561 506975-24 mobile: +49 151 223 223 00 axel.oppermann@experton-group.com November 2009 Inhalt 1 EINFÜHRUNG
MehrAlbert 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.
MehrEDI Datenaustausch und Konvertierung Funktionsumfang & Services
cleardax EDI Datenaustausch und Konvertierung Funktionsumfang & Services Einleitung Hauptfunktionen Datenaustausch (Anbindungsmöglichkeiten) Konvertierung Mappings Zusatzleistungen und Funktionen cleardax
MehrWindows Small Business Server (SBS) 2008
September 2008 Windows Small Business Server (SBS) 2008 Produktgruppe: Server Windows Small Business Server (SBS) 2008 Lizenzmodell: Microsoft Server Betriebssysteme Serverlizenz Zugriffslizenz () pro
MehrPCC Outlook Integration Installationsleitfaden
PCC Outlook Integration Installationsleitfaden Kjell Guntermann, bdf solutions gmbh PCC Outlook Integration... 3 1. Einführung... 3 2. Installationsvorraussetzung... 3 3. Outlook Integration... 3 3.1.
MehrLook Inside: desite. modellorientiertes Arbeiten im Bauwesen. B.I.M.
Building Information Modeling Look Inside: desite modellorientiertes Arbeiten im Bauwesen. B.I.M. desite MD unterstützt Sie bei der täg lichen Arbeit mit Gebäudemodellen und ermöglicht den Zugang zu den
MehrDer Support für Windows Server 2003 endet endgültig alles was Ihnen dann noch bleibt ist diese Broschüre.
Der Support für Windows Server 2003 endet endgültig alles was Ihnen dann noch bleibt ist diese Broschüre. 14. Juli 2015. Der Tag, an dem in Ihrem Unternehmen das Licht ausgehen könnte. An diesem Tag stellt
MehrInstallation und Inbetriebnahme von SolidWorks
Inhaltsverzeichnis FAKULTÄT FÜR INGENIEURWISSENSCHAFTEN I Prof. Dr.-Ing. Frank Lobeck Installation und Inbetriebnahme von SolidWorks Inhaltsverzeichnis Inhaltsverzeichnis... I 1. Einleitung... 1 2. Installation...
MehrUm ein solches Dokument zu erzeugen, muss eine Serienbriefvorlage in Word erstellt werden, das auf die von BüroWARE erstellte Datei zugreift.
Briefe Schreiben - Arbeiten mit Word-Steuerformaten Ab der Version 5.1 stellt die BüroWARE über die Word-Steuerformate eine einfache Methode dar, Briefe sowie Serienbriefe mit Hilfe der Korrespondenzverwaltung
MehrLokale Installation von DotNetNuke 4 ohne IIS
Lokale Installation von DotNetNuke 4 ohne IIS ITM GmbH Wankelstr. 14 70563 Stuttgart http://www.itm-consulting.de Benjamin Hermann hermann@itm-consulting.de 12.12.2006 Agenda Benötigte Komponenten Installation
MehrEinrichten 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
Mehr2. Word-Dokumente verwalten
2. Word-Dokumente verwalten In dieser Lektion lernen Sie... Word-Dokumente speichern und öffnen Neue Dokumente erstellen Dateiformate Was Sie für diese Lektion wissen sollten: Die Arbeitsumgebung von Word
MehrSafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen
SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen Um die maximale Sicherheit für das Betriebssystem und Ihre persönlichen Daten zu gewährleisten, können Sie Programme von Drittherstellern
Mehrdpa-infocom - Datenlieferung
dpa-infocom - Datenlieferung Copyright 2006 von dpa-infocom GmbH Status des Dokuments: FINAL Inhaltsverzeichnis Inhaltsverzeichnis...1 1. Verzeichnisstrukturen...2 2. Nachrichtenmanagement...2 3. Datenübertragung...3
MehrHow-to: Webserver NAT. Securepoint Security System Version 2007nx
Securepoint Security System Inhaltsverzeichnis Webserver NAT... 3 1 Konfiguration einer Webserver NAT... 4 1.1 Einrichten von Netzwerkobjekten... 4 1.2 Erstellen von Firewall-Regeln... 6 Seite 2 Webserver
MehrElektronische Zustellung WKO / AustriaPro. Status Arbeitspakete 17.09.2014 PL.O.T
Elektronische Zustellung WKO / AustriaPro Status Arbeitspakete 17.09.2014 PL.O.T Agenda Übersicht und Inhalt PL.O.T Arbeitspakete Details zu den Arbeitspaketen AP 3 - Fachlich / Usecases AP 4 - Fachlich
MehrFolgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:
Firewall für Lexware professional konfigurieren Inhaltsverzeichnis: 1. Allgemein... 1 2. Einstellungen... 1 3. Windows XP SP2 und Windows 2003 Server SP1 Firewall...1 4. Bitdefender 9... 5 5. Norton Personal
MehrSANDBOXIE konfigurieren
SANDBOXIE konfigurieren für Webbrowser und E-Mail-Programme Dies ist eine kurze Anleitung für die grundlegenden folgender Programme: Webbrowser: Internet Explorer, Mozilla Firefox und Opera E-Mail-Programme:
MehrI N F O R M A T I O N V I R T U A L I S I E R U N G. Wir schützen Ihre Unternehmenswerte
I N F O R M A T I O N V I R T U A L I S I E R U N G Wir schützen Ihre Unternehmenswerte Wir schützen Ihre Unternehmenswerte Ausfallsicherheit durch Virtualisierung Die heutigen Anforderungen an IT-Infrastrukturen
MehrMatrix42. 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
MehrStammdaten 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
MehrProjektmanagement 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
MehrSoftwaretechnik (Allgemeine Informatik) Überblick
Softwaretechnik (Allgemeine Informatik) Überblick 1 Einführung und Überblick 2 Abstraktion 3 Objektorientiertes Vorgehensmodell 4 Methoden der Anforderungs- und Problembereichsanalyse 5 UML-Diagramme 6
MehrDaniel Warneke warneke@upb.de 08.05.2006. Ein Vortrag im Rahmen des Proseminars Software Pioneers
Design Patterns Daniel Warneke warneke@upb.de 08.05.2006 Ein Vortrag im Rahmen des Proseminars Software Pioneers Design Patterns 1/23 Übersicht Einleitung / Motivation Design Patterns Beispiele Rolle des
MehrGesetzliche Aufbewahrungspflicht für E-Mails
Gesetzliche Aufbewahrungspflicht für E-Mails sind Sie vorbereitet? Vortragsveranstaltung TOP AKTUELL Meins und Vogel GmbH, Plochingen Dipl.-Inf. Klaus Meins Dipl.-Inf. Oliver Vogel Meins & Vogel GmbH,
MehrMobile Intranet in Unternehmen
Mobile Intranet in Unternehmen Ergebnisse einer Umfrage unter Intranet Verantwortlichen aexea GmbH - communication. content. consulting Augustenstraße 15 70178 Stuttgart Tel: 0711 87035490 Mobile Intranet
MehrINDIVIDUELLE SOFTWARELÖSUNGEN CUSTOMSOFT CS GMBH
01 INDIVIDUELLE SOFTWARELÖSUNGEN 02 05 02 GUMMERSBACH MEHRWERT DURCH KOMPETENZ ERIC BARTELS Softwarearchitekt/ Anwendungsentwickler M_+49 (0) 173-30 54 146 F _+49 (0) 22 61-96 96 91 E _eric.bartels@customsoft.de
Mehr1 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
MehrKommunikationsübersicht XIMA FORMCYCLE Inhaltsverzeichnis
Kommunikationsübersicht Inhaltsverzeichnis Kommunikation bei Einsatz eines MasterServer... 2 Installation im... 2 Installation in der... 3 Kommunikation bei Einsatz eines MasterServer und FrontendServer...
MehrSichere E-Mail für Rechtsanwälte & Notare
Die Technik verwendet die schon vorhandene Technik. Sie als Administrator müssen in der Regel keine neue Software und auch keine zusätzliche Hardware implementieren. Das bedeutet für Sie als Administrator
MehrIBM Software Demos Tivoli Provisioning Manager for OS Deployment
Für viele Unternehmen steht ein Wechsel zu Microsoft Windows Vista an. Doch auch für gut vorbereitete Unternehmen ist der Übergang zu einem neuen Betriebssystem stets ein Wagnis. ist eine benutzerfreundliche,
MehrOutlook. 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
MehrWEBINAR@LUNCHTIME THEMA: "SAS STORED PROCESSES - SCHNELL GEZAUBERT" HELENE SCHMITZ
WEBINAR@LUNCHTIME THEMA: "SAS STORED PROCESSES - SCHNELL GEZAUBERT" HELENE SCHMITZ HERZLICH WILLKOMMEN BEI WEBINAR@LUNCHTIME Moderation Anne K. Bogner-Hamleh SAS Institute GmbH Education Consultant Training
MehrRoot-Server für anspruchsvolle Lösungen
Root-Server für anspruchsvolle Lösungen I Produktbeschreibung serverloft Internes Netzwerk / VPN Internes Netzwerk Mit dem Produkt Internes Netzwerk bietet serverloft seinen Kunden eine Möglichkeit, beliebig
MehrKlausur WS 2006/07 Programmiersprache Java Objektorientierte Programmierung II 15. März 2007
Fachhochschule Bonn-Rhein-Sieg University of Applied Sciences Fachbereich Informatik Prof. Dr. Peter Becker Klausur WS 2006/07 Programmiersprache Java Objektorientierte Programmierung II 15. März 2007
MehrGEZIELT MEHR SICHERHEIT MIT 4I ACCESS SERVER & 4I CONNECT CLIENT
Seite 1/7 GEZIELT MEHR SICHERHEIT MIT 4I ACCESS SERVER & 4I CONNECT CLIENT ZENTRAL LOKALE MANAGEMENT-PLATTFORM FÜR EINE W ELTWEIT SICHERE INDUSTRIELLE KOMMUNIKATION. Seite 2/7 Auf den folgenden Seiten
MehrIn 12 Schritten zum mobilen PC mit Paragon Drive Copy 11 und Microsoft Windows Virtual PC
PARAGON Technologie GmbH, Systemprogrammierung Heinrich-von-Stephan-Str. 5c 79100 Freiburg, Germany Tel. +49 (0) 761 59018201 Fax +49 (0) 761 59018130 Internet www.paragon-software.com Email sales@paragon-software.com
MehrHinweise zum Update des KPP Auswahltools (Netzwerkinstallation) auf Version 7.2
Hinweise zum Update des KPP Auswahltools (Netzwerkinstallation) auf Version 7.2 Installationsvoraussetzungen: Die Update-Routine benötigt das DotNet-Framework 4.0 Client Profile, das normalerweise über
Mehr