1. Grundlagen Flashcards
Definition 1-1 Anforderung
- Eine Bedingung oder Fähigkeit, die von einem Benutzer (Person oder System) zur Lösung eines Problems oder zur Erreichung eines Ziels benötigt wird.
- Eine Bedingung oder Fähigkeit, die ein System oder Teilsystem erfüllen oder besiten muss, um eine Vertrag eine Norm, eine Spezifikation oder andere, formel vorgegebene Dokumente zu erfüllen.
- Eine dokumentierte Repräsentation einer Bedingung oder Eigenschaft gemäß (1) oder (2)
Definition 1-2 Stakeholder
Ein Stakeholder eines Systems ist eine Person oder Organisation, die (direkt oder indirekt) Einfluss auf die Anforderungen des betrachteten Systems hat.
Definition 1-3 Requirements Engineering
Das Requirements Engineering ist ein systematischer und disziplinierter Ansatz zur Spezifikation und zum Management von Anforderungen mit den folgenden Zielen:
- Die relevanten Anforderungen zu kennen, Konsens unter den Stakeholdern über die Anforderungen herzustellen, die Anforderungen konform zu vorgegebenen Standards zu dokumentieren und die Anforderungen systematisch zu managen
- Die Wünsche und Bedürfnisse der Stakeholder zu versehen, zu dokumentieren sowie die Anforderung zu spezifizieren und zu managen um das Risiko zu minimieren, dass das System nicht den Wünschen und bedürfnissen der Stakeholder entspricht.
Symptome/Gründe für mangelhaftes ReqEng
- Anforderung <> Kundenwunsch
- Anforderung ungenau
- “selbstverständliches” wird nicht explizit dokumentiert
- Zeitdruck
Bedeutsamkeit gutes ReqEng
- Basis für erfolgreiche Systementwicklung
- Aufdeckung und Behebung potentieller Risiken
- Erkennung von Fehlern und Lücken
Vier Haupttätigkeiten im Requirement Engineering
- Ermitteln (Kapitel 3)
- Dokumentieren (Kapitel 4,5,6,)
- Prüfen und abstimmen (Kapitel 7)
- Verwalten, gesamter Lebenszyklus (Kapitel 8)
Schwergewichtige Vorgehensmodelle
- Beispiel Wasserfallmodell
- Erhebung aller Anforderungen vor der Entwurfs- oder Realisierungsphase
- ReqEng als abgeschlossene Phase
Leichtgewichtige Vorgehensmodelle
- Beispiel eXtreme Programming
- Erhebung von Anforderungen mit der Implementierung (kein Voraussehen)
- ReqEng als kontinuierlicher, begleitender Prozess
Einflußfaktoren auf Sprache als Medium
- Kultureller Hintergrund
- Erfahrungen
- Fachgebiet
- Arbeitsalltag
zentrale Projektrolle
Eigenschaften eines Requirement Engineer
- Mittelpunkt des Geschehens
- Direkter Kontakt zu allen Stakeholdern
- Verständnis Fachgebiet Stakeholder
- Beherrschung Sprache in Fachgebieten
- Umformulierung von fachfremden Sachverhalten (fachlicher Dolmetscher)
Sieben notwendige Fähigkeiten des Requirement Engineers
Eigenschaften eines Requirement Engineer
- AnalytischesDenken
- Empathie
- Kommunikationsfähigkeit
- Konfliktlösungsfähigkeit
- Moderationsfähigkeit
- Selbstbewustsein
- Überzeugungsfähigkeit (Anwalt der Anforderung)
Funktionale Anforderungen
(Arten von Anforderungen)
- Funktionsanforderung
- Verhaltensanforderung
- Strukturanforderung
Qualitative Anforderungen
(Arten von Anforderungen)
- Performance
- Verfügbarkeit
- Zuverlässigkeit
- Skalierbarkeit
- Portabilität
Definition 1-4 Funktionale Anforderung
Eine funktionale Anforderung ist eine Anforderung bezüglich des Ergebnisses eines Verhaltens, das von einer Funktion des Systems bereitgestellt werden soll.
Definition 1-5 Qualitätsanforderung (Nicht funktionale Anforderungen)
Eine Qualitätsanforderung ist eine Anforderung, die sich auf ein Qualitätsmerkmal bezieht, das nicht durch funktionale Anforderungen abgedeckt wird.