• Keine Ergebnisse gefunden

2.4 WAS versus WIE im Requirements Engineering

N/A
N/A
Protected

Academic year: 2021

Aktie "2.4 WAS versus WIE im Requirements Engineering"

Copied!
11
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

2 Systeme und ihr Kontext 2.1 Definitionen

System (system). 1. Ein Ordnungs- und Gliederungsprinzip. 2. Eine zusammen- gehörige, von ihrer Umgebung abgrenzbare Menge von Komponenten und

Wechselwirkungen, die beobachtete oder postulierte Phänomene der Realität beschreiben. 3. Eine zusammengehörige, von ihrer Umgebung abgrenzbare

Menge von Komponenten, die durch koordiniertes Zusammenwirken Leistungen erbringen.

Nicht näher bezeichnete Systeme in der Informatik sind vom Typ 3., wobei die Komponenten aus Hard- und Software bestehen.

Kontext (context). 1. Der umgebende Text einer sprachlichen Einheit. 2. Der Gedanken- und Sinnzusammenhang, in dem ein Phänomen oder eine Äußerung verstanden werden muss. 3. (in der Informatik). Diejenigen Komponenten des Anwendungsbereichs, welche mit einem System interagieren, aber selbst nicht Bestandteil des Systems sind.

(2)

Anwendungsbereich (application domain). Derjenige Ausschnitt der Realität, welcher im Zusammenhang mit einem in diesem Bereich eingesetzten System relevant ist.

Realität. Die Wirklichkeit: Alle beobachtbaren oder sonstwie gedanklich fassbaren Dinge (Gegenstände, Personen, Phänomene, Handlungen, Ereignisse,

Gedanken...) dieser Welt.

(3)

2.2 Einbettung und Abgrenzung

System Kontext Anwendungs-

bereich

Realität

Requirements Engineering bildet Modelle eines Ausschnitts der Realität

Sobald ein System ein Problem der Realität bearbeitet, ist es eingebettet in die Realität und besitzt einen Kontext

Requirements Engineering legt die Grenzen eines geplanten Systems fest

Systeme verändern durch ihren Einsatz die Realität

(4)

2.3 Betrachtungsebenen

Es gibt mindestens drei Betrachtungsebenen mit unterschiedlichen Systemgrenzen:

Geschäft «Auf dem bestehenden Schienennetz sollen mehr Leute transportiert werden»

System «Die Minimaldistanz zwischen zwei Zügen ist immer größer als der maximale Bremsweg des nachfolgenden Zuges.»

Software «Der maximale Bremsweg muss alle 100 ms neu berechnet werden.»

Faktisch oft n Ebenen

Kontextbestimmung und -abgrenzung erfordert Klarheit über die aktuelle Betrachtungsebene

Verzahnung von Anforderungen und Lösungen ist unausweichlich

Problem der Abgrenzung von Anforderungen und Entwurf

(5)

2.4 WAS versus WIE im Requirements Engineering

Volksweisheit: WAS = Spezifikation, WIE = Entwurf

Aber: ist folgender Satz eine Anforderung oder eine Entwurfsentscheidung?

„Das System druckt eine wahlweise nach Namen oder Land alphabetisch sortierte Liste von Teilnehmern mit Nummer, Name, Vorname, Affiliation und Land. Auf jeder Seite sind unten links das Erstellungsdatum und unten rechts die Seitenzahl aufgedruckt.“

WAS vs. WIE ist kontextabhängig und liefert keine brauchbare Abgrenzung zwischen Anforderungen und Entwurfsentscheidungen. Die gleiche Sache kann je nach Kontext beides sein.

Probleme (beschrieben als Anforderungen) und Lösungen (das Ergebnis von Entwurfsentscheidungen) sind hierarchisch miteinander verzahnt

WAS vs. WIE ist stufenabhängig: Eine Entwurfsentscheidung auf Stufe n wird zur Aufgabe (=Anforderung) auf Stufe n+1

(6)

Hierarchische Verzahnung von Problem und Lösung

Eine Stelle an- treten

von Adorf nach Befingen pendeln Stelle in Adorf

suchen

Nach Befingen umziehen

Auto beschaffen Mofa

beschaffen

Bahn/Bus benutzen

Anforderung

mögliche Lösungen Anforderung

mögliche Lösungen Lebensunterhalt

sichern

Den Freund heiraten

Die Erbtante vergiften

Anforderung mögliche Lösungen Problem: Sonja Müller

