Anforderungsmanagement Flashcards
Was ist die Motivation für Anforderungsmanagement?
- steigende Komplexität
- steigender Kostendruck
- kürzere Entwicklungszeit
- softwarebasierte Innovationen
- steigender Qualitätsanspruch
Innovativere, individuellere und komplexere Systeme müssen schneller, mit einer höheren Qualität und zu geringerem Preis entwickelt werden.
Was sind die häufigen Fehler beim Umgang mit Anforderungen
- Kunden sind bei der Entwicklung unzureichend repräsentiert –> Was will der Kunde/Nutzer wirklich?
- kritische Anforderungen werden oft übersehen (“show stopper” werden nicht oder zu spät identifiziert)
- Oft werden nur funktionale Anforderungen berücksichtigt
- Es kommt zu unkontrollierten Änderungen von Anforderungen –> zum Steuern/Verwalten von Änderungen sind Prozesse notwendig
- Beschreibung von Anforderungen ist ein (wichtiger) Entwurfsschritt (zwei Dokumente Anforderungen-Was (Lastenheft), Entwurfs-/Lösungsspezifikation-Wie(Pflichtenheft))
- Anforderungen werden oft nicht (ausreichend) geprüft
- -> Testen im Entwurfsprozess - Teilweise Perfektionierung bei der Umsetzung von Anforderungen und Spezifikationen (“Es hat gerade Spass gemacht”) –> entwickeln weiterer Funktionen die nicht vereinbart wurden
Was sind die zwei Dokumente für die Beschreibung von Anforderungen und was ist ihre Funktion?
- Was? Anforderungen –> LASTENHEFT
2. Wie? Entwurfs-/Lösungsspezifikation–> PFLICHTENHEFT
Was ist der Hauptgrund für den Misserfolg von Projekten?
Laut einer Studie von Standish Group in 2006 ist unzureichendes Anforderungsmanagement der Hauptgrund für den Misserfolg von Projekten.
Was sind die Hauptgründe für Projektprobleme?
- Ungenügend geklärte Anforderungen
- -> Nicht jeder Beteiligte kennt nachvollziehbar die Wünsche an die Software - Nicht sauber definierte Ziele
- -> Wünsche an die Software sind bspw. nicht eindeutig formuliert - Probleme bei der Beherrschung von Änderungen der Anforderungen
- -> Die Menge der Wünsche an die Software wird nicht adäquat verwaltet/verfolgt/formalisiert
Wie viele Projekte sind erfolgreich?
Erst 35% sind erfolgreich. 46% sind zu spät oder über Budget und 19% sind abgebrochen.
Was sind die Herausforderungen beim Entwurf für Anforderungsmanagement?
- steigende Komplexität:
a) wachsende Anzahl von Funktionen
b) wachsende System- und Informationsvernetzung
c) Variantenvielfalt –> Beispiel Fahrzeugausstattung - steigender Kostendruck:
a) internationaler Wettbewerb mit Forderung nach immer niedrigen Preisen - kürzere Entwicklungszeit:
a) schnellere Umsetzung von Kundenwünschen -> innovative Produkte schneller am Markt - softwarebasierte Innovationen:
a) Vorteile von Software prägen immer stärker Produktentwicklungen - steigender Qualitätsanspruch
Für welche Aspekte sorgt das Anforderungsmanagement?
- Technischer Aspekt:
a) systematische, disziplinierte und qualitativ erfassbares Vorgehen beim Spezifizieren (d.h. Erfassen, Beschreiben und Prüfen)
b) Verwalten von Anforderungen an Systeme/Software - Kundensicht einbeziehen:
a) Verstehen und Beschreiben, was die Kunden wünschen oder brauchen
b) Kommunikationsmittel - Risikominimierung:
a) Spezifikation und Verwaltung von Anforderungen mir dem Ziel, das Risiko zu minimieren
b) Systeme entwickelt werden, welche dem Kunden nichts nützen
Was bedeutet die Kundensicht einzubeziehen?
Kundensicht einbeziehen:
a) Verstehen und Beschreiben, was die Kunden wünschen oder brauchen
b) Kommunikationsmittel
Was bedeutet das Risiko zu minimieren?
Risikominimierung:
a) Spezifikation und Verwaltung von Anforderungen mir dem Ziel, das Risiko zu minimieren
b) Systeme entwickelt werden, welche dem Kunden nichts nützen
Was gehört zu dem technischen Aspekt des RE?
Technischer Aspekt:
a) systematische, disziplinierte und qualitativ erfassbares Vorgehen beim Spezifizieren (d.h. Erfassen, Beschreiben und Prüfen)
b) Verwalten von Anforderungen an Systeme/Software
Diagramme von Anforderungen Klassifikation
Folie 11
Anforderung
FUNKTIONAL UND NICHTFUNKTIONAL usw
Was ist die Definition von dem Begriff Anforderung?
Eine Anforderung beschreibt, was der Kunde oder Benutzer von einem Produkt erwartet. (Bedingungen, Attribute, Ziele, Nutzen…)
Was ist die Definition von dem Begriff Anforderung, laut IEEE 610.12-1990?
Eine Anforderung ist:
(1) Eine Bedingung oder Eigenschaft, die ein System oder eine Person benötigt, um ein Problem zu lösen oder ein Zeil zu erreichen.
(2) Eine Bedingung oder Eigenschaft, die ein System oder eine Systemkomponente aufweisen muss, um einen Vertrag zu erfüllen oder einem Standard, einer Spezifikation oder einem anderen formell auferlegten Dokumente zu genügen.
(3) Eine dokumentierte Repräsentation einer Bedingung oder Eigenschaft wie in (1) oder (2) definiert.
Was ist die Definition von funktionalen Anforderungen?
Eine funktionale Anforderung:
Definiert eine vom System bzw. von einer Systemkomponente bereitzustellende Funktion oder einen bereitzustellenden Service.
a) Als Benutzeranforderung kann eine funktionale Anforderung sehr allgemein beschrieben sein.
b) Als Bestandteil einer Spezifikation beschreibt eine FA detailliert Eingaben und Ausgaben sowie bekannte Ausnahmen.
Was sind die Merkmale von funktionalen Anforderungen?
- Können sehr allgemein beschrieben sein
- Innerhalb einer Spezifikation:
a) Detaillierte Eingaben und Ausgaben. z.B. Übertragungsfunktionen
b) Ausnahmen
c) Randbedingungen
d) Verwendung einer eindeutigen Sprache (möglichst Mathematik)
Geben Sie ein Beispiel von einer funktionalen Anforderung
Funktionale Anforderung an das Gebäudesicherheitssystem
R1: Stellt ein Glasbruchsensor fest, dass eine Glasscheibe beschädigt wurde, muss das System den Sicherheitsdienst benachrichtigen.
Was ist die Definition von nichtfunktionalen Anforderungen?
Nichtfunktionale Anforderungen (NFA) sind Qualitätseigenschaften und Einschränkungen eines Produktes. NFA beschreiben Bedingungen, die an die Dienste und Leistungen des Systems oder der Systemerstellung gestellt werden.
Eine systematische Struktur von nichtfunktionalen Anforderungen liefert der ISO-Standard 9126.
Zeichen Sie die Diagramme von Anforderungen Klassifikation
Folie 9
Was sind die Merkmale von nichtfunktionalen Anforderungen?
Nichtfunktionale Anforderungen (NFA):
- Sind Qualitätseigenschaften
- Rahmenbedingungen (Einschränkungen) eines Produktes
- Beschreiben Bedingungen, die an die Dienste und Leistungen des Systems oder der Systemerstellung gestellt werden.
- lassen sich unterscheiden in:
a) unterspezifizierte funktional
b) Qualitätsanforderungen - Die meistern der sogenannten NFA verbergen unzureichend verstandene und unzureichend spezifizierte funktionale Anforderungen.
Was ist die Definition von unterspezifizierten funktionalen Anforderungen?
Unterspezifizierte funktionale Anforderungen sind oftmals fehlende Detailierung von:
- funktionalen Anforderungen
- Qualitätsanforderungen
Was sind die Merkmale von unterspezifizierten funktionalen Anforderungen?
Unterspezifizierte funktionale Anforderungen sind oftmals fehlende Detailierung von:
- funktionalen Anforderungen
- Qualitätsanforderungen
Geben Sie ein Beispiel von einer unterspezifizierten funktionalen Anforderung
R1 Das System soll sicher sein.
Das Adjektiv “sicher” ist unterschiedlich interpretierbar. Eine Umsetzung ist im späteren System nicht objektiv überprüfbar/nachweisbar.
Das bedeutet, dass wir diese Anforderung konkretisieren müssen.
Konkretisierung von R1:
R1.1 Vor der Benutzung des Systems muss sich der Nutzer authentifizieren.
R1.2 Die Authentifizierung soll über eine digitale Signatur erfolgen
R1.3 Der Datenaustausch zwischen dem Computer des Benutzers und dem System muss verschlüsselt erfolgen
R1.4 Die Verschlüsselung des Datenaustauschs über gesicherte Netze soll durch ein asymmetrisches Verschlüsselungsverfahren mit einer Schlüssellänge von mindestens 1024 Bit erfolgen