Softwarearchitekturen und UML-Diagramme

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson
Download our mobile app to listen on the go
Get App

Questions and Answers

Was ist eine besondere Art von Bewertungen, die Text und bis zu fünf Ressourcen enthalten kann?

  • Moderator
  • Rezension (correct)
  • Antwort
  • Ressource

Welche der folgenden Funktionen beschreibt, was mit einer Bewertung gemacht werden kann?

  • Antworten verfassen (correct)
  • Keine Antworten schreiben
  • Nur kombinierte Bewertungen anzeigen
  • Ressourcen hochladen

Was wird in einem Aktivitätsdiagramm angezeigt, wenn kein Ort gefunden wird?

  • Der Prozess wird beendet und eine Fehlermeldung angezeigt (correct)
  • Der Prozess wird fortgesetzt
  • Es wird eine neue Suche gestartet
  • Eine positive Bestätigung wird angezeigt

Welches der folgenden Elemente ist kein Bestandteil der Entity-Boundary-Control Architektur?

<p>Antwort (B)</p> Signup and view all the answers

Welche Bedingung muss erfüllt sein, um die partielle Korrektheit der Funktion 'topfac' zu beweisen?

<p>k ≤ n (A)</p> Signup and view all the answers

Welche Schleifeninvariante ist für die Funktion 'topfac' geeignet?

<p>x = k * i (B)</p> Signup and view all the answers

In welchem Schritt des Prozesses werden die Bewertungen eines Ortes geladen?

<p>Wenn ein Ort ausgewählt ist (B)</p> Signup and view all the answers

Welche der folgenden Terminierungsfunktionen ist geeignet, um die vollständige Korrektheit der Funktion 'topfac' zu beweisen?

<p>t: i (C)</p> Signup and view all the answers

Welcher Architekturstil ähnelt dem Observer Design Pattern am meisten?

<p>Event-Based (B)</p> Signup and view all the answers

Was ist eine korrekte Aussage über Builder Design Patterns?

<p>Es ermöglicht eine flexible Instanziierung von Objekten ohne ungültige Zwischenzustände. (A)</p> Signup and view all the answers

Welche Aussage über Softwaretechnikprozesse ist FALSCH?

<p>Agile Softwareprojekte basieren auf einem ausführlichen Plan und festen Anforderungen. (C)</p> Signup and view all the answers

Welche der folgenden Anforderungen ist nicht-funktional?

<p>Die Anmeldung soll sicher und benutzerfreundlich durchgeführt werden können. (D)</p> Signup and view all the answers

Was lässt sich nicht in einem Objektdiagramm abbilden?

<p>Mehrere Zustände des gleichen Systems in einem Objektdiagramm. (B)</p> Signup and view all the answers

Welche Methode beschreibt am besten, wie man das Ergebnis eines Use-Case-Diagramms verwalten kann?

<p>Verwendung eines externen Sequenz-Diagramms zur Modellierung der Benutzerinteraktionen. (D)</p> Signup and view all the answers

Was beschreibt die Inkrementelle Entwicklung am besten?

<p>Fehlentwicklungen werden durch fortlaufende Prototypen und Feedback vermieden. (B)</p> Signup and view all the answers

Welches der folgenden Design Patterns ermöglicht die Trennung von Erstellung und Darstellung eines Objekts?

<p>Factory Pattern (C)</p> Signup and view all the answers

Flashcards

Bewertungen & Rezensionen

Bewertungen speichern eine ganzzahlige Anzahl von Sternen. Rezensionen sind eine besondere Art von Bewertungen, die Text und bis zu fünf Ressourcen enthalten. Ressourcen werden mit der Bewertung gespeichert, auf die sie sich beziehen, und einem Link.

Antworten zu Bewertungen

Bewertungen können Antworten enthalten. Antworten beziehen sich entweder auf eine Bewertung oder auf eine andere Antwort.

EBC-Architektur

