Benutzer-Werkzeuge

Webseiten-Werkzeuge


allgemein:test:uebungsaufgaben

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Ăśberarbeitung
Nächste Überarbeitung
Vorhergehende Ăśberarbeitung
allgemein:test:uebungsaufgaben [02.10.2025 14:07] – larsallgemein:test:uebungsaufgaben [06.10.2025 11:09] (aktuell) – [Aufgabe 06.10.2025] lars
Zeile 106: Zeile 106:
  
 **Empfohlen (fachlich korrekt: Komposition zwischen Rechnung und Position):**  **Empfohlen (fachlich korrekt: Komposition zwischen Rechnung und Position):** 
-< mermaid>+<mermaid>
 classDiagram classDiagram
 class Rechnung class Rechnung
Zeile 134: Zeile 134:
 Rechnung "1" o-- "1..*" Position Rechnung "1" o-- "1..*" Position
 Position "0..*" --> "1" Produkt </mermaid> Position "0..*" --> "1" Produkt </mermaid>
 +
 +----
 +## Aufgabe 06.10.2025
 +
 +
 +<mermaid>
 +classDiagram
 +
 +class Abteilung {
 +  +abteilungsId : int
 +  +name : string
 +}
 +
 +class Mitarbeiter {
 +  +mitarbeiterId : int
 +  +vorname : string
 +  +nachname : string
 +  +email : string
 +}
 +
 +class Techniker {
 +  +technikerId : int
 +  +skillset : string
 +  +telefonDurchwahl : string
 +}
 +
 +class Supportanfrage {
 +  +ticketNr : string
 +  +status : string
 +  +erstelltAm : Date
 +  +kurzbeschreibung : string
 +}
 +
 +Abteilung "1" o-- "0..*" Mitarbeiter : umfasst
 +Mitarbeiter "1..*" --> "0..*" Supportanfrage : erstellt
 +Supportanfrage "0..*" o-- "0..1" Techniker : zugewiesenAn
 +Mitarbeiter <|-- Techniker
 +</mermaid>
 +
 +# b) Assoziation vs. Aggregation (am Ticketsystem erklärt)
 +
 +  * **Assoziation**: Eine lose Beziehung zwischen zwei Klassen ohne „Ganze-Teil“-Semantik.
 +  *Beispiel*: **Mitarbeiter — erstellt — Supportanfrage**. Ein Mitarbeiter kann viele Anfragen erstellen; die Objekte existieren unabhängig voneinander.
 +  * **Aggregation** (leere Raute „o--“): „Ganze-Teil“ mit *geteilter* Lebensdauer (Teil kann auch ohne Ganzes existieren).
 +  *Beispiel*: **Abteilung o-- Mitarbeiter**. Eine Abteilung *umfasst* Mitarbeiter, aber Mitarbeiter können unabhängig existieren bzw. in eine andere Abteilung wechseln. (Keine *Komposition*, weil das Leben des Mitarbeiters nicht von der Abteilung abhängt.)
 +
 +
 +# c) 1:n oder m:n zwischen „Mitarbeiter“ und „Supportanfrage“?
 +
 +  * **BegrĂĽndet 1:n**: In den Anforderungen steht, dass *jeder Mitarbeiter mehrere Supportanfragen stellen kann* und eine Supportanfrage von **einem** Mitarbeiter stammt (Ersteller). Damit: **Mitarbeiter 1 — n Supportanfrage**.
 +  * **Wann m:n?** Nur wenn das Domänenmodell erlauben wĂĽrde, dass **mehrere** Mitarbeiter gemeinsam als Ersteller derselben Anfrage gelten (z. B. Co-Ersteller oder Ticket-Ăśbernahme als „Erstellerrolle“), was hier **nicht** gefordert ist. Deshalb ist **1:n** korrekt und einfacher.
  
  
allgemein/test/uebungsaufgaben.1759406828.txt.gz · Zuletzt geändert: von lars