Konzeption und Implementierung einer modularen prototypischen Integrationslösung auf. Basis von Entwurfsmustern für asynchrone Messaging Systeme

Größe: px
Ab Seite anzeigen:

Download "Konzeption und Implementierung einer modularen prototypischen Integrationslösung auf. Basis von Entwurfsmustern für asynchrone Messaging Systeme"

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

Client/Server-Systeme

Client/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

Mehr

Gemusterte Kamele. Systemintegration mit Java und Apache Camel. Tobias Israel tobias.israel@buschmais.com

Gemusterte Kamele. Systemintegration mit Java und Apache Camel. Tobias Israel tobias.israel@buschmais.com Gemusterte Kamele Systemintegration mit Java und Apache Camel Tobias Israel tobias.israel@buschmais.com Die Monolithen sterben aus! Eine Applikation = Viele Applikationen Interaktion Kooperation Verfügbarkeit...

Mehr

Integrating Architecture Apps for the Enterprise

Integrating Architecture Apps for the Enterprise Integrating Architecture Apps for the Enterprise Ein einheitliches Modulsystem für verteilte Unternehmensanwendungen Motivation und Grundkonzept Inhalt Problem Ursache Herausforderung Grundgedanke Architektur

Mehr

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com Web Services Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 1 Web Services Einführung Definition, Eigenschaften, Anwendungen... JAX-RPC Überblick, Architektur... JAX Übersicht, Architektur Java Praktikum

Mehr

Message Oriented Middleware am Beispiel von XMLBlaster

Message Oriented Middleware am Beispiel von XMLBlaster Message Oriented Middleware am Beispiel von XMLBlaster Vortrag im Seminar XML und intelligente Systeme an der Universität Bielefeld WS 2005/2006 Vortragender: Frederic Siepmann fsiepman@techfak.uni bielefeld.de

Mehr

Integrationsmuster am Beispiel von Apache Camel

Integrationsmuster am Beispiel von Apache Camel Integrationsmuster am Beispiel von Apache Camel @berlin.jar buschmais GbR Inhaber Torsten Busch, Frank Schwarz, Dirk Mahler und Tobias Israel Adresse Leipziger Str. 93 01127 Dresden info@buschmais.de http://www.buschmais.de

Mehr

6 Architektur-Mittel (WOMIT)

6 Architektur-Mittel (WOMIT) 6 Architektur-Mittel (WOMIT) Abb. 6-1: Positionierung des Kapitels im Ordnungsrahmen. Dieses Kapitel befasst sich mit der WOMIT-Dimension des architektonischen Ordnungsrahmens, indem es grundlegende Konzepte

Mehr

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans Java Enterprise Edition - Überblick Was ist J2EE Java EE? Zunächst mal: Eine Menge von Spezifikationen und Regeln. April 1997: SUN initiiert die Entwicklung

Mehr

Software-Architekturen für das E-Business

Software-Architekturen für das E-Business Sebastian Herden Jorge Marx Gömez Claus Rautenstrauch Andre Zwanziger Software-Architekturen für das E-Business Enterprise-Application-Integration mit verteilten Systemen Mit 60 Abbildungen 4y Springer

Mehr

Business Process Management und Enterprise Service Bus

Business Process Management und Enterprise Service Bus Business Process Management und Enterprise Service Bus Gegner oder doch eine gute Ergänzung? Author: Date: Markus Demolsky Soreco International 08. November 2010 Vortragender Warum über Integration nachdenken?

Mehr

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server Einsatz von Applikationsservern Untersucht am Beispiel des Sybase Enterprise Application Server Architektur von Datenbanksystemen Client / Server Modell (2 Schichten Modell) Benutzerschnittstelle Präsentationslogik

Mehr

Evaluation of Java Messaging Middleware as a Platform for Software Agent Communication

Evaluation of Java Messaging Middleware as a Platform for Software Agent Communication Evaluation of Java Messaging Middleware as a Platform for Software Agent Communication Frank Kargl Torsten Illmann Michael Weber Verteilte Systeme Universität Ulm {frank.kargl torsten.illmann weber} @informatik.uni-ulm.de

Mehr

1 Einleitung. Betriebswirtschaftlich administrative Systeme

1 Einleitung. Betriebswirtschaftlich administrative Systeme 1 1 Einleitung Data Warehousing hat sich in den letzten Jahren zu einem der zentralen Themen der Informationstechnologie entwickelt. Es wird als strategisches Werkzeug zur Bereitstellung von Informationen

Mehr

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Entwicklung von Web-Anwendungen auf JAVA EE Basis Entwicklung von Web-Anwendungen auf JAVA EE Basis Java Enterprise Edition - Überblick Prof. Dr. Bernhard Schiefer Inhalt der Veranstaltung Überblick Java EE JDBC, JPA, JNDI Servlets, Java Server Pages

Mehr

