Architekturen interoperabler Systeme für raumzeitliche Prozesse

Slides:



Advertisements
Ähnliche Präsentationen
Arbeitsablauf basierte Grid Anwendungen
Advertisements

Persistente Domänenmodelle mit JPA 2.0 und Bean Validation
Programmieren im Großen von Markus Schmidt und Benno Kröger.
Dokumentation von Software Architekturen unter Berücksichtigung von IEEE 1471 Vortrag an der FH Regensburg © Dr. Ulrich Margull, 2004 Dr. Ulrich.
Rollenbasierter Entwurf am Beispiel eines benutzeradaptierbaren Hyperbooks Institut für Informatik Rechnergestützte Wissensverarbeitung Universität Hannover.
PC-Cluster.
NATURAL Web-Integration 1 / 27/28-Feb-98 TST NATURAL Web-Integration Arbeitskreis NATURAL Süd Theo Straeten SAG Systemhaus GmbH Technologieberater Stuttgart.
Konzeption und prototypische Implementierung eines zentralen Informationssystems für Systemmanagement Motivation Oft wird es schwierig, die benötigten.
On a Buzzword: Hierachical Structure David Parnas.
Web Services und Workflow-Steuerung
Pascal Busch, WWI00B – Vergleich CORBA vs. Web Services hinsichtlich der Applikationsintegration Web Services vs CORBA Web Services vs CORBA Ein Vergleich.
ISO - Normen Inhalt Qualität im SE Der ISO 9000-Ansatz
Komponentenbasierter Taschenrechner mit CORBA
Cassey - Common Answer Set Evaluation sYstem Jean Gressmann Benjamin Kaufmann Robert Lenk.
Andreas Peters Seminar: „Location Based Services“ SS 2006
Einführungssitzung Architekturen interoperabler Systeme für raumzeitliche Prozesse Einführungssitzung Lars Bernard, Udo Einspanier,
Rational Unified Process (RUP) - Definitionen
XML in Client-Server und GRID Architektur
JAVA RMI.
Explizite und editierbare Metainformationen für Software Muster.
Strukturänderungen Verteilte Anwendungen Wintersemester 06/07 © Wolfgang Schönfeld.
Projekt Web Engineering
Fachgebiet Software Engineering Übersicht © Albert Zündorf, Kassel University Software Engineering I m Vorlesung im Wintersemester 2010/11 m.
Überlegungen zur Architektur eines Fachinformations-Netzwerkes am Beispiel des CeGIM Mehrwert ist es nicht nur, Daten von ihren Quellen zu den Nutzern.
Langzeitarchivierung und Metadaten. NAA Preservation Strategy Link: ml.
Forschungszentrum Informatik, Karlsruhe Objektorientierte Systeme unter der Lupe Markus Bauer Oliver Ciupke.
Block 2Interoperabilität für Geoinformationen Seminar Interoperabilität für Geoinformationen Grundlegendes zu Software-Architekturen Lars Bernard.
Was umfaßt die CORBA Core Spezifikation? Welche zusätzlichen Komponenten muß ein ORB Produkt beinhalten? Core: CORBA Objekt Modell CORBA Architektur OMG.
Don`t make me think! A Common Sense Approach to Web Usability
Software Architektur III
Webservice Grundlagen
Grundlagen vernetzt-kooperativer Planungsprozesse für Komplettbau mit Stahlbau, Holzbau, Metallbau und Glasbau Projekt im DFG-SPP 1103 Bergische Universität.
Mit 3 Schichte zum Erfolg
Aichinger Christian, Strasser Jürgen. Inhalt JSF EJB Praxis - Integration.
Institut für Informatik III, Universität Bonn, c/o 2001, Präsentation Agenten, Objekte, Komponenten - Agenten, Objekte, Komponenten - ein Paradigma-Vergleich.
Hauptseminar Web Engineering – Semantic Web Dominik Pretzsch.
Welchen Problemen ist man bei heterogener, verteilter Programmierung ausgesetzt? Hardware: nicht einheitliche, inkompatible Systeme, verschiedene Leistungsfähigkeit.
Beschreiben Sie das Szenario wenn ein ORB einen Server aktiviert und eine Objektimplementation aufruft. Activate Server impl_is_ready Activate Object (GetID.
UML-Kurzüberblick Peter Brusten.
Management- und Web Services- Architekturen
Einführung in Web Services Web Services in der Praxis
Untersuchungen zur Erstellung eines
Coordinating Conjunctions Why we need them & how to use them deutschdrang.com.
AP3 – Informationsmodell ByMedConnect Archetypen Hans Demski Helmholtz Zentrum München Arbeitsgruppe MEDIS Institut für Medizinsche und Biologische Bildgebung.
Seite 1 © 2007 Dr. Schwaiger Roland VP SW-Technologien WS 2007/2008 VP Softwaretechnologien WS2007/2008 SAP GUI Pattern und Componentry Dr.
Vortrag - Diplomarbeiten (HS I)
Microsoft.NET InfoPoint 8. Juni 2005 Stefan Bühler.
ROS – Robot Operating System
Kurze Rekapitulation aus der Einführungsvorlesung Stunde VII: Planen und Realisieren Manfred Thaller, Universität zu Köln Köln 20. Oktober 2011.
Welcome to Web Services & Grid Computing Jens Mache
Middleware in Java vieweg 2005 © Steffen Heinzl, Markus Mathes Kapitel 1: Architektur verteilter Systeme.
Web Services als Remote Content Provider in Portalumgebungen Vorstellung und Diskussion des Themas Präsentation des Prototypen Konzeption und prototypische.
Web Services Spezielle Methoden der SWT Liste V – WS 2008/2009 Christian Boryczewski.
Rules of Play - Game Design Fundamentals by Katie Salen and Eric Zimmerman Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung.
1 Konica Minolta IT Solutions Prinzip Partnerschaft MANAGED MONITORING ÜBERWACHJUNG DER SERVERINFRASTRUKTUR UND ANWENDUNGEN DIREKT AUS DER CLOUD.
Gregor Graf Oracle Portal (Part of the Oracle Application Server 9i) Gregor Graf (2001,2002)
Semi-automatische Komposition von Dienstbenutzerschnittstellen auf mehreren Abstraktionsebenen Christian Jäckel Universität des Saarlandes Bachelor.
SE 2010, Paderborn Produktlinien-Engineering im SOA-Kontext.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Entwurf Dr. Wolfgang Wörndl
© 2012 TravelTainment Einführung in Enterprise JavaBeans Seminarvortrag von Ralf Penners Folie 1 von 34.
1 Lutz Ullrich SOA – serviceorientierte Architektur SOA – Was ist das?
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Einflußreiche Systeme Dr. Wolfgang Wörndl.
Vergleich verschiedener Kommunikationsinfrastrukturen in Enterprise Information Systems Ben Mainz Seminar am Lehrstuhl für Software Engineering RWTH Aachen.
Webservices SOAP und REST Nicole Fronhofs 1. Betreuer: Prof. Dr. Volker Sander 2. Betreuer: B. Sc. Sebastian Olscher.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Web Services Dr. Wolfgang Wörndl
WebServices Vortrag zur Diplomarbeit WebServices Analyse und Einsatz von Thomas Graf FH Regensburg
SE: Systementwurf, © Till Hänisch 2003 Systemarchitektur nach Sommerville, Software Engineering, Addison Wesley.
Apache Camel Christian Schneider
Systemanalyse BA Heidenheim 2002.
Investitionen sichern - wachse mit Forms in die neue Welt
 Präsentation transkript:

Architekturen interoperabler Systeme für raumzeitliche Prozesse Einige Grundlagen 28.10. 2002 Bernard Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

Grundlegendes zu Software-Architekturen Struktur Motivation Ursprung und Begriffsdefinition Design und Architekturen Systemarchitekturen – Beispiel Schichtenmodell Patterns – Beispiele Frameworks Fazit Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

1. Motivation – Wozu Architekturen ? hierzu, nicht unbedingt.... Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

1. Motivation – Wozu Architekturen ? hierzu bestimmt ! Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

1. Motivation – Wozu Architekturen ? Überblick: Strukturierung komplexer Systeme ( Baupläne) Kommunikation komplexer Systeme Koordination Kostenschätzung... Kostenreduzierung, z.B. durch Wiederverwendung ( Standard-Fenster) Gute Entwürfe recyclen ( Grundrisse)... Der Architekt weiß, wie es geht ! .... Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

2. Software-Architektur – Ursprung: In programming, the term architecture was first used to mean a description of a computer system that applied equally to more than one actual system. In 1969, Fred Brooks and Ken Iverson called architecture the "conceptual structure of a computer...as seen by the programmer"...."Where architecture tells what happens, implementation tells how it is made to happen." (Paul Clements, Software Engineering Institute; http://www.sei.cmu.edu/architecture/essays.html) Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

2. Software-Architektur – Definitionen. There is no standard, universally-accepted definition of the term, for software architecture is a field in its infancy, although its roots run deep in software engineering. (Software Engineering Institute / Carnegie Mellon University; http://www.sei.cmu.edu/architecture/definitions.html) Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

2. Software-Architektur – Definitionen: An architecture is the set of significant decisions about the organization of a software system, the selection of the structural elements and their interfaces by which the system is composed, together with their behavior as specified in the collaborations among those elements, the composition of these structural and behavioral elements into progressively larger subsystems, and the architectural style that guides this organization - these elements and their interfaces, their collaborations, and their composition. (Booch, Rumbaugh, Jacobson (1999): The UML Modeling Language User Guide, Addison-Wesley).  das erklärt auch die einzelnen UML Diagrammtypen.... Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

2. Software-Architektur – Definitionen: The software architecture of a program or computing system is the structure or structures of the system, which comprise software components, the externally visible properties of those components, and the relationships among them (Bass, Clements, Kazman (1997): Software Architecture in Practice, Addison-Wesley). Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

3. Design und Architekturen: Der Schritt der Systemanalyse (z.B. domain analysis,...Literatur: z.B. Booch et al. (1999); Östereich (97-01)) mit dem elementaren Ziel: Systemanforderungen ermitteln und dazu passende Systemform finden wird hier überschritten... Ein weiteres grundlegendes Ziel des Software-Engineer ist die Wiederverwendung bestehender Konzepte/Komponenten bzw. Wiederverwendbarkeit der zu entwickelnden Komponenten Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

3. Design und Architekturen: Techniken zur Wiederverwendung bzw. zum Teilen (sharing) eines Ansatzes über mehrere Projekte (nach Szyperski 1999): Konsistenz teilen: Programmiersprachen Lösungsfragmente teilen: Programm-Bibliotheken Absprachen teilen: Schnittstellen Interaktions-Architekturen teilen: Pattern Teilarchitekturen teilen: Frameworks Gesamtstruktur teilen: Systemarchitektur Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

4. Systemarchitekturen - Schichtenmodelle Beispiel Java: Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

4. Systemarchitekturen - Schichtenmodelle Beispiel 2-tier; client/server (seit den 80‘ern): Client: User Interface + Prozessmanagement Server: DBMS + Prozessmanagement Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

4. Systemarchitekturen - Schichtenmodelle Beispiel 3-tier; client/application-server/data-server(seit den 90‘ern): Client: User Interface Application Server: Prozessmanagement (Prozesslogik) Data Server: DBMS Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

4. Systemarchitekturen - Schichtenmodelle Beispiel ISO/OSI Referenzmodell für Netzwerkanwendungen: Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

4. Systemarchitekturen – Service based architecture Dynamische Systemintegration program to program communictaion Zusammenfügen von Anwendungskomponenten zur Laufzeit (z.B. freie Wahl bei der Inanspruchnahme kostpflichtiger Angebote im WWW) Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

4. Systemarchitekturen – Service based architecture Implementierung eines (standardisierten) Interfaces, das eine Menge von Operationen über ein Netzwerk verfügbar macht. Das Interface „versteckt“ Implementierungsdetails, so dass es unabhängig von der verwendeten Hard- und Softwareplattform genutzt werden kann (cross technology implementation). Wird durch eine service description beschrieben, welche alle Informationen enthält, die zur Interaktion mit dem Service erforderlich sind. Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

4. Systemarchitekturen – Service based architecture (find-bind-publish) Basiert auf den Interaktionen dreier Rollen: 1. Service provider 2. Service registry 3. Service requestor Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

4. Schichtenmodelle – Eigenschaften: Ziel Abstraktion einzelner Schichten um diese austauschbar zu machen ( Interoperabilät): Beschreibung von Schnittstellen stricly layered versus non-strictly layered Grundlegendes Prinzip der heute verwendeten Middleware-Ansätze Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

4. Architekturelemente (mehrschichtigen Systemen) Mehrschichtige Systeme sind aus einer Vielzahl von Komponenten aufgebaut. Daraus ergeben sich unterschiedliche, immer wiederkehrende Anforderungen: Transparenz, plattformneutrale Kommunikation Auffinden und Aktivierung von Komponenten Performance, Skalierbarkeit, Quality of Service  Für viele dieser Probleme gibt es daher Lösungsmuster (patterns) die sich in vielen Systemen/Middlewares wiederfinden. Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

5. Patterns – Kommunikationsmuster Sowohl die einzelnen Schichten als auch Komponenten innerhalb einer Schicht müssen durch Kommunikationsmechanismen verbunden werden Arten der Kommunikation: 1. Lokaler Server (native procedure call) 2. Synchroner RPC (Remote Procedure Call) 3. Asynchroner RPC 4. Message-basiert (Publish-Subscribe) Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

5. Patterns – Synchrone Kommunikation (S-RPC) Alle Komponenten sollten gleich angesprochen werden können, egal ob sie lokal oder verteilt sind Proxy-Pattern AbstractService +service() Client Proxy Service +service() -marshal() 1 1 +service() -unmarshal() Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

5. Patterns – Dynamischer Ablauf S-RPC Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

5. Patterns – Broker Wie lokalisiert man Komponenten? Wie initiiert man die Kommunikation? Proxy Proxy Broker 1 * message exchange message exchange +service() +service() +locate_service() -marshal() * 1 -marshal() +register_service() -unmarshal() -unmarshal() * * calls calls 1 1 Client Service +service() Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

5. Patterns – Dynamischer Ablauf Broker Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

5. Patterns – Asynchrone, zeitunabhängige Kommunikation A-RCP Probleme bei der synchronen Kommunikation: Clients müssen warten, bis das Ergebnis geliefert wird Clients müssen immer online und in Verbindung mit dem Server bleiben Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

5. Patterns – Publisher-Subscriber A-RCP Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

5. Patterns – Dynamischer Ablauf A-RCP  Mehr patterns - Folien von M. Stal: Effective Architectures for Distributed Object Computing Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

6. Frameworks - Eigenschaften fassen Patterns zu logischen Einheiten zusammen sind nicht nur abstrakte Konzepte sondern sind durch Implementierungen realisiert zielen meist auf einen speziellen Anwendungsbereich Bspe: Klassenbibliotheken, GUI-Toolkits, ... Systemarchitekturen bedienen sich eines oder mehrere frameworks Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

6. Frameworks - Eigenschaften white box framework Strukturierte Sammlung von Quelltexten Interoperabilität zur Kompilierzeit Implementierung transparent black box framework Strukturierte Sammlung von binären Entitäten (components) plug-and-play zur Laufzeit Implementierung unbekannt Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

Fazit Architekturen dienen: der Strukturierung, der Kommunikation von Designentscheidungen, des Systementwurfes, der Beschreibung der Interaktionen und Schnittstellen. Auf unterschiedlichen Granularitätsebenen finden sich mit höher werdender Granularität: Systemarchitekturen, Frameworks und Patterns Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse

Fazit In Architekturen finden sich wiederkehrende Muster (patterns) Frameworks erlauben die dynamische Konfiguration eines aus patterns aufgebauten Anwendungsgerüsts (toolbox) Systemearchitekturen beschreiben das Gesamtsystem, weit verbreitet sind multi-tier Architekturen  Abstraktion durch Schichten  Interoperabilität durch definierte Schnittstellen und Protokolle Grundlagen 28.10.2002 Architekturen interoperabler Systeme für raumzeitliche Prozesse