hat ihr Studium abge- schlossen und erhält keine Unterstützung von ihren Eltern mehr.

Sie ist daher mit der Anforderung konfron- tiert, ihren Lebensun- terhalt zu sichern.

Sie wohnt in Adorf und hat ein Stellenan-

gebot bei einer Firma in Befingen. Ferner hat sie einen reichen Freund und eine eben- so reiche Erbtante.

(7)

Sind Spezifikation von Anforderungen und Entwerfen von Lösungen voneinander trennbar?

Ja, mit operationaler Abgrenzung:

Änderungen der Anforderungen brauchen die Zustimmung des Auftraggebers/Kunden

Änderungen im Entwurf kann der Auftragnehmer/Lieferant autonom vornehmen

Also: Braucht eine Veränderung eins Satzes, eines Modellelements, eines Konstrukts, etc. die Zustimmung des Auftraggebers/Kunden?

ja ➜ Anforderung nein ➜ Entwurfsentscheidung

(8)

Ist die Trennung notwendig?

Ja.

Die Kompetenz zur Festlegung von Anforderungen liegt fast immer bei anderen Personen als die Kompetenz zum Treffen von Entwurfs-

entscheidungen

Anforderungen und Entwürfe sind getrennt zu dokumentieren

(9)

Ist eine strenge Trennung im Entwicklungsprozess möglich?

Nein.

Hierarchische Verzahnung: Übergeordnete Entwurfsentscheidungen beeinflussen untergeordnete Anforderungen

Nicht realisierbare Anforderungen sind sinnlos ➜ Technische Machbarkeit (d.h. Lösungen) beeinflusst die Anforderungen

Machbarkeitsstudien, die häufig am Anfang von Projekten durchgeführt werden, müssen auf der Grundlage der Kernanforderungen die

Realisierbarkeit und Wirtschaftlichkeit möglicher Lösungen abschätzen

Validierung: Anforderungen sind oft nur mit Hilfe von Lösungen (z.B.

Prototypen) beurteilbar und validierbar

Erkenntnisse und Schwierigkeiten bei der Lösung können Änderungen in den Anforderungen bewirken

(10)

2.5 Kontextmodelle

Modell eines Systems in seinem Kontext

Betrachtungsebene festlegen

Keine Systeminterna (➜ System als schwarzer Kasten)

Kontextelemente bestimmen (Kontextelement = Subjekt oder Objekt der Systemumgebung, das mit dem System interagiert)

Interaktion zwischen System und Kontextelementen modellieren

Interaktion von Kontextelementen untereinander modellieren

Ergebnis ggf. grafisch darstellen

(11)

Beispiel: Kontexteinbettung eines Fuhrpark-Dispositionssystems

Fahrzeug- disponent

Fahrer

Abteilungs- leiter

informiert plant sich

ruft ab

beauftragt informiert

Auftrags- disponent gibt

Aufträge ein

Fuhrpark- Dispositions- system

erhält Fahr- auftrag

beauftragt

kontaktiert

Referenzen

ÄHNLICHE DOKUMENTE

Ist einen User-Story immer noch nicht konkret genug, so werden diese User-Stories weiter detailliert und wiederum als User-Story festgehalten.. Kann eine User-Story nicht

Der Workshop resultiert aus der Arbeit des Arbeitskreises „Requirements Engineering in der Lehre“ der Fachgruppe 2.1.6, Requirements Engineering (RE), der Gesellschaft für

en ale A fgabenbe eich e anke , in de Regel a o iie mi eine ge i en Technik- O ien ie ng, kla en Vo gaben, einem hohen Gena igkei an p ch nd de einde igen En cheidba kei , ob eine

[r]

In dem Fall, dass es für einen Benutzer genau einen realen Stakeholder gibt, wird dieser nicht zur Persona, sondern wird weiterhin als Stakeholder betrachtet und in

Leidet Requirements Engineering bei klassischer (monolithischer) Softwareentwicklung daran, dass die Anwender häufig nicht in der Lage sind, komplexe fachliche Anforde- rungen

Ziel ist eine enge Zusammenarbeit zwischen Requirements Engineer und Prozessdesigner auf Grundlage einer gemeinsamen Spezifikation.. Weil Beschreibungen dieser Rollen in der

2.1 Aufgaben für das Requirements Engineering mit Werkzeugunterstützung Entscheidend für die Auswahl des verwendeten RE-Werkzeuges [QA] war die Unterstützung für vorwärts