Verteilte Systeme & EAM

Vorlesung verteilte Systeme inkl. EAM, 4. Semeter Wirtschaftsinformatik

Vorlesung verteilte Systeme inkl. EAM, 4. Semeter Wirtschaftsinformatik


J. H.
Diese Lernkarten behandeln fortgeschrittene Themen aus dem Bereich der Informatik, insbesondere verteilte Systeme und Enterprise Architecture Management (EAM). Sie decken grundlegende Prinzipien, Komponenten, Architekturen und Frameworks ab, wie JavaEE, Enterprise JavaBeans und Java Server Faces. Die Karteikarten erklären auch verschiedene Architekturmuster, Schichtenarchitekturen und Analysemuster, sowie deren Vor- und Nachteile. Sie richten sich an Studierende und Fachleute, die ihr Verständnis von verteilten Systemen und EAM vertiefen möchten, um komplexe Softwarearchitekturen zu entwerfen und zu verwalten.
Karten
103
Lernende
1
Sprache
Deutsch
Kategorie
Informatik
Stufe
Universität
Erstellt / Aktualisiert
24.03.2014 / 02.06.2014

Lernkarten

Definition Service Orientierte Architektur

"SOA ist ein Paradigma für die Strukturierung und Nutzung verteilter Funktionalität, die von unterschiedlichen Besitzern verantwortet wird."

Nenne die Funktion und die Merkmale eines Enterprise Service Bus (ESB).

  • Funktion: Kommunikationsbus, über den Nachrichten ausgetauscht werden
  • Merkmale:
    • Standardisierung der ausgetauschten Nachrichten
    • Transformation von Datenformaten
    • Regelbasiertes Routing von Nachrichten

Nenne die drei Grundlagen des Webservices.

  • UDDI - Verzeichnisdienst
  • WSDL - Beschreibung der unterstützten Methoden
  • SOAP - Kommunikation

Was ist Enterprise Application Integration (EAI)?

Konzept zur unternehmenseweiten Integration der Geschäftsfunktionen entlang der Wertschöpfungskette. Ziel ist die integrierte Geschäftsabwicklung durch ein Netzwerk unternehmensinterner Applikationen.

EAI umfasst die Planung, die Methoden und die Software um Anwendungssysteme prozessorientiert zu integrieren.

Wo ist die Abgrenzung von EAI und SOA?

Im EAI müssen Applikationen nicht in Form von Services abgebildet werden. SOA geht also weiter und kann somit als Nachfolger verstanden werden.

Erkläre kurz EDA.

Event Driven Architecture; das Reagieren auf Ereignisse

Wie kommunizieren stark abhängige Komponenten und wie stark entkoppelte?

  • Stark abhängig: über Services
  • Stark entkoppelt: über Events

Welche 3 Arten von Prozesse gibt es in der ereignisgesteuerten Architektur?

Einfach, durchlaufend und komplex

Wo werden Ereignisse in der EDA analysiert?

In der Ereignis Verarbeitung

Für was steht ESP und was bedeutet es?

Event Stream Processing: Monitoring von Events und Analyse von Eventmustern

Was ist Cloud Computing?

"Cloud Computing" umschreibt den Ansatz, abstrahierte IT-Infrastrukturen dynamisch an den Bedarf angepasst über ein Netzwerk zur Verfügung zu stellen" (Knoll)

Welche drei Servicemodelle enthält Cloud-Computign?

  1. IaaS- Infrastructure as a Service
  2. PaaS - Platform as a Service
  3. SaaS - Software as a Service

Was ist die IaaS?

Die unterste Schicht im Cloud Computing.

Der Benutzer greift auf bestehende Dienste des Systems zu und verwaltet seine Recheninstanzen selbst.

Was ist dem Benutzer bei PaaS möglich?

Er entwickelt eine Anwendung und lädt diese in die Cloud, er bringt lediglich seine Programmlogik in die Cloud ein.

Keinen Zugriff auf die Recheninstanzen.

 

Was nutzt der Benutzer bei SaaS?

eine bestehende Applikation, die ihm die Cloud nach außen hin anbietet

Nenne 3 Gründe für die Softwarekrise.

  1. Unklare Anforderungen
  2. schnell wechselnde Technologie
  3. kein modellbasiertes Vorgehen

Wie kann die Qualität der Software grundlegend verbessert werden?

Verbesserter Widerverwendungsgrad von Komponenten ; Einführung von Entwicklungsprozessen und Strukturen in der Software

Was ist ein Muster?

Die Gesamtheit nicht signifikanter, besonderer Unterschiede

Was ist ein Framework?

Programmiergerüst

Wieviele Entwurfsmuster wurden in dem Buch "Design Patterns - Elements fo Reusable Object-Oriented Software", welches 1994 von Erich Gamma, Richard Helm, Ralfph Johnson und John Vlissides herausgebracht wurde, beschrieben?

Nenne drei Muster, die Keine Entwurfsmuster sind.

  1. Analysemuster
  2. Architekturmuster
  3. Idiome

In welche drei Klassen können Muster eingeteilt werden? (laut der Gang of Four)

  1. Erzeugende Muster
  2. Strukturelle Muster
  3. Verhaltensmuster

Beschreibe die Gliederung der Dokumentation der kanonischen Form.

  1. Name und Klassifikation
  2. Aufgabe und Absicht
  3. Auch bekannt als
  4. Motivation
  5. Anwendbarkeit
  6. Struktur
  7. Beteiligte
  8. Zusammenarbeit
  9. Konsequenzen
  10. Implementierung
  11. Code-Beispiel
  12. Bekannte Anwendungen
  13. Pattern mit Bezug zu diesem Pattern

