Kapitel 3 - Requirements Engineering Flashcards
Definition: Stakeholder
- Einzelpersonen und Organisationen, die aktiv an einem Projekt beteiligt sind oder deren Interessen als Folge der Projektdurchführung oder des Projektabschlusses positiv oder negativ beeinflusst werden können. Die Stakeholder können auch das Projekt und seine Ergebnisse beeinflussen.
Aufgaben im Requirements Engineering (5)
- Anforderungsermittlung/erhebung
- vollständige Menge von Anforderungen sammeln
- Anforderungsspezifikation
- ermittelte Anforderungen so beschreiben, dass sie eindeutig, testbar und verständlich sind.
- Anforderungsanalyse
- Qualitätssicherung und Priorisierung
- Anforderungsvaidierung
- zu richtigen und widerspruchsfrei formulierten Anforderungen gelangen
-
Requirements Management
- Prozesse, die notwendig sind, um einerseits Anforderungen und die dazugehörigen Informationen für verschiedene Rollen aufzubereiten und andererseits diese konsistent zu ändern.
Nennen Sie die Methoden um Anforderungen zu ermitteln
- Interviews
- Focus Group
- Fragebögen
- Dokumentenanalyse
- Beobachtungen
- Prototyping
Was ist NFR?
Unterschiede zu FR?
(Schaubild)
- NFR umfasen Qualitätsforderungen an Produkt und Prozess
- NFR müssen integriert mit FR erfasst und spezifiziert werden
Hilfsmittel zum Erfassen von NFR
- Checklisten, Qualitätsmodelle
- Standards
- NFR-Methoden
- Kreativitätsmethoden
Nennen sie die wichtigen Punkte des Qualitätsmodell aus ISO 25010 (8)
- Funktionalität
- Zuverlässigkeit
- Effizienz
- Benutzerfreundlichkeit
- Sicherheit
- Kompatibilität
- Wartbarkeit
- Übertragbarkeit
Merkmale von guten Anforderungen (8)
- eindeutig: nur eine mögliche Interpretation
- vollständig: alle NFA, alle Systemreaktionen (auch ungültige Eingaben), explizite Kennzeichnungen von offenen Punkten
- konsistent: keine Widersprüche, konsistente Terminologie
- korrekt: nur richtige Anforderungen
- verifizierbar: durch ein Verfahren kann Erfüllung geprüft werden
- gewichtet: priorisiert bzgl. Wichtigkeit und Stabilität
- änderbar: klare Struktur, gute Überblickstabellen, keine Redundanz
- nachvollziehbar: Quelle der Anforderungen festhalten und deindeutige Identifikatoren
Weitere Qualitätsmerkmale (6)
- Machbarkeit
- Anforderungen mit vertretbarem Aufwand realisierbar
-
Notwendigkeit
- vom Auftraggeber gefordert
-
Nützlichkeit, Nutzbarkeit
- auch bei teilweiser Realisierung soll bereits ein produktives System entstehen
-
Rück- und Vorwärtsverfolgbarkeit
- Es soll erkennbar sein, ob jede Anforderung vollständig erfüllt wurde und umgekehrt woher jede Anforderung stammt
-
Atomisierung
- Es darf nur eine Anforderung pro Abschnitt der Anforderungs-Dokumentation beschrieben sein
-
Einheitlichkeit
- die Anforderungen und ihre Quellen sollten nicht in unterschiedlichen Dokumenten stehen oder unterschiedliche Strukturen haben
Erläutern Sie die Bedeutung eines Modells
Ein Modell ist ein begrenztes, reduziertes, abstrahiertes Abbild der Wirklichkeit für einen bestimmten Zweck, mit dessen Hilfe Aussagen über vergangene und zukünftige Entwicklungen & Verhaltensweisen des Systems gemacht werden sollen.
Was sind die Aufgaben des Requirements Management
- Anforderungen für verschiedene Zielgruppen aufbereiten
- Priorisieren
- Änderungsprozess definieren
- Verfügbarkeit / Traceability
- Change-Impact-Analyse
- Variabilität managen
- Entscheidungsmodellierung
- Merkmalsmodellierung
Wozu braucht man Priorisierung von Aufgaben?
- Grundlage technischer und von Projektmanagement-Entscheidungen
- Kompromisse finden zwischen in Konflikt stehenden Anforderungen
- Releases der Software planen
Nennen sie die Inhalte des Lastenheft
- Ausgangssituation und Zielsetzung
- Produktübersicht; Lieferumfang
- Abnahmekriterien, Funktionale Anforderungen, Nichtfunktionale Anforderungen
Was ist das Pflichtenheft
ausführliche Beschreibung von Leistungen (z.B. technische, wirtschaftliche und organisatorische Leistungen), die erforderlich sind oder gefordert werden, damit die Ziele des Projektes erreicht werden.
Was ist OAA?
- Statische Analyse?
- Dynamische Analyse?
- Im Code?
Objektorientierte Analyse
= fachliche Beschreibung des Systems
Statische Analyse
- Klassen & Objekte
- Assoziationen
- Attribute
- Organisation der Objektklassen
Dynamische Analyse
- Szenarios
- Ereignisfluss
- Zustandsdiagramm
- Geschäftsprozess
- Prototyp der Benutzeroberfläche
Objektorientierung im Code
- Abstraktion
- Geheimnisprinzip
- Vererbung
- Polymorphismus
- Überschreiben
- Vorteile von UML?*
- Was war der ursprüngliche Zweck?*
- Wofür ist es auch verwendbar?*
-
Gemeinsame Notation, so dass man…
- nicht zu jedem Projektbeginn eine gemeinsame Notation festlegen muss
- nicht in jedem Projekt eine andere Verwendet
- frühere Modelle leichter wiederverwendet werden kann
- Urpsrünglicher Zweck: Modellierung von Anforderungen und Architektur objektorientierter Softwaresysteme
- Auch verwendbar für:
- Prozessmodellierung
- Alle Arten von Modellen/Systemen