Die EBC-Architektur trennt die Anwendung in drei Teile: Die Entity-Schicht repräsentiert die Daten und Geschäftslogik, die Boundary-Schicht kümmert sich um die Interaktion mit der Außenwelt (z.B. Web-Interface) und die Control-Schicht steuert den Workflow zwischen Entity und Boundary.

Aktivitätsdiagramm

Ein Aktivitätsdiagramm zeigt die Abfolge von Aktivitäten und Entscheidungswegen innerhalb eines Prozesses.

Signup and view all the flashcards

OCL

Die OCL (Object Constraint Language) definiert Regeln und Bedingungen für Objekte und Beziehungen in einem Objektmodell.

Signup and view all the flashcards

Schleifeninvariante

Eine Schleifeninvariante ist eine Bedingung, die zu Beginn jeder Iteration einer Schleife gilt und damit die Korrektheit des Algorithmus sicherstellt.

Signup and view all the flashcards

Partielle & Vollständige Korrektheit

Partielle Korrektheit bezieht sich darauf, dass ein Programm, wenn es terminiert, das gewünschte Ergebnis liefert. Die vollständige Korrektheit umfasst zusätzlich, dass das Programm auch terminiert.

Signup and view all the flashcards

Terminierungsfunktion

Eine Terminierungsfunktion (t) ist eine Funktion, die die Anzahl der Schritte in einer Schleife misst und deren Wert bei jeder Iteration sinkt.

Signup and view all the flashcards

Welcher Architekturstil ähnelt dem Observer Design Pattern?

Der Observer Architekturstil ähnelt dem Observer Design Pattern, da beide auf dem Prinzip der Benachrichtigung von abhängigen Objekten basieren, wenn sich der Zustand eines anderen Objekts ändert. Im Observer-Architekturstil kommunizieren Komponenten über Ereignisse und Observierbare, während das Observer Design Pattern ein konkretes Muster für diese Kommunikation beschreibt.

Signup and view all the flashcards

Welche Eigenschaft trifft auf Builder Design Patterns zu?

Der Builder ist ein Design Pattern, das dazu dient, komplexe Objekte schrittweise zu erstellen. Dadurch lässt sich die Flexibilität erhöhen, da verschiedene Konfigurationen des Objekts durch separates Hinzufügen von einzelnen Komponenten möglich sind. Das Pattern vermeidet dabei die Erstellung von Objekten in ungültigen Zwischenzuständen.

Signup and view all the flashcards

Welche Aussage über Softwaretechnikprozesse ist FALSCH?

Inkrementelle Entwicklung versucht, durch frühe Prototypen Risiken zu minimieren, indem iterativ kleinere Teile des Systems entwickelt und getestet werden. Agile Softwareprojekte hingegen basieren auf flexiblen und iterativen Entwicklungsprozessen, die sich an schnell wechselnden Anforderungen anpassen.

Signup and view all the flashcards

Welche der folgenden Anforderungen ist Nicht-Funktional?

Nicht-funktionale Anforderungen beschreiben Eigenschaften des Systems, die sich nicht direkt auf die Funktionalität oder die Aufgaben des Systems beziehen, sondern auf die Qualität und den Betrieb. Sie definieren z.B. die Performance, Sicherheit oder die Bedienungsoberfläche.

Signup and view all the flashcards

Was lässt sich nicht in einem Objektdiagramm abbilden?

Ein Objektdiagramm zeigt die Beziehungen zwischen Objekten zu einem bestimmten Zeitpunkt im System. Es stellt den Zustand des Systems dar und kann Assoziationen zwischen verschiedenen Objekten mit Multiplizitäten visualisieren. Zustandsänderungen des Systems oder das Klassendiagramm selber lassen sich in einem Objektdiagramm allerdings nicht abbilden.

Signup and view all the flashcards

Erstellen Sie ein Use-Case-Diagramm.