Enterprise Application Integration. Sascha M. Köhler Software Architekt

Enterprise Application Integration. Sascha M. Köhler Software Architekt Sascha M. Köhler Software Architekt Agenda 2 01 Herausforderungen unserer Kunden 02 Lösungsdefinition 03 PROFI Angebot 04 Zusammenfassung Der IT-Gemüsegarten ITK Systeme sind auf Grund von Funktionen &

Mehr

Remote Communications

Remote Communications HELP.BCFESDEI Release 4.6C SAP AG Copyright Copyright 2001 SAP AG. Alle Rechte vorbehalten. Weitergabe und Vervielfältigung dieser Publikation oder von Teilen daraus sind, zu welchem Zweck und in welcher

Mehr

Tier-Konzepte. Vertiefungsarbeit von Karin Schäuble

Tier-Konzepte. Vertiefungsarbeit von Karin Schäuble Vertiefungsarbeit von Karin Schäuble Gliederung 1. Einführung 3. Rahmenbedingungen in der heutigen Marktwirtschaft 3.1 Situation für Unternehmen 3.2 Situation für Applikationsentwickler 4. Lösungskonzepte

Mehr

Mobile Agenten am Beispiel JADE (Java Agent DEvelopment Framework) Vorstellung in der Übung zu Konzepte Verteilter Systeme

Mobile Agenten am Beispiel JADE (Java Agent DEvelopment Framework) Vorstellung in der Übung zu Konzepte Verteilter Systeme Mobile Agenten am Beispiel JADE (Java Agent DEvelopment Framework) Vorstellung in der Übung zu Konzepte Verteilter Systeme Agenda Mobile Agenten allgemein JADE - Java Agent DEvelopment Framework Anwendungsfall

Mehr

Architektur einer GDI: Service-oriented Architecture (SOA)

Architektur einer GDI: Service-oriented Architecture (SOA) Modul 6: Voraussetzungen einer GDI Vertiefende Dokumente I Stand: 24.01.2012 Architektur einer GDI: Service-oriented Architecture (SOA) Zu den Hauptargumenten für eine Geodateninfrastruktur zählen unter

Mehr

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221 Oracle 10g und SQL Server 2005 ein Vergleich Thomas Wächtler 39221 Inhalt 1. Einführung 2. Architektur SQL Server 2005 1. SQLOS 2. Relational Engine 3. Protocol Layer 3. Services 1. Replication 2. Reporting

Mehr

Szenarien zu Hochverfügbarkeit und Skalierung mit und ohne Oracle RAC. Alexander Scholz

Szenarien zu Hochverfügbarkeit und Skalierung mit und ohne Oracle RAC. Alexander Scholz Hochverfügbar und Skalierung mit und ohne RAC Szenarien zu Hochverfügbarkeit und Skalierung mit und ohne Oracle RAC Alexander Scholz Copyright its-people Alexander Scholz 1 Einleitung Hochverfügbarkeit

Mehr

Einbindung eines Buchungs- und Ticketingsystems in eine bestehende Anwendungslandschaft

Einbindung eines Buchungs- und Ticketingsystems in eine bestehende Anwendungslandschaft Einbindung eines Buchungs- und Ticketingsystems in eine bestehende Anwendungslandschaft Harald Lange sd&m Lübecker Str. 1 22087 Hamburg harald.lange@sdm.de Abstract: Mit der Einführung eines Buchungs-

Mehr

White Paper. Embedded Treiberframework. Einführung

White Paper. Embedded Treiberframework. Einführung Embedded Treiberframework Einführung White Paper Dieses White Paper beschreibt die Architektur einer Laufzeitumgebung für Gerätetreiber im embedded Umfeld. Dieses Treiberframework ist dabei auf jede embedded

Mehr

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. WebSphere Application Server Teil 4

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. WebSphere Application Server Teil 4 UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 WebSphere Application Server Teil 4 Leistungsverhalten el0100 copyright W. G. Spruth,

Mehr

Business Process Execution Language. Christian Vollmer Oliver Garbe

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

Mehr

1 Einleitung. 1.1 Caching von Webanwendungen. 1.1.1 Clientseites Caching

1 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

Mehr

Ein Auszug aus... Studie. Content Management Systeme im Vergleich. Empfehlungen und Entscheidungshilfen für Unternehmensbereiche

Ein Auszug aus... Studie. Content Management Systeme im Vergleich. Empfehlungen und Entscheidungshilfen für Unternehmensbereiche Ein Auszug aus... Studie Content Management Systeme im Vergleich Empfehlungen und Entscheidungshilfen für Unternehmensbereiche Die komplette Studie ist bei amazon.de käuflich zu erwerben. Inhaltsverzeichnis

Mehr

TECHNISCHE PRODUKTINFORMATION CARUSO

