• Keine Ergebnisse gefunden

15.2 Konfigurationsmanagement für Anforderungen

N/A
N/A
Protected

Academic year: 2021

Aktie "15.2 Konfigurationsmanagement für Anforderungen"

Copied!
12
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Spezifikation und Entwurf von Software 15. Verwaltung von Anforderungen (Requirements Management) Martin Glinz Seite 15-1

15 Verwaltung von Anforderungen (Requirements Management) Was ist Requirements Management?

Planung und Lenkung des RE-Prozesses

Konfigurationsmanagement für Anforderungen

Identifikation

Änderungs- und Freigabewesen

Rückverfolgbarkeit

(2)

15.1 Planung und Lenkung des RE-Prozesses

Globale Ziele und Randbedingungen identifizieren

Was ist das Hauptmotiv des Kunden?

Zeitrahmen?

Kostenrahmen?

Grundsätzliche organisatorische/technische Randbedingungen?

Beteiligte Personen(gruppen) identifizieren (stakeholders), u.a.

Auftraggeber

Endbenutzer: homogen/heterogen? Auswahl geeigneter Repräsentanten?

Chefs der Endbenutzer

Betreiber

Projektleiter

Requirements Ingenieure

Entwickler

(3)

Allgemeines Prozessmodell für die Entwicklung festlegen insbesondere: lineares oder inkrementelles Modell?

Darstellungsmethode(n) und zugehörige Werkzeuge auswählen / festlegen

Struktur der Anforderungsspezifikation (als Dokument) festlegen

Strategie für Anforderungsgewinnung festlegen

Welche Techniken

Welche Leute

Rolle von Prototypen

IST-Analyse notwendig? Umfang?

Validierung der Anforderungen planen: wann / wie / Beteiligte

(4)

15.2 Konfigurationsmanagement für Anforderungen

Identifikation von Anforderungen

Anforderungen müssen individuell identifizierbar sein

Nützlich, um bei Prüfung und Abnahme auf einzelne Anforderungen Bezug nehmen zu können

Notwendig für ein geordnetes Änderungswesen

Notwendig, wenn Rückverfolgbarkeit verlangt ist

(5)

Verfahren

A. Textbasierte Anforderungsspezifikationen

Jede Einzelanforderung erhält einen Identifikator

In der Regel mit Dezimalklassifikation (3.5.1, 3.5.2,...)

Möglich sind auch symbolische Namen (Dialog 5, TN-Admin 6)

Oder eine Kombination von beidem (PPS 2.1.6, BDE 3.4)

B. Teilformale oder formale Modelle

Modellelemente müssen identifiziert werden

Über Namen der Elemente möglich Allerdings:

lange Identifikatoren ➞ unhandlich ➞ evtl. Abkürzungen einführen

Namen müssen änderbar sein ➞ Identifikation nicht unveränderlich

Alternativ Nummerierung der strukturbestimmenden Modellelemente, (z.B.

Pakete, Klassen und Anwendungsfälle in UML)

(6)

Meta-Informationen zu Anforderungen

Notwendige Zusatzinformationen für das Konfigurationsmanagement

Beispiel:

• Identifikation: Identifikator

• Version: Versionsnummer

• Erfassungsdatum: Datum

• Datum der letzten Änderung: Datum

• Priorität: {zwingend, wichtig, hübsch}

• Quellen: [1..*] Quelle

• Status: {vorgeschlagen, wird geprüft, akzeptiert, abgelehnt}

• Ist Bestandteil von: [1..*] Teilmodell

• Gehört zu: Dokument

• Ist abhängig von: [0..*] Anforderung

• Hat Abhängigkeiten: [0..*] Anforderung

Zusätzliche Attribute für Begründungen und Kommentare sind möglich

Quellen sind Personen und/oder Dokumente

(7)

Änderungs- und Freigabewesen für Anforderungen

Für eine geordnete Entwicklung sollten die Anforderungen stabil sein

Anforderungen an Systeme vom P- und vom E-Typ (Lehman 1980)1 sind von Natur aus nicht stabil, sondern unterliegen einer Evolution

Grundsätzlicher Konflikt

Stabilisieren der Anforderungen durch

Freigabe und Fixierung geprüfter Versionen der Anforderungsspezifikation

Portionieren der zu lösenden Probleme (Inkrementelle Entwicklung, Wachstumsmodelle)

Trennen stabiler und veränderlicher Teile

Berücksichtigung der Evolution der Anforderungen durch

Definiertes Änderungswesen

1Lehman, M.M. (1980). Programs, Life Cycles, and Laws of Software Evolution. Proceedings of the IEEE 68, 9, 1060- 1076. (Siehe auch Kapitel 3.1.4 im Vorlesungsskript Software Engineering I)