Ein gutes Muster sollte...

  • Probleme lösen
  • erprobtes Konzept bieten
  • auf realen Designs basieren
  • über das Offensichtliche hinausgehen
  • den Benutzer in den Entwurfsprozess einbinden

Nenne ein Bespiel für ein erzeugendes Muster, dessen Verwendung und Vor- und Nachteile.

  • Abstract Factory (definierte Schnittstelle zur Erzeugung einer Familie von Objekten)
  • Verwendung
    • wenn ein System unabhängig von der Art der Erzeugung seiner Produkte arbeiten soll
    • ein System mit einer oder mehreren Produktfamilien konfiguriert werden soll
  • Vorteile
    • Konkrete Klassen werden isoliert
    • Der Austausch von Produktfamilien ist einfach
  • Nachteile
    • Hinzufügen neuer Produktarten ist erschwert

Nenne ein Bespiel für ein strukturelles Muster, dessen Verwendung und Vor- und Nachteile.

  • Kompositum (in einer abstrakten Klasse sowohl primitive Objekte als auch ihre Behälter zu präsentieren)
  • Verwendung
    • Implementierung von Teil-Ganzes-Hierarchie
    • Verbergen der Unterschiede zwischen einzelnen und zusammengesetzten Objekten
  • Vorteile
    • einheitliche Behandlung von Primitiven und Kompositionen
    • leichte Erweiterbarkeit um neue Blatt- oder Container-Klassen
  • Nachteile
    • ein zu allgemeiner Entwurf erschwert es, Kompositionen auf bestimmte Klassen zu beschränken

Nenne ein Bespiel für ein Verhaltensmuster, dessen Verwendung und Vor- und Nachteile.

  • Besucher (dient zum Kapseln von Operationen)
  • Verwendung
    • lagert Operationen in externe Besucherklassen aus. die zu besuchenden Klassen brauchen dann eine Schnittstelle zum Empfang eines Besuchers
    • ist dann gut, wenn viele unterschiedliche, nicht verwandte Operationen auf einer Objektstruktur realisiert werden
  • Vorteile
    • Neue Operationen lassen sich leicht durch die Definition neuer Besucher hinzufügen
    • Besucher können über mehrere Klassenhierarchien arbeiten
  • Nachteile
    • Neue Klassen konkreter Elemente erfordern Erweiterungen in allen Besuchern

Nenne ein Bespiel für ein Analysemuster und Besonderheiten von Analysemustern,

  • Besonderheiten: drei Klassen : Account, Entry und Accounting Transaction
  • Party (Generalisierung von Personen und Organisationen)

Was ist ein Analysemuster?

beschreibt bewährte und wiederverwendtbare Vorlagen zur Problemlösung ein einer Anwendungsdomäne.

Nenne ein Beispiel für ein Analysemuster.

Party - stellt Generalisierung von Personen und Organisationen her

Nenne zwei Klassifikationen der Architekturmuster.

  1. Chaos zur Struktur
    1. soll helfen die Vielzahl von Komponenten und Objekten eines Softwaresystems zu organisieren
  2. Verteilte Systeme
    1. unterstützt die Verwendung verteilter Ressourcen und Dienste in Netzwerken

Beschreibe das Architekturmuster Schichtenarchitektur und nenne die Vorteile.

  • Aspekte(können Funktionalitäten, Komponenten oder Klassen sein) werden einer Schicht zugeordnet
  • Vorteile:
  • Komplexität der Abhängigkeiten wird reduziert
  • geringe Kopplung und höhere Kohäsion

Nenne die drei typischen Schichten der Drei-Schichten-Architektur.

  • Präsentationsschicht
  • Logikschicht
  • Datenhaltungsschicht

Nenne und erläutere kurz die Akteure in dem Architekturmuster Model View Controller.

  • Modell
    • enthält dazustellende Daten, abhängig von Präsentation und Steuerung ("Beobachter")
  • Präsentation
    • Darstellung der Daten; Kennt die Steuerung und das Modell ("Kompositum")
  • Steuerung
    • verwaltet Präsentationen; entscheidet welche Daten im Modell geändert werden müssen ("Strategie")

Nenne 4 Typen von Frameworks.

  • Class Frameworks - fassen Klassen und Methoden zusammen
  • Application Frameworks - bilden das Programmiergerüst für bestimmte Klassen
  • Domänen Frameworks -  bilden das Programmiergerüst für bestimmte Problembereiche
  • Komponenten Frameworks - bieten eine Umgebung zur Entwicklung

Nenne den Unterschied zwischen der Blackbox und der Whitbox Abstraktion.

  • Blackbox: Klienten wissen keine Details, die sich hinter der Schnittstelle befinden
  • Whitebox: Schnittstelle kann immernoch die Kapselung erzwingen und begrenzen

Erkläre das "Inversion of Control" und nenne die Vorteile eines Frameworks.

Das Framework hat die Kontrolle über den Ablauf

Vorteile: weniger anwendungsspezifischer Code, Verbesserte Konsistenz und Wartbarkeit

Was ist JavaEE?

eine Java Erweiterung für verteilte Anwendungen und Multi-Tier Architekturen (Ein Framework, das aus vielen Subframeworks besteht)

Was macht der Java Application Server?

stellt Technische Funktionalitäten zur Verfügung (Sicherheit, Transaktionsmanagement, Verzeichnisse); Kapselt den Zugruff auf die Ressourcen

Nenne 3 Container im JavaEE-Framework und deren Funktion.

  1. Application Client Container - Laufzeitumgebung für Client Komponenten
  2. Applet-Container - Laufzeitumgebung für Komponenten im Browser
  3. Web-Container - Laufzeitumgebung für Servlets und JSP

Lernen