TECHNISCHE PRODUKTINFORMATION CARUSO 1111 TECHNISCHE PRODUKTINFORMATION CARUSO TECHNISCHE PRODUKTINFORMATION Seite 0/7 Inhalt 1 Systemdefinition............2 2 Technische Details für den Betrieb von CARUSO......2 2.1 Webserver... 2 2.2 Java

Mehr

Lastenheft. Zielbestimmungen. Produkteinsatz. swp11-4. 3. Mai 2011. Franz Teichmann, Robert Röÿling swp11-4 3. Mai 2011

Lastenheft. Zielbestimmungen. Produkteinsatz. swp11-4. 3. Mai 2011. Franz Teichmann, Robert Röÿling swp11-4 3. Mai 2011 Lastenheft swp11-4 3. Mai 2011 Zielbestimmungen In der heutigen Geschäftswelt stehen mittelständische Unternehmen vor dem Dilemma, einerseits interne und externe Kommunikation in angemessener Weise gewährleisten

Mehr

Autonome Koordination verteilter. seine Bedeutung für E-Government

Autonome Koordination verteilter. seine Bedeutung für E-Government Autonome Koordination verteilter Services Ein neues Paradigma und seine Bedeutung für E-Government A.o. Univ. Prof. Dr. DI eva Kühn TU Wien, Institut für Computersprachen Space Based Computing Group 1040

Mehr

Entwurfsmuster (Design Pattern) ETIS SS05

Entwurfsmuster (Design Pattern) ETIS SS05 Entwurfsmuster (Design Pattern) ETIS SS05 Gliederung Motivation Pattern allgemein Proxy-Pattern Zusammenfassung 2 Motivation I Wie gut sind eure Programme strukturiert? Wartbarkeit? - Verständlichkeit

Mehr

Softwaretechnik (Medieninformatik) Überblick: 6. Objektorientiertes Design

Softwaretechnik (Medieninformatik) Überblick: 6. Objektorientiertes Design Softwaretechnik (Medieninformatik) Überblick: 6.1 Einleitung 6.2 Verfeinerung des Klassenmodells 6.3 Sequenzdiagramme 6.4 Umsetzung der Analysekonstrukte in das Design 6.5 Fallstudie 6.6 Software Kontrakte

Mehr

Inhaltsverzeichnis. Daniel Liebhart, Guido Schmutz, Marcel Lattmann, Markus Heinisch, Michael Könings, Mischa Kölliker, Perry Pakull, Peter Welkenbach

Inhaltsverzeichnis. Daniel Liebhart, Guido Schmutz, Marcel Lattmann, Markus Heinisch, Michael Könings, Mischa Kölliker, Perry Pakull, Peter Welkenbach sverzeichnis Daniel Liebhart, Guido Schmutz, Marcel Lattmann, Markus Heinisch, Michael Könings, Mischa Kölliker, Perry Pakull, Peter Welkenbach Integration Architecture Blueprint Leitfaden zur Konstruktion

Mehr

Guten Tag! CampusSource. Die CSE Integration Platform. CampusSource Engine. Christof Pohl Softwareentwicklung Medienzentrum Universität Dortmund

Guten Tag! CampusSource. Die CSE Integration Platform. CampusSource Engine. Christof Pohl Softwareentwicklung Medienzentrum Universität Dortmund Engine Die CSE Integration Platform Guten Tag! Christof Pohl Softwareentwicklung Medienzentrum Universität Dortmund Integriertes Informationsmanagement mit der Engine - A2A vs. EBI Folie 2 Integration

Mehr

OSS/J als Basis für Enterprise Application Integration

OSS/J als Basis für Enterprise Application Integration OSS/J als Basis für Enterprise Application Integration Geschäftsprozessgesteuerte EAI im Telekommunikationsbereich r A business of PwC Agenda OSS-Architekturen als Integrationsherausforderung OSS/J als

Mehr

EAI - Enterprise Application Integration

EAI - Enterprise Application Integration EAI - Enterprise Application Integration Jutta Mülle WS 2005/2006 EAI - Folie 1 Überblick und Begriffsbildung Zusammenfassung und Ausblick hinweise EAI - Folie 2 Conclusion EAI Enterprise Application Integration

Mehr

Kundenanforderungen. Hochschule Luzern Technik & Architektur. Software Komponenten FS13. Gruppe 03 Horw, 24.05.2013

Kundenanforderungen. Hochschule Luzern Technik & Architektur. Software Komponenten FS13. Gruppe 03 Horw, 24.05.2013 Software Komponenten FS13 Gruppe 03 Horw, 24.05.2013 Bontekoe Christian Estermann Michael Moor Simon Rohrer Felix Autoren Bontekoe Christian Studiengang Informatiker (Berufsbegleitend) Adresse Telefon

Mehr

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. Java Connection Architecture Teil 3

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. Java Connection Architecture Teil 3 UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 Java Connection Architecture Teil 3 CICS Transaction Gateway el0100 copyright W. G. Spruth,