(8)

Stabile und veränderliche Anforderungen

Stabil: Essentielle Anforderungen

Determiniert durch Grundelemente des Andwendungsbereichs und/oder

Bestandteile essentieller Prozesse

Veränderlich: Bestimmt durch veränderliche Elemente des Anwendungsbereichs oder der Art der Systembenutzung

Variable Anforderungen: Durch veränderliche Parameter des Anwendungs- bereichs bestimmt

Sich entwickelnde Anforderungen: Entstehen bzw. konkretisieren sich erst im Lauf von Systementwicklung und -gebrauch

Benutzungsabhängige Anforderungen: Hängen von der Art und Weise, wie ein System benutzt wird, ab

Kompatibilitätsanforderungen: Bezüglich Geräten, anderer Software, Kommunikationsschnittstellen, etc.

(9)

Der

Änderungsprozess für Anforderungen

Problem Änderungs- antrag

Vorprüfung

Auswirkungs- analyse

Änderungs- vorschlag

Entscheid

Durchführung ja nein

Über- arbeitung

abgelehnt

Neue oder zu ändernde Anforderung

Bedeutung?

Notwendigkeit?

Priorität?

Jetzt nicht, aber in späterer Version?

Welche Anforderungen sind betroffen?

Welche schon erstellten Teile der Lösung sind betroffen?

Kosten/Zeitaufwand für

Durchführung der Änderung?

Durch Steuerkomitee

Anforderungsspezifikation ändern

Alle betroffenen Teile der Lösung ändern

später

Ab- lage

ja, aber

bewilligt

(10)

Änderungswesen: Verantwortlichkeiten

WAS WER

Problemmeldungen, Änderungsanträge Kunde, Requirements Ingenieure, Entwickler Vorprüfung, definitiver Entscheid Steuerkomitee (typisch zusammengesetzt

aus Projektleiter und Vertretern von Auftraggeber und Auftragnehmer) Auswirkungsanalyse,

Überarbeitung von Änderungsvorschlägen, Durchführung von Änderungen

Requirements Ingenieure (alles, was Anforderungen betrifft)

Entwickler (alles, was bereits bestehende Teile der Lösung betrifft)

Es gelten die allgemeinen Regeln des Konfigurationsmanagements, u.a.

Geregelter Dokumentenfluss

Klare Zuständigkeiten und Verantwortlichkeiten

Rückverfolgbarkeit aller Entscheide und Änderungen

(11)

15.3 Rückverfolgbarkeit (traceability) von Anforderungen A. Extern

Wo kommt welche Anforderung her?

Wo ist welche Anforderung entworfen bzw. implementiert?

Jeweils vorwärts und rückwärts:

Aufwand und Ertrag müssen gegeneinander abgewogen werden

Rückverfolgungsbeziehungen müssen gepflegt werden, sonst sind sie nutzlos

Benötigt Werkzeugunterstützung

Dokumente

Quellen Anforderungs-

spezifikation

Lösungskonzept

Module Anforderungen

...

(12)

B. Intern

Für jede Anforderung

Von welchen anderen Anforderungen hängt sie ab?

Welche Anforderungen hängen von ihr ab?

R1 R2 R3 R4 R5 R6

R1

R2 X X

R3 X X

R4 X

R5

R6 X

abhängig von

hat Abhängige

Referenzen

ÄHNLICHE DOKUMENTE

Der durch die technologischen Innovationen und durch die Globalisierung beschleunigte Wandel der Arbeit und der Arbeitsbedingungen bedeutet ebenso wie die

Qualitätspolitik und -ziele müs- sen im QM-Element "Verantwor- tung der obersten Leitung" festge- legt werden. Diese sollten von sämtlichen Bereichen gemeinsam

Insbesondere geht es darum, die eigenen Erlebnisse und Erfahrungen, die im Praktikum und während des Studiums gewonnen und einer (Selbst-) Reflexion unterzogen wurden, noch einmal

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

Die Verwendung der Struktur erweitert die Nützlichkeit von Requirement Pattern in der Entwicklung sozio-technischer Systeme und kann als Grundlage für einen einheitlichen

„Kurzschluss-Patchungen“ durch Endnutzer) – entgegen der Erwartung in die zu deren Erkennung und Unterdrückung eingesetzten Funktionalitäten der Netzkomponenten – immer wieder

 Auch das Kapitel „Quellen“ (oder „Quellenverzeichnis“) wird nicht nummeriert..  Man könnte das Kapitel

Im Folgenden werden notwendige Anforderungen genannt, die an ein e-Voting-System f¨ur staatliche Volksvertreter-Wahlen zu stellen sind, wenn sich die Qualit¨at gegen¨uber dem