TU Wien:Distributed Systems Engineering VU (Weidl-Rektenwald)/Prüfung 2021-06-15

Aus VoWi
Zur Navigation springen Zur Suche springen

MC-Test mit 40 Fragen zu je 1 Punkt, jeweils 1-4 richtige Antwortmöglichkeiten.

  1. Was ist ein "inverse conway manoeuvre"?
    1. Auflösung der Organisation
    2. Anpassung der Organisation, um eine bessere Software-Architektur zu erzielen
    3. Entwickler und Tester sind gleichberechtigt im Daily Scrum
    4. Auflösung der Architektur-Abteilung
  2. Welchen Design Prinzipien folgt eine Microservice Architektur (MSA)?
    1. Single Responsibility Principle (SRP)
    2. Minimierung der Verteilung über Server/Netzwerke
    3. "Best tool for the job"
    4. Bounded Context als Grundlage der Modularisierung
  3. Welche Aussagen über das "Sidecar Pattern" sind wahr?
    1. Das Sidecar verändert den Source Code der primären Applikation
    2. Das Sidecar bietet ein homogenes Interface für Plattform Services (z.B. Logging)
    3. Das Sidecar übernimmt zwingend die persistente Datenspeicherung lokaler Daten
    4. Das Sidecar läuft neben der primären Applikation (eigener Prozess bzw. Container)
  4. Was versteht man unter Conways Gesetz (Conway's Law)?
    1. Je mehr Microservices desto höher ist die Performance
    2. Software-Architektur spiegelt die Organisations-Architektur wider
    3. Organisations-Architektur spiegelt die Software-Architektur wider
    4. Anzahl der Microservices ist direkt proportional zur Anzahl der Testfälle
  5. Warum implementiert man eine Menge von miteinander kommunizierenden Microservices statt einer monolithischen Applikation?
    1. Höhere Robustheit gegenüber System-Ausfällen
    2. Reduktion der Kommunikation zwischen einzelnen Services
    3. Erhöhung der Autonomie einzelner Entwicklungsteams
    4. Bessere Kapselung einzelner Services
  6. Welche Aussagen über Microfrontends sind wahr?
    1. Microfrontends erweitern das Konzept von Microservices auf die Welt der Frontends
    2. Das GUI von Micropayment Services wird als Microfrontend bezeichnet
    3. Den Begriff Microfrontends gibt es seit ca. 2016
    4. Microfrontends betrachten das GUI als Komposition von Einzel-Features
  7. Wie groß soll ein Microservice sein?
    1. So groß, dass der Code "in den Kopf des Entwicklers passt"
    2. Größer als ein Monolith
    3. So groß, dass ein Microservice "in zwei Wochen neu geschrieben werden kann"
    4. Alle Microservices sollen exakt gleich groß sein (in Lines of Code gemessen)
  8. Wenn es im Gesamtsystem n Microservices gibt und alle Microservices untereinander kommunizieren, wie viele Kommunikationspfade ergeben sich dann im Gesamtsystem?
    1. n über 2
    2. n über n
    3. n hoch n
    4. Keine der angeführten Wahlmöglichkeiten
  9. Was sind Vorteile von BASE in Vergleich zu ACID
    1. BASE Architekturen skalieren besser
    2. BASE unterstützt die System-Eigenschaft "Isolation"
    3. BASE ist atomar, aber nur solange notwendig
    4. BASE unterstützt alle ACID Eigenschaften plus die Integration von Microservices
  10. Welche der folgenden Eigenschaften sind Eigenschaften von Monolithischen Systemen?
    1. Typischerweise hochhochkomplex
    2. Typischerweise über viele Jahre gewachsen
    3. Hohes Risiko bei Änderungen, Funktionalität auch außerhalb des Bereiches der Änderung zu beschädigen
    4. Stets freie Technologieauswahl bei Adaptionen möglich
  11. Welche Eigenschaften sind Eigenschaften von monolithischen Softwaresystemen?
    1. Bestehen aus kleinen und verteilten unabhängigen Services
    2. Slow time-to-market
    3. Benötigen Kubernetes als Runtime Plattform
    4. Vertikale Silo Architektur
  12. Was versteht man unter einem "vertical team"?
    1. Ein Team, das alle Tätigkeiten in der Entwicklung eines Microservices abdeckt
    2. Ein Team, dessen Teammitglieder auf verschiedene Gebäudeebenen verteilt werden
    3. Ein Team, das gemeinsam für die Entwicklung eines Microservices verantwortlich ist
    4. Ein Team, das für die Wartung der zentralen Micro-Datenbank zuständig ist
  13. Welche der unten angeführten Methoden sind geläufige Software Design Methoden?
    1. Big Design Up Front
    2. Design by Contract
    3. First Idea of a System
    4. Design and Succeed (DAS)
  14. Welche der folgend genannten Patterns sind keine Microservice Patterns?
    1. Singleton
    2. Model View Viewmodel
    3. Database per Service
    4. Service per Team
  15. Welche der folgenden Eigenschaften sind Eigenschaften einer Microservice Architecture (MSA)?
    1. ACID-like
    2. BASE-like
    3. 1 monolithic application - 1 database
    4. Evolution by Revolution (i.e. recreation of services)
  16. Welche Eigenschaften sind Eigenschaften eines "Modular monolith with decomposed database"?
    1. Greift auf mehrere Datenbanken zu
    2. Besteht aus mehreren Modulen
    3. Greift immer ausschließlich auf eine einzelne Datenbank zu
    4. Folgt dem Architektur-Stil "Service-Oriented Architecture (SOA)"
  17. Was sind Vorteile einer Immutable Infrastructure?
    1. Stabilere Umgebung durch unveränderliche Bausteine der Infrastruktur
    2. Ist immun gegen Hacker
    3. Änderungen werden automatisch detektiert und das System heruntergefahren
    4. Änderungen erfolgen immer über neue Versionen der Bausteine der Infrastruktur
  18. Welche konfigurierbaren Reaktionen bietet ein Curcuit Breaker Framework?
    1. Rückgabe eines Fehlers
    2. Rückgabe des letzten gültigen Wertes vor Eintritt eines Fehlers
    3. Einheitliche Zugriffsschnittstelle auf unterschiedliche persistente Datenspeicher
    4. Rückgabe eines vorkonfigurierten Standardwerts
  19. Welche Arten von "Planes" kennt ein Service Mesh?
    1. Steering Plane
    2. Pain Plane
    3. Data Plane
    4. Control Plane
  20. Was sind die Eigenschaften einer Immutable Infrastructure?
    1. Software Bausteine sind semi-mutable
    2. Kommunikationsendpunkte müssen vollständig autark sein
    3. Bausteine der Infrastruktur sind mutable (veränderlich)
    4. Bausteine der Infrastruktur sind immuable (unveränderlich)
  21. Welche grundlegenden GUI-Integrationsansätze verfolgen Microfrontends?
    1. Server-Side Integration (e.g. using Serve Side Includes)
    2. Integration-less Integration
    3. Client-Side Integration (e.g. using Custom Elements)
    4. Shared-Nothing Integration
  22. Was sind die Eigenschaften des Microservice Patterns "Transactional Outbox"?
    1. Das Message Relay kann Events öfters als einmal senden
    2. Docker Container in der Outbox werden ständig neu gestartet
    3. Ein Message Relay sendet Events aus der outbox table an den Message Broker
    4. Als Teil der lokalen Transaktion werden Events in den outbox table eingefügt
  23. Was sind Vorteile einer Microservice Architektur (MSA) gegenüber einer monolithischen Architektur (MOA)?
    1. Alle Microservices laufen auf einem einzigen Server
    2. Einfacherer schrittweiser Wechsel der Technologie
    3. Höhere Wandelbarkeit der Software
    4. Einfachere horizontale Skalierbarkeit
  24. Wann würden Sie Ihrer Chefin die Verwendung von Microservices vorschlagen?
    1. Einzelne Microservices können rasch vollständig neu implementiert werden
    2. Microservices unterstützen einfache horizontale Skalierung
    3. Microservices unterstützen eine hohe Evolvierbarkeit (=Evolutionsfähigkeit) der Software
    4. Für jedes Service kann die geeignetste Technologie zur Anwendung kommen
  25. Welche Features werden über ein Service Mesh typischerweise angeboten?
    1. Security (Sicherheit)
    2. Reliability (Zuverlässigkeit)
    3. Observability (Beobachtbarkeit)
    4. Accounting of service usage (Verrechenbarkeit der Servicenutzung)