Mehr

SE2-10-Entwurfsmuster-2 15

SE2-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

Mehr

VS12 Slide 1. Verteilte Systeme. Vorlesung 12 Sebastian Iwanowski FH Wedel

VS12 Slide 1. Verteilte Systeme. Vorlesung 12 Sebastian Iwanowski FH Wedel VS12 Slide 1 Verteilte Systeme Vorlesung 12 Sebastian Iwanowski FH Wedel Mögliche Plattformen für Web Services VS12 Slide 2 VS12 Slide 3 Java-Software für verteilte Systeme J2EE: Java 2 Enterprise Edition

Mehr

Einführung in die OPC-Technik

Einführung in die OPC-Technik Einführung in die OPC-Technik Was ist OPC? OPC, als Standartschnittstelle der Zukunft, steht für OLE for Process Control,und basiert auf dem Komponentenmodel der Firma Microsoft,dem Hersteller des Betriebssystems

Mehr

Stabilisierung von J2EE-Anwendungen durch APM

Stabilisierung von J2EE-Anwendungen durch APM Stabilisierung von J2EE-Anwendungen durch APM juergen.moors@de.quest.com Agenda Was ist Application Performance Management? Anwendungen Wo liegt das Problem? APM Best Practices APM Was ist APM? Was ist

Mehr

DBUS Interprozess-Kommunikation für Embedded-Plattformen

DBUS Interprozess-Kommunikation für Embedded-Plattformen DBUS Interprozess-Kommunikation für Embedded-Plattformen Andreas Schwarz Neratec Solutions AG Firmenprofil Neratec Solutions AG Produkt-Entwicklungen für kundenspezifische elektronische Produkte Produkte

Mehr

Leistung schafft Vertrauen

Leistung schafft Vertrauen SOA Hintergrund und Praxis visionäre Praxis oder praxisnahe Vision Toni Gasser Integration Services 27. Oktober 2010 Leistung schafft Vertrauen Private Banking Investment Banking Asset Management Seite

Mehr

Softwarewiederverwendung und Patterns

Softwarewiederverwendung und Patterns Begrifflichkeiten und Beschreibungssystematik Begriffe Literatur zu Patterns Übersicht über die behandelten Konzepte Beschreibungsschema 97 Begriffe Glossar Patterns (Muster) sind ein Mittel der Wiederverwendung

Mehr

Alexandru Arion, Benjamin Schöllhorn, Ingo Reese, Jürgen Gebhard, Stefan Patsch, Stephan Frank

Alexandru Arion, Benjamin Schöllhorn, Ingo Reese, Jürgen Gebhard, Stefan Patsch, Stephan Frank Message Broker (MB) Alexandru Arion, Benjamin Schöllhorn, Ingo Reese, Jürgen Gebhard, Stefan Patsch, Stephan Frank Programmierung verteilter Systeme Lab Institut für Informatik Universität Augsburg Universitätsstraße

Mehr

Diplomarbeit von Lars Gohlke. University of Applied Sciences Brandenburg

Diplomarbeit von Lars Gohlke. University of Applied Sciences Brandenburg Diplomarbeit von Lars Gohlke University of Applied Sciences Brandenburg Inhalt Motivation Skype SOA in 5 Schritten Anwendung + Demo Seite 2 Motivation Kommunikation einfach - schnell preiswert - verläßlich

Mehr

Zustandsgebundene Webservices

Zustandsgebundene Webservices Zustandsgebundene Webservices Präsentation ausgewählter Problemstellungen der Informatik Markus Oertel oer@uni-paderborn.de Universität Paderborn 25. September 2005 Zustandsgebundene Webservices Seite

Mehr

Integrating Architecture

Integrating Architecture Integrating Architecture Apps for the Enterprise Ein einheitliches Modulsystem für verteilte Unternehmensanwendungen Vorstellung und Einführung Ein beliebiger Zeitpunkt in einem beliebigen Unternehmen

Mehr

Dipl. Inf. Ali M. Akbarian

Dipl. Inf. Ali M. Akbarian Dipl. Inf. Ali M. Akbarian 2012 Einführung Globalisierung, Innovation und Kundenzufriedenheit sind auch in Zukunft die wichtigsten Herausforderungen der Unternehmen. Diese Herausforderungen verlangen:

Mehr

Integration Services - Dienstarchitektur

Integration Services - Dienstarchitektur Integration Services - Dienstarchitektur Integration Services - Dienstarchitektur Dieser Artikel solle dabei unterstützen, Integration Services in Microsoft SQL Server be sser zu verstehen und damit die

Mehr

Software Engineering II (IB) Serviceorientierte Architektur

Software Engineering II (IB) Serviceorientierte Architektur Serviceorientierte Architektur Prof. Dr. Oliver Braun Fakultät für Informatik und Mathematik Hochschule München SS 2015 Webservices Ziel: flexible programmatische Zusammenarbeit zwischen Servern Bereitstellung

