fit 2002 > Wissensakquisition > Konzepte und Techniken > Requirement Engineering

Überblick


Requirement Engineering ist, wie der Name es bereits vermuten läßt, dazu gedacht die Requirements eines Systems auszumachen. Was stellen diese Requirements aber nun eigentlich dar?
Requirements definieren in den früheren Stationen einer (Software) Spezifikation, was implementiert werden soll, aber nicht wie dies zu tun ist. Sie beschreiben:
- Benutzer-Level Einrichtungen
- Übliche Systemeigenschaften
- Spezielle Constrains im System
- Constrains auf die Systementwicklung

Um diese Requirements zu erfassen und zu dokumentieren werden verschiedene Techniken angewandt, die üblicherweise in 5 Phasen unterteilt sind:

  1. Requirements Elicitation
    grob gesagt finden der Requirements durch Kommunikation mit Kunden, Usern & an der Entwicklung beteiligten Personen (also Requirements von unterschiedlichen Gesichtspunkten aus herleiten)
    Zielvorstellungen der Gesprächspartner aneinander angleichen (z.B. die von unterschiedlichen Abteilungen in einer Firma)
    erkennen von Constraints
    Auswahl des Betriebssystems auf der die Software laufen wird
    prüfen ob das Projekt mit aktueller Technologie realisierbar ist
    untersuchen inwieweit das momentan verwendete System (falls vorhanden) mit eingebunden werden kann
    ist das Projekt den Aufwand überhaupt wert?
  2. Requirements Modelling
    Ausarbeitung mehrere Systemmodelle (ein einzelnes Modell würde in den meisten Fällen zu hohe Komplexität aufweisen) um verschieden Sichtweisen zu illustrieren
    grobe Unterteilung der Modelle in 2 Arten:
    -Behavioural View: wie verhält sich das System (Reaktion auf Inputs Events von außerhalb)
    -Structural View: zeigt das in die einzelnen Bestandteile zerlegte System
    zusätzlich zur Modellierung des Systems ist auch eine Modellierung des Environment nützlich
    Verbindungen zw. Requirements (natürliche Sprache, stammen aus der Elicitation) und dem Modell einzeichnen (dient dazu dem Kunden die Zusammenhänge besser ersichtlich zu machen)
  3. Requirements Specification
    einzelne Komponenten der zuvor erstellten Modelle werden nun exakt beschrieben und formalisiert
    Ergebnis: Prototyp des Requirements Documents
  4. Requirements Validation
    auswerten und analysieren der Requirements
    Kontrolle von Korrektheit, Vollständigkeit & Konsistenz
    Formulierung eindeutig?
    nochmaliges prüfen der Machbarkeit (Kosten & Ressourcen)
    Ergebnis: Requirements Document
  5. Requirements Management
    während der Systementwicklung und während des Betriebs können neue Requirements entstehen oder es können Änderungen an bereits besteheneden Requirements auftreten, Requirements Management dient dazu um mit solchen Dingen klarzukommen, das heißt das System hinsichtlich der neuen Requirements zu verändern und auch die Folgen dieser Änderungen zu berücksichtigen (also Änderungen am System und an allen Dokumenten die damit in Zusammenhang stehen)
    läuft parallel zu den anderen Phasen
    notwendig für effizientes Requirements Engineering: Hintergrundwissen über die einzelnen Requirements (Traceability): Wer wollte das Requirement? Warum gibt es dieses Requirement? Mit welchen anderen Requirements steht es in Verbindung? Welche Verbindungen bestehen zwischen einem Requirement und dem Environment?
    dieses Wissen erleichtert Modifikationen am System da man leichter die Auswirkungen von Änderungen abschätzen kann


Weiterführende Informationen


RequirementEngineering
>[ http://www.cse.unsw.edu.au/~eileenm/edesk/academic/reqeng/]


MahmoodMoussavi's Requirement Engineering
>[ http://sern.ucalgary.ca/~moussavm/611/chapter1/chapter1.html]


Requirement Engineering - Customer-Oriented
>[ http://www.cs.ualberta.ca/~sorenson/cmput401/lectures/RequirementEng/]


Verweise auf Arbeiten anderer gruppen


Requirement Engineering
>[http://cartoon.iguw.tuwien.ac.at:16080/fit/fit08/team6/welcome.html]

Wasserfallmodell Konzept
>[http://cartoon.iguw.tuwien.ac.at:16080/fit/fit01/wasserfall/konzepte.html]

Spiralmodell Konzept
>[http://cartoon.iguw.tuwien.ac.at:16080/fit/fit01/spiral/konzepte.html]


>Entstehungskontext | Konzepte und Techniken | Entwicklung und Auswirkungen | Praxis | Bewertung