Skip to content
IRC-Coding IRC-Coding
UML Use Case GRASP SOLID Design Patterns Architekturmuster

Analyse und Designverfahren: UML, Use Cases, GRASP, SOLID & Qualitätsziele

Analyse vs. Design: Anforderungen strukturieren (Use Cases, UML), Entwurf (Klassen/Sequenzen), Verantwortlichkeiten (GRASP), SOLID, Patterns/Architektur und Ableitung testbarer Akzeptanzkriterien.

S

schutzgeist

2 min read

Analyse und Designverfahren anwenden

Dieser Beitrag ist eine Begriffserklärung zu Analyse- und Designverfahren – inklusive Prüfungsfragen, Kernkomponenten und Tags.

In a Nutshell

Analyse strukturiert das Problem fachlich und grenzt den Scope. Design überführt die Ergebnisse in eine technische Lösung mit klaren Verantwortlichkeiten, Schnittstellen und Qualitätszielen.

Kompakte Fachbeschreibung

Analyse

Ziel: Eindeutigkeit, Testbarkeit, Systemabgrenzung.

Typische Artefakte:

  • Use-Case-Beschreibungen
  • UML-Diagramme
  • Glossar
  • Akzeptanzkriterien

Design

Ziel: tragfähige Struktur und Abläufe.

  • Strukturmodelle: Klassendiagramm
  • Verhaltensmodelle: Sequenz-/Aktivitäts-/Zustandsdiagramme
  • Präzisierung: Vor-/Nachbedingungen, ggf. OCL

Prinzipien und Heuristiken:

  • GRASP (z.B. Controller, Creator, Low Coupling, High Cohesion)
  • SOLID (SRP, OCP, LSP, ISP, DIP)

Qualitätsattribute (Security, Performance, Zuverlässigkeit) werden als nicht-funktionale Anforderungen erfasst und durch Architekturtaktiken adressiert.

Prüfungsrelevante Stichpunkte

  • Analyse = „Was?“, Design = „Wie?“
  • Akzeptanzkriterien messbar formulieren
  • Struktur/Verhalten getrennt modellieren
  • GRASP: Verantwortlichkeiten sinnvoll zuweisen
  • SOLID nachweisen (IHK-relevant)
  • Qualitätsanforderungen als Szenarien
  • Traceability: Anforderung → Modell → Test
  • Versionierung + Abnahmen

Kernkomponenten

  1. Anforderungsaufnahme
  2. Strukturmodell (Klassendiagramm)
  3. Verhaltensmodell (Sequenz/Aktivität)
  4. Zustandsmodell (Lifecycle)
  5. Präzisierung (Vor-/Nachbedingungen/OCL)
  6. Entwurfsprinzipien (SOLID)
  7. Verantwortlichkeiten (GRASP)
  8. Muster (Patterns/Architekturmuster)
  9. QS (Reviews, Prototypen, TDD)
  10. Traceability

Praxisbeispiel (Online-Shop: Bestellung)

Analyse:
- Akteur: Kunde
- Use Case: "Bestellung aufgeben"
- Akzeptanzkriterium: Zahlung autorisiert -> Bestellung angelegt

Design (Ausschnitt):
- Klassen: Bestellung, Warenkorb, Zahlung
- Service: BestellungService
- Adapter: ZahlungsdienstAdapter
- Repository: BestellungRepository

Ablauf:
- Summe berechnen
- Zahlung autorisieren
- Bestellung speichern
- Bestätigung senden

Vorteile und Nachteile

Vorteile

  • Bessere Kommunikation
  • Höhere Testbarkeit
  • Weniger Änderungsrisiken

Nachteile

  • Initialaufwand
  • Risiko der Übermodellierung
  • Disziplin bei Pflege/Versionierung nötig

Typische Prüfungsfragen (mit Kurzantwort)

  1. Analyse vs. Design? Analyse beschreibt das Was, Design konkretisiert das Wie.
  2. Wozu GRASP? Verantwortlichkeiten sinnvoll zuweisen.
  3. Wozu SOLID? Wartbarkeit/Testbarkeit verbessern.
  4. Wie stellt man Konsistenz zwischen Use Case und Modellen sicher? Nachrichten im Sequenzdiagramm entsprechen Operationen im Klassendiagramm.

Lernstrategie

  1. Use Case + Akzeptanzkriterien schreiben.
  2. Sequenzdiagramm für Hauptszenario.
  3. Verantwortlichkeiten (GRASP) zuweisen.
  4. SOLID-Check + Unit Tests.

Wichtigste Quellen

  1. https://www.omg.org/spec/UML
  2. https://refactoring.guru/design-patterns
Zurück zum Blog
Share:

Ähnliche Beiträge