Mehr

Man liest sich: POP3/IMAP

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

Mehr

Effizientes Änderungsmanagement in Outsourcing- Projekten

Effizientes Änderungsmanagement in Outsourcing- Projekten Effizientes Änderungsmanagement in Outsourcing- Projekten Dr. Henning Sternkicker Rational Software IBM Deutschland GmbH Sittarder Straße 31 52078 Aachen henning.sternkicker@de.ibm.com Abstract: Es werden

Mehr

Oliver Olbrich Das ebxml Projekt Entstand 1999 in einer gemeinsamen Initiative von OASIS (Organisation for the Advancement of Structured Information Standards) und UN/CEAFACT (United Nations Center for

Mehr

Whitepaper Walkyre Enterprise Resource Manangement

Whitepaper Walkyre Enterprise Resource Manangement Whitepaper Walkyre Enterprise Resource Management Seite 1 Whitepaper Walkyre Enterprise Resource Manangement Stand 15.11.2004 Inhalt 1. Hinweis... 2 2. Grundsätzliches zur Funktionalität... 3 3. Der Walkyre-Client...

Mehr

Verteilte Systeme - 1. Übung

Verteilte Systeme - 1. Übung Verteilte Systeme - 1. Übung Dr. Jens Brandt Sommersemester 2011 1. Rechnerverbünde Kommunikationsverbund: Beispiele: E-Mail (SMTP, POP/IMAP), Instant Messaging (XMPP, IRC, ICQ,...), Newsgroups (NNTP)

Mehr

Lightweight Java in der Automatisierungstechnik

Lightweight Java in der Automatisierungstechnik Lightweight Java in der Automatisierungstechnik Erfahrungen aus dem Anlagenbau Dr. Markus Eiglsperger eig@zuehlke.com Business Driver im Anlagenbau Kosten Modularisierung Vernetzung Agilität Paradigmenwechsel

Mehr

RAID. Name: Artur Neumann

RAID. Name: Artur Neumann Name: Inhaltsverzeichnis 1 Was ist RAID 3 1.1 RAID-Level... 3 2 Wozu RAID 3 3 Wie werden RAID Gruppen verwaltet 3 3.1 Software RAID... 3 3.2 Hardware RAID... 4 4 Die Verschiedenen RAID-Level 4 4.1 RAID

Mehr

SAP Support On Demand - IBMs kombiniertes Service-Angebot für SAP Hosting und SAP Application Management Services (AMS)

SAP Support On Demand - IBMs kombiniertes Service-Angebot für SAP Hosting und SAP Application Management Services (AMS) (IGS) SAP Support On Demand - IBMs kombiniertes Service-Angebot für SAP Hosting und SAP Application Services (AMS) Martin Kadner, Product Manager SAP Hosting, GTS Klaus F. Kriesinger, Client Services Executive,

Mehr

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller 2002 131

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller 2002 131 Architekturen Von der DB basierten zur Multi-Tier Anwendung DB/CRM (C) J.M.Joller 2002 131 Lernziele Sie kennen Design und Architektur Patterns, welche beim Datenbankzugriff in verteilten Systemen verwendet

Mehr

Liste der Handbücher. Liste der Benutzerhandbücher von MEGA

Liste der Handbücher. Liste der Benutzerhandbücher von MEGA Liste der Handbücher Liste der Benutzerhandbücher von MEGA MEGA 2009 SP4 1. Ausgabe (Juni 2010) Die in diesem Dokument enthaltenen Informationen können jederzeit ohne vorherige Ankündigung geändert werden

Mehr

.NET-Networking 2 Windows Communication Foundation

.NET-Networking 2 Windows Communication Foundation .NET-Networking 2 Windows Communication Foundation Proseminar Objektorientiertes Programmieren mit.net und C# Fabian Raab Institut für Informatik Software & Systems Engineering Agenda Grundproblem Bestandteile

Mehr

SOAP Simple Object Access Protocol

SOAP Simple Object Access Protocol Informatikseminar Tobias Briel Überblick 1. Einführung - was ist? 2. Middlewaretechnologie 3. Aufbau von Nachrichten 4. Vergleiche 5. Beispielanwendung 6. Zusammenfassung 1 Einführung was ist Soap? neue

Mehr

ENTWICKLUNGS- UND LAUFZEITUMGEBUNG DER CSE: ECLIPSE UND JBOSS. Piotr Kasprzak

ENTWICKLUNGS- UND LAUFZEITUMGEBUNG DER CSE: ECLIPSE UND JBOSS. Piotr Kasprzak ENTWICKLUNGS- UND LAUFZEITUMGEBUNG DER CSE: ECLIPSE UND JBOSS Piotr Kasprzak Agenda Laufzeitumgebung Java EE (J2EE) Motivation APIs / Technologien JBoss Entwicklungsumgebung Eclipse Ausblick Java EE -

Mehr

Musterlösung Übungsblatt 1 Netzprogrammierung WS 05/06

Musterlösung Übungsblatt 1 Netzprogrammierung WS 05/06 Musterlösung Übungsblatt 1 Netzprogrammierung WS 05/06 Block Verteilte Systeme und Middleware 1. Beschreiben Sie die Entwicklung verteilter Systeme von einer Zentralisierung bis zu Peer-to-Peer. Nicht

Mehr

Synchronisations -Assistent 2.6

Synchronisations -Assistent 2.6 TimePunch Synchronisations -Assistent 2.6 Benutzerhandbuch 22.10.2014 TimePunch KG, Wormser Str. 37, 68642 Bürstadt Dokumenten Information: Dokumenten-Name Benutzerhandbuch, Synchronisations-Assistent

Mehr

CORBA-Konzept. Ziele. Common Object Request Broker Architecture CORBA. Plattformunabhängige Kommunikation Transparente Verteilung von Objekten

CORBA-Konzept. Ziele. Common Object Request Broker Architecture CORBA. Plattformunabhängige Kommunikation Transparente Verteilung von Objekten CORBA-Konzept Ziele Common Object Request Broker Architecture CORBA Plattformunabhängige Kommunikation Transparente Verteilung von Objekten CORBA-Konzept Object Management Group Spezifiziert den CORBA-Standard

Mehr

Enterprise Java Beans Einführung

Enterprise Java Beans Einführung Enterprise Java Beans Einführung Vorlesung 8 Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht EJBs im JEE Umfeld Verschiedene Typen von EJBs Von der Javaklasse

Mehr

Service-Orientierte Architekturen

Service-Orientierte Architekturen Hochschule Bonn-Rhein-Sieg Service-Orientierte Architekturen Kapitel 2: Einführung in Service-Orientierte Architekturen Vorlesung im Masterstudiengang Informatik Sommersemester 2010 Prof. Dr. Sascha Alda

Mehr

WI EDI Solution. Stand 17.02.2012

WI EDI Solution. Stand 17.02.2012 WI EDI Solution Stand 17.02.2012 WIAG Überblick 2011 - SAP, SAP BW, SAP SEM/BPS, SAP BPC, SAP R/3, ABAP, Netweaver sind eingetragene Warenzeichen der SAP AG, Walldorf Folie 1 Inhalt Was ist WIEDIS? IDOC

Mehr

Seminar Business Process Management und Workflow-Technologie: Grundlagen, Produkte, Forschung

Seminar Business Process Management und Workflow-Technologie: Grundlagen, Produkte, Forschung IBM WebSphere Process Server Seminar Business Process Management und Workflow-Technologie: Grundlagen, Produkte, Forschung AGENDA 1. Überblick 2. WebSphere Process Server 3. Komponenten 4. Präsentation

Mehr

SOA goes real Service-orientierte Architekturen erfolgreich planen und einführen

SOA goes real Service-orientierte Architekturen erfolgreich planen und einführen Daniel Liebhart SOA goes real Service-orientierte Architekturen erfolgreich planen und einführen ISBN-10: 3-446-41088-0 ISBN-13: 978-3-446-41088-6 Inhaltsverzeichnis Weitere Informationen oder Bestellungen

Mehr

Softwaretool Data Delivery Designer

Softwaretool Data Delivery Designer Softwaretool Data Delivery Designer 1. Einführung 1.1 Ausgangslage In Unternehmen existieren verschiedene und häufig sehr heterogene Informationssysteme die durch unterschiedliche Softwarelösungen verwaltet

Mehr

Übungen zur Softwaretechnik

Ü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 1 17. Oktober 2002 www4.in.tum.de/~rumpe/se

Mehr

Studienprojekt HP-MOM

Studienprojekt HP-MOM Institute of Parallel and Distributed Systems () Universitätsstraße 38 D-70569 Stuttgart Studienprojekt HP-MOM High Performance Message Oriented Middleware 23. Januar 2013 Kurt Rothermel, Frank Dürr, Patrick

Mehr

Die wahre Entdeckung besteht nicht darin, Neuland zu finden, sondern die Dinge mit neuen Augen zu sehen. Marcel Proust

Die wahre Entdeckung besteht nicht darin, Neuland zu finden, sondern die Dinge mit neuen Augen zu sehen. Marcel Proust Dynamische Rollen Dreh- und Angelpunkt von perbit.insight ist ein intuitiv bedienbares HR Solution Center. Hier stehen alle personalwirtschaftlichen Anwendungen zusammengeführt unter einer einheitlichen

Mehr

NOCTUA by init.at DAS FLEXIBLE MONITORING WEBFRONTEND

NOCTUA by init.at DAS FLEXIBLE MONITORING WEBFRONTEND NOCTUA by init.at DAS FLEXIBLE MONITORING WEBFRONTEND init.at informationstechnologie GmbH - Tannhäuserplatz 2 - A-1150 Wien - www.init.at Dieses Dokument und alle Teile von ihm bilden ein geistiges Eigentum

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

ALM mit Visual Studio Online. Philip Gossweiler Noser Engineering AG

ALM mit Visual Studio Online. Philip Gossweiler Noser Engineering AG ALM mit Visual Studio Online Philip Gossweiler Noser Engineering AG Was ist Visual Studio Online? Visual Studio Online hiess bis November 2013 Team Foundation Service Kernstück von Visual Studio Online

Mehr

Web 2.0 Architekturen und Frameworks

Web 2.0 Architekturen und Frameworks Web 2.0 Architekturen und Frameworks codecentric GmbH Mirko Novakovic codecentric GmbH Quality Technische Qualitätssicherung in Software-Projekten mit Fokus auf Performance, Verfügbarkeit und Wartbarkeit

Mehr

SAP NetWeaver Gateway. Connectivity@SNAP 2013

SAP 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

Mehr

8.4 Überblick und Vergleich weiterer ERP-Systeme. G Oracle Applications 11 G PeopleSoft 7 G J.D. Edwards One World G BaanERP

8.4 Überblick und Vergleich weiterer ERP-Systeme. G Oracle Applications 11 G PeopleSoft 7 G J.D. Edwards One World G BaanERP 8.4 Überblick und Vergleich weiterer ERP-Systeme G Oracle Applications 11 G PeopleSoft 7 G J.D. Edwards One World G BaanERP Kapitel 8: ERP-Einführung 32 Architektur von Oracle Applications 11 G Logische

Mehr

Sicherheitsaspekte in Service Orientierten Architekturen. Eike Falkenberg Sommersemester 2006 Anwendungen I

Sicherheitsaspekte in Service Orientierten Architekturen. Eike Falkenberg Sommersemester 2006 Anwendungen I Sicherheitsaspekte in Service Orientierten Architekturen Eike Falkenberg Sommersemester 2006 Anwendungen I Agenda SOA? Web Services? Sicherheitsrisiko Web Services Web Services & Sicherheit Sichere SOAs

Mehr

Maximo/SCCD Integration Framework Spielplatz oder Minenfeld? Johann Rumpl, Geschäftsführer EAM Swiss GmbH 13.06.2013 Hotel Dolce Bad Nauheim, DE

Maximo/SCCD Integration Framework Spielplatz oder Minenfeld? Johann Rumpl, Geschäftsführer EAM Swiss GmbH 13.06.2013 Hotel Dolce Bad Nauheim, DE Maximo/SCCD Integration Framework Spielplatz oder Minenfeld? Johann Rumpl, Geschäftsführer EAM Swiss GmbH 13.06.2013 Hotel Dolce Bad Nauheim, DE EAM Swiss GmbH Eigenständiges Schweizer Unternehmen Tätig

Mehr

PROZESSE INTEGRIEREN leicht gemacht EFFIZIENTE PROZESSE

PROZESSE INTEGRIEREN leicht gemacht EFFIZIENTE PROZESSE PROZESSE INTEGRIEREN leicht gemacht DURCH TransConnect Geschäftsprozesse ableiten mit der Universal Worklist (UWL) Integrationsszenarien effektiver verwalten und transportieren Optimierte Personalverwaltung

Mehr

3. Konzepte der objektorientierten Programmierung

3. Konzepte der objektorientierten Programmierung 3. Konzepte der objektorientierten Programmierung 3.1 Basiskonzepte 3.2 Generalisierung / Spezialisierung 3.3 Aggregation 3.4 Assoziation 3.5 Nachrichten 3.6 Polymorphismus 3. Konzepte der Objektorientierung

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

Das Interceptor Muster

Das Interceptor Muster Das Interceptor Muster Implementierung des Interceptor Musters basierend auf OSGi and Friends Benjamin Friedrich Hochschule für Technik und Wirtschaft des Saarlandes Praktische Informatik - Entwurfsmuster

Mehr

Inhaltsverzeichnis. xiii

Inhaltsverzeichnis. xiii Inhaltsverzeichnis 1 Einleitung... 1 1.1 Ausgangslage und Zielsetzung des Buches...2 1.2 Was ist Software-Architektur?...8 1.3 Leser-Leitfaden... 11 1.3.1 Buchaufbau... 11 1.3.2 Zielpublikum... 15 1.3.3

Mehr

Beispiele, um das Spektrum an Szenarien aufzuzeigen, die mit dem extra Standard möglich sind

Beispiele, um das Spektrum an Szenarien aufzuzeigen, die mit dem extra Standard möglich sind Beispiele, um das Spektrum an Szenarien aufzuzeigen, die mit dem Standard möglich sind Beispiel 1: Beispiel 2: Beispiel 3: Beispiel 4: im Dialogbetrieb im einfachen Sendebetrieb im Holbetrieb ohne Bestätigung

Mehr

Prof. Dr.-Ing. Dagmar Meyer Architekturen verteilter SW-Systeme 5 SYNCHRONISATION

Prof. Dr.-Ing. Dagmar Meyer Architekturen verteilter SW-Systeme 5 SYNCHRONISATION Prof. Dr.-Ing. Dagmar Meyer 5 SYNCHRONISATION Warum braucht man Synchronisation? Ausgangssituation Prozesse müssen sich koordinieren / synchronisieren, z. B. beim Zugriff auf gemeinsame Ressourcen. Alle

Mehr

Prinzipiell wird bei IP-basierenden VPNs zwischen zwei unterschiedlichen Ansätzen unterschieden:

Prinzipiell wird bei IP-basierenden VPNs zwischen zwei unterschiedlichen Ansätzen unterschieden: Abkürzung für "Virtual Private Network" ein VPN ist ein Netzwerk bestehend aus virtuellen Verbindungen (z.b. Internet), über die nicht öffentliche bzw. firmeninterne Daten sicher übertragen werden. Die

Mehr

ITSM Infoday 2013. Mit Business Process Service Management zu mehr Flexibilität, Transparenz und Stabilität. Peter Brückler

ITSM Infoday 2013. Mit Business Process Service Management zu mehr Flexibilität, Transparenz und Stabilität. Peter Brückler ITSM Infoday 2013 Mit Business Process Management zu mehr Flexibilität, Transparenz und Stabilität Peter Brückler Copyright 2013 NTT DATA EMEA Ltd. Agenda Der Druck auf Unternehmen Business Process Management

Mehr

Middleware. Host. Versuch einer Einleitung. dumme Terminals stellen Ausgaben dar und nehmen Eingaben an

Middleware. Host. Versuch einer Einleitung. dumme Terminals stellen Ausgaben dar und nehmen Eingaben an Middleware Versuch einer Einleitung Host dumme Terminals stellen Ausgaben dar und nehmen Eingaben an Mainframe enthält vollständige Anwendung Typ. COBOL, C Mainframe contd.! Nachteile! Mainframe ist teuer

Mehr

NetWaever-Komponenten

NetWaever-Komponenten NetWaever-Komponenten Bremerhaven 07.05.2006 T4T Bremerhaven 1 Inhaltsverzeichnis 1. People Integration 2. Information Integration 3. Process Integration 4. Solution Management T4T Bremerhaven 2 Kapitel

Mehr

Hochschule für Angewandte Wissenschaften München Fakultät Informatik und Mathematik

Hochschule für Angewandte Wissenschaften München Fakultät Informatik und Mathematik Hochschule für Angewandte Wissenschaften München Fakultät Informatik und Mathematik Verteilte Systeme (Masterstudiengänge) Wintersemester 2014/2015 München, September 2014 Prof. Dr. Peter Mandl Inhalt

Mehr

Abstrakt zum Vortrag im Oberseminar. Graphdatenbanken. Gero Kraus HTWK Leipzig 14. Juli 2015

Abstrakt zum Vortrag im Oberseminar. Graphdatenbanken. Gero Kraus HTWK Leipzig 14. Juli 2015 Abstrakt zum Vortrag im Oberseminar Graphdatenbanken Gero Kraus HTWK Leipzig 14. Juli 2015 1 Motivation Zur Darstellung komplexer Beziehungen bzw. Graphen sind sowohl relationale als auch NoSQL-Datenbanken

Mehr

Ihre PRAXIS Software AG. a t o s. - nalytisch. - aktisch. - perativ. - trategisch. Unser atos Konzept für Ihren Erfolg

Ihre PRAXIS Software AG. a t o s. - nalytisch. - aktisch. - perativ. - trategisch. Unser atos Konzept für Ihren Erfolg Ihre PRAXIS Software AG a t o s - nalytisch - aktisch - perativ - trategisch Unser atos Konzept für Ihren Erfolg Das atos Konzept macht geschäftskritische Daten und Abläufe transparent ermöglicht einfache

Mehr

09.06.2003 André Maurer andre@maurer.name www.andre.maurer.name Wirtschaftsinformatik FH 3.5 Fachhochschule Solothurn, Olten

09.06.2003 André Maurer andre@maurer.name www.andre.maurer.name Wirtschaftsinformatik FH 3.5 Fachhochschule Solothurn, Olten Aktuelle Themen der Wirtschaftsinformatik Zusammenfassung 09.06.2003 André Maurer andre@maurer.name www.andre.maurer.name Wirtschaftsinformatik FH 3.5 Fachhochschule Solothurn, Olten 1 Serverseitige Webprogrammierung

Mehr