Ein Use-Case-Diagramm zeigt die Interaktionen zwischen Akteuren (Benutzern oder Systemen) und dem System. Die Interaktionen werden als Use Cases dargestellt, die die Funktionalität des Systems beschreiben. Die Use Cases können mit Ressourcen oder anderen Use Cases verbunden sein, um Abhängigkeiten und Zusammenhänge zu verdeutlichen.

Signup and view all the flashcards

Modellieren Sie die Erstellung einer Bewertung mit einem Sequenzdiagramm.

Ein Sequenzdiagramm zeigt die Abfolge von Nachrichten zwischen verschiedenen Objekten. Es wird oft verwendet, um die Interaktion von Objekten bei einem bestimmten Szenario oder Use Case zu modellieren. Die Nachrichtenfluss während der Erstellung einer Bewertung durch einen Benutzer innerhalb des Systems sollte in einem Sequenzdiagramm dargestellt werden.

Signup and view all the flashcards

Vervollständigen Sie das Use-Case-Diagramm.

Ein Use-Case-Diagramm stellt die Interaktionen zwischen Akteuren und dem System dar. Die Akteure sind dabei Benutzer oder andere Systeme, die mit dem System interagieren. Die Interaktionen werden als Use Cases dargestellt, die die Funktionalität des Systems beschreiben. In diesem Fall erstellen Benutzer Bewertungen, können Ressourcen zu diesen Bewertungen hinzufügen und die Ressourcen können direkt beim Erstellen der Bewertung hinzugefügt werden.

Signup and view all the flashcards

Study Notes

Aufgabenbeschreibungen

  • Aufgabe 1 (Multiple Choice): Umfasst Fragen zu Programmierparadigmen und Softwarearchitekturen. Behandelt Architekturstile (z.B. Observer, Builder), Softwaretechnikprozesse (z.B. Inkrementelle Entwicklung, V-Modell), und nicht-funktionale Anforderungen.

Aufgabe 2 (Requirements)

  • Use-Case-Diagramm: Benutzer können Bewertungen erstellen und Ressourcen hinzuzufügen, ggf. direkt bei der Bewertungserzeugung.
  • Sequenzdiagramm: Benutzer erstellen Bewertungen, können Ressourcen hinzufügen (hochladen oder Bewertungsprozess fortsetzen)

Aufgabe 3 (Klassendiagramm)

  • Klassen: Bewertung, Rezension, Antwort
  • Eigenschaften: Bewertung hat Sternenanzahl, Rezensionen enthalten Text und bis zu 5 Ressourcen mit Link, Antworten beziehen sich auf Bewertungen oder andere Antworten.
  • Stereotypen: Die Anforderungen fordern die Einbeziehung von Stereotypen (Entity, Boundary, Control) in ein Klassendiagramm.

Aufgabe 4 (Aktivitätsdiagramm)

  • Ablauf: Ortssuche, Fehlermeldung bei fehlenden Daten, Laden von Bewertungen, Laden von zusätzlichen Informationen, Anzeigen der Ergebnisse und Beendigung des Prozesses.

Aufgabe 5 (OCL)

  • Aufgabenstellung: Evaluieren und Formulieren von OCL-Anfragen. Konkrete Auswertung und Typangabe von Anfragen anhand eines Objektdiagramms wird erwartet.
  • OCL-Contract: Entwicklung eines OCL-Contracts für eine Funktion (XY) mit detaillierten Anweisungen.

Aufgabe 6 (Hoare)

  • Funktion: topfac(int k, int n) zur Berechnung eines Produkts über einem Bereich von Zahlen.
  • Aufgabenstellung: Bestimmen einer geeigneten Schleifeninvarianten, partielle Korrektheit unter gegebenen Rahmenbedingungen (Vor- und Nachbedingungen).
  • Terminierungsfunktionen: Analyse verschiedener Terminierungsfunktionen (t) in Bezug auf k und n für eine vollständige Korrektheit der Funktion.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

More Like This

Use Quizgecko on...
Browser
Browser