Business Information Systems · T5

Systemarchitektur – Aufbau, Entwicklung & Cloud

Überblick

Die Systemarchitektur beschreibt die Struktur eines Systems, seine Komponenten, ihre Interaktion und Beziehungen. Sie entwickelte sich historisch von monolithischen Systemen über Client-Server hin zu SOA und Microservices. Zentrale Entscheidungen betreffen Cloud vs. On-Premises und die Wahl des Servicemodells (SaaS, PaaS, IaaS).

Relevanz: Architekturformen und ihre historische Entwicklung erklären; SaaS/PaaS/IaaS unterscheiden und Beispiele zuordnen; Vor-/Nachteile von Microservices benennen; Grundzüge der Cloud-Sicherheit kennen.

Kernkonzepte
  • Systemarchitektur (Definition): Konzeptionelles Framework, das die Struktur eines Systems, dessen Komponenten, ihre Interaktion und ihre Beziehungen zueinander beschreibt. Dient dazu, die Gesamtheit eines Systems (Hardware, Software, Netzwerk, etc.) zu verstehen. High-level Dokumentation für Architekten und Stakeholder. Aus ihr lassen sich Skalierbarkeit, Sicherheit, Zuverlässigkeit und Wartbarkeit interpretieren.
  • Monolithische Architektur (1970er): GUI, Geschäftslogik und Datenbank in einem einzigen System zusammengefasst. Einfach, aber schwer skalierbar und wartbar.
  • Multi-Tier-Architektur (1980er–1990er): Trennung in 2-Tier (Client/Server) und 3-Tier (GUI / Geschäftslogik / Datenbank). Klare Trennung der Schichten verbessert Wartbarkeit.
  • Service-orientierte Architektur (SOA, 2000er): Kein Technologie-, sondern ein Paradigma; Idee für die Aufteilung und das Zusammenwirken von verteilten Komponenten. Kommunikation über Middleware (ESB). Vorteile: Flexibilität, Wiederverwendbarkeit. Nachteile: erhöhte Komplexität, Performance-Einbussen.
  • Webbasierte SOA (2010er): Web Services kommunizieren über Enterprise Service Bus; Nutzung von Internet-Standards (HTTP, XML).
  • Microservices (ab 2014): Weiterentwicklung von SOA; Anwendungen werden in kleine, eigenständige Dienste zerlegt. Jeder Microservice läuft unabhängig und kommuniziert über APIs. Vorteile: maximale Skalierbarkeit, schnelle Bereitstellung, verbesserte Fehlertoleranz. Nachteile: hohe Verwaltungskomplexität, Orchestrierungssystem (z.B. Kubernetes) erforderlich.
  • SaaS (Software-as-a-Service): Vollständig fertige Software, auf Remote-Servern betrieben, vom Anbieter verwaltet/aktualisiert. Zugriff via Browser. Wenig Kontrolle, aber wenig Verantwortung. Beispiel: Salesforce, Google Workspace.
  • PaaS (Platform-as-a-Service): Plattform für Entwickler; bietet Framework und Tools zum Entwickeln massgeschneiderter Apps. Infrastruktur vom Anbieter verwaltet. Hauptnutzen: Entwicklung passgenauer SaaS-Applikationen. Beispiel: Magento von Adobe.
  • IaaS (Infrastructure-as-a-Service): Virtualisierte Computerressourcen auf Abruf (Networking, Speicherplatz, Server). Dynamisch skalierbar; mehr Flexibilität als On-Premises; Fundament des Cloud Computing. Beispiel: Amazon AWS EC2.
  • On-Premises: Software und Infrastruktur werden lokal im Unternehmen betrieben und vollständig selbst verwaltet.
  • Serverless Computing: Möglichkeit zur Implementierung von Microservices. Server für Entwickler unsichtbar; Cloud-Anbieter skaliert Ressourcen automatisch; nur genutzte Kapazitäten werden bezahlt. Gut für ereignisgesteuerte, kurzlebige Workloads.
Fachwörter & Glossar
  • SystemarchitekturKonzeptionelles Framework zur Beschreibung der Struktur, Komponenten, Interaktionen und Beziehungen eines Systems auf hoher Abstraktionsebene.
  • Monolithische ArchitekturArchitekturstil, bei dem GUI, Geschäftslogik und Datenbank in einem einzigen, unteilbaren System zusammengefasst sind.
  • Multi-Tier-ArchitekturArchitekturstil mit klar getrennten Schichten (Präsentation, Geschäftslogik, Datenhaltung), z.B. 2-Tier oder 3-Tier.
  • GUIGraphical User Interface; Benutzeroberfläche eines Systems.
  • Geschäftslogik (GL)Schicht in einem System, die die fachlichen Regeln und Prozesse implementiert.
  • SOAService-orientierte Architektur; Paradigma für die Aufteilung von Systemen in wiederverwendbare, lose gekoppelte Dienste.
  • ESBEnterprise Service Bus; zentrale Middleware-Lösung für die Kommunikation und Integration von Diensten in einer SOA.
  • MicroservicesArchitekturstil, bei dem eine Anwendung in kleine, unabhängig deploybare Dienste zerlegt wird, die über APIs kommunizieren.
  • APIApplication Programming Interface; definierte Schnittstelle für die Kommunikation zwischen Softwarekomponenten oder -systemen.
  • SaaSSoftware-as-a-Service; vollständig fertige Cloud-Software, die der Anbieter betreibt und wartet.
  • PaaSPlatform-as-a-Service; Cloud-Plattform zur Entwicklung eigener Anwendungen; Infrastruktur vom Anbieter verwaltet.
  • IaaSInfrastructure-as-a-Service; virtualisierte Infrastrukturressourcen (Server, Speicher, Netzwerk) auf Abruf aus der Cloud.
  • On-PremisesLokal im Unternehmen betriebene und vollständig selbst verwaltete IT-Infrastruktur.
  • Serverless ComputingCloud-Bereitstellungsmodell, bei dem der Anbieter Ressourcen vollautomatisch skaliert und nur die tatsächlich genutzten Kapazitäten verrechnet werden.
  • KubernetesOpen-Source-Orchestrierungssystem für Container-basierte Microservices. ---