Requirements Engineering ist der systematische Prozess zur Ermittlung, Dokumentation und Verwaltung von Anforderungen an ein zu entwickelndes System. Anforderungen können textuell oder modellbasiert (UML-Diagramme) festgehalten werden. Prüfungsrelevant ist das Lesen und Interpretieren von UML-Diagrammen, nicht das Zeichnen.
Relevanz: Schritte des Requirements Engineering benennen; funktionale vs. nicht-funktionale Anforderungen unterscheiden; Kontext-, Use-Case- und Aktivitätsdiagramm lesen und interpretieren; extend vs. include in Use Case Diagrammen erklären.
Requirements EngineeringSystematischer Prozess zur Ermittlung, Dokumentation, Analyse und Verwaltung von Anforderungen an ein IT-System.Funktionale AnforderungAnforderung, die eine konkrete Funktion oder ein Verhalten des Systems beschreibt (was das System tun soll).Nicht-funktionale AnforderungAnforderung, die eine Qualitätseigenschaft des Systems beschreibt (wie gut das System etwas tun soll), z.B. Performance, Sicherheit, Usability.AkteurIm Use Case Diagramm: Person oder externes System, das mit dem zu beschreibenden System interagiert.Use CaseBeschreibt eine typische Form der Anwendung eines IT-Systems zur Erfüllung einer bestimmten Aufgabe und hält Interaktionen zwischen einem Akteur und dem System fest.SystemgrenzeIm Use Case Diagramm: Linie, die das zu beschreibende System von seiner Umgebung (Akteuren, externen Systemen) trennt.extendUse-Case-Beziehung; ein Use Case erweitert einen anderen optional unter bestimmten Bedingungen.includeUse-Case-Beziehung; ein Use Case ruft zwingend einen anderen als notwendige Teilfunktion auf.KontextdiagrammZeigt das System als Black Box mit seinen Schnittstellen zu externen Akteuren und Systemen; dient der groben Systemabgrenzung.AktivitätsdiagrammUML-Diagramm, das den detaillierten Ablauf einer Aktivität oder eines Prozesses darstellt.SwimlaneStrukturierungselement im Aktivitätsdiagramm; trennt Aktivitäten nach Verantwortungsbereichen (z.B. Abteilungen oder Rollen).UMLUnified Modeling Language; standardisierte Modellierungssprache für die Dokumentation und Visualisierung von Softwaresystemen. ---