Anforderungsanalyse Flashcards

(30 cards)

1
Q

Softwarelebenszyklus

A

Ist ein Prozess der Entwicklung und beinhaltet alle Phasen, die ein Software-Produkt von der ersten Idee bis zur Außerbetriebnahme durchläuft

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Phasen im Softwarelebenszyklus

A

Entwicklung
Anwendung
Wartung

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Mögliche Gründe für das Fehlschlagen von Projekten

A
  • unvollständige Anforderungen
  • unzureichende Ressourcen
  • unrealistische Erwartungen
  • Schwächen bei der Planung
  • System wurde nicht mehr gebraucht

Qualität der Anforderungen entscheidend!

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Gründe für mangelhafte Anforderungsanalyse

A
  • Falsche Annahmen der Stakeholder
  • “Fachsprache”
  • Kommunikationsprobleme
  • unterschiedlicher Erfahrungs- und Wissensstand bei den Projektbeteiligten
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Was ist eine Anforderung?

A

Eine Bedingung oder Fähigkeit, die von einem Benutzer zur Lösung eines Problems oder zur Erreichung eines Ziels benötigt wird

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Aktive Stakeholder

A

Aktive Stakeholder arbeiten direkt am Projekt mit oder sind direkt vom Projekt betroffen

  • Leitung
  • Projektmitarbeiter
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Passive Stakeholder

A

Passive Stakeholder sind von der Projektdurchführung oder den Projektauswirkungen nur indirekt betroffen

  • Interessenvertretung
  • Verbände
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Anforderungsanalyse

A

ist ein kooperativer, iterativer, inkrementeller Prozess, dessen ziel es ist zu gewährleisten, dass

  • alle relevanten Anforderungen bekannt und in dem erforderlichen Detaillierungsgrad verstanden sind,
  • die involvierten Stakeholder eine ausreichende Übereinstimmung über die bekannten Anforderungen erzielen,
  • alle Anforderungen konform zu den Dokumentationsvorschriften dokumentiert bzw. konform zu den Spezifikationsvorschriften spezifiziert sind.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Vier Haupttätigkeiten der Anforderungsanalyse

A

Ermitteln

  • Nutzung verschiedener Techniken und Methoden (Interviews, Beobachtung,…)
  • Detaillierung und Verfeinerung

Dokumentieren

  • Beschreibung der Anforderungen
  • Textuelle Beschreibungen
  • Modelle (UML)

Prüfen und abstimmen

  • Prüfung dokumentierter Anforderungen
  • Vielfältige Methoden: Reviews, Prototyping,…)
  • Gewährleistung, dass sie geforderten Qualitätskriterien entsprechen

Verwalten

  • Anforderungsmanagement
  • Strukturierung, Aufbereitung
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Arten von Anforderungen

A

Funktionale Anforderungen
- legt fest, was das Produkt tun soll
Beispiel: Programm soll den Saldo eines Kontos zum Stichtag berechnen

Qualitätsanforderungen,
nichtfunktionale Anforderungen
- geht über die funktionale Anforderung hinaus.
- beschreiben, wie gut das System die Leistung erbringen soll
Beispiel: Programm soll innerhalb einer Sekunde antworten

Randbedingungen (Rahmenbedingungen)
- ist eine organisatorische oder technologische Vorgabe, die die Art und Weise einschränkt, wie das betrachtete System realisiert werden kann.
Beispiel: Programm muss bis zur Messe am … fertig sein

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Aufgabe der System- und Kontextabgrenzung

A

das System von dessen Umgebung abzugrenzen und den Teil der Umgebung zu identifizieren, der die Anforderungen an das zu entwickelnde System bestimmt

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Systemkontext

A

ist der Teil der Umgebung eines Systems, der für die Definition und das Verständnis der Anforderungen des betrachteten Systems relevant ist

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Systemkontext - Welche Aspekte müssen beachtet werden

A
Personen
Systeme im Betrieb
Prozesse
Ereignisse
Dokumente
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Warum Systemkontext betrachten

A
  • Falscher oder fehlender Systemkontext führt zu unvollständigen oder fehlerhaften Anforderungen
  • Anforderungen kommen aus dem Systemkontext
    > Ermittlung und Dokumentation des Systemkontextes ist überaus hilfreich
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Prozessaktivität Überblick

A
  1. Software Spezifikation
  2. Software Design und Implementierung
  3. Überprüfung/Testen
  4. Software Weiterentwicklung
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Software Spezifikation

A

Was soll die Software können
Was sind die Grenzen der Systemoperation & Entwicklung?
Anforderungen analysieren, spezifizieren und validieren

17
Q

Softwaredesign und Implementierung

Definition, Aktivitäten, Methoden

A

Eine Softwarestruktur, die Spezifikationen erfüllt

Aktivitäten:

  • Architektur-, Komponenten- und Interfacedesign, Abstrakte Spezifikation
  • Umsetzung der Anforderungen

Methoden:
- Modelle (Objekt-, Zustands-,…Modelle)

18
Q

Softwareüberprüfung

Phasen der Softwareüberprüfung

A

Validation und Verifikation (Tests)

  • Komponenten sind unabhängig voneinander
  • Systeme und Akzeptanz testen
Phasen:
- Fehler finden
- Wie kann der Fehler beseitigt werden 
- Fehler entfernen
Programm erneut testen
19
Q

Softwarevalidation + Teststufen

A
  • Sind die Überlegungen zum Projekt korrekt?
  • Entspricht es dem Kundenwunsch?

Teststufen:

  • Component - einzelne Komponenten werden getestet
  • Systemtest - Test des gesamten Systems
  • Akzeptiertes Testen - Mit dem Kunden testen (Herausfinden, ob Spezifikationen eingehalten wurden und der Kunde zufrieden ist)
20
Q

Softwareevolution

A
  • Weiterentwicklung
  • Anpassung an wechselnde Wirtschaftsbedingungen
  • Anforderungen können sich ändern/neu hinzu kommen
21
Q

RUP (Rational Unified Prozess)

3 Sichten

A
  • Dynamische: beschreibt Phasen über Zeit
  • Statische: zeigt Aktivitäten des Prozesses
  • Praktische: schlägt gute Anwendung vor
  • Beginn: für System wird Wirtschaftsfall aufgebaut
  • Ausarbeitung: Entwicklung und Verständnis des Problembereichs und Systemarchitektur
  • Konstruktion: Systemdesign, Programmierung, Testen
  • Wandel: System in operativer Umgebung anwenden

Vorgehensweise:
- Software iterativ entwickeln, Anforderungen managen, Komponentenbasierte Architektur nutzen, Qualität & Veränderungen prüfen

22
Q

Computer-aided software engineering

A

Wir sind in der Lage unsere eigenen Werkzeuge für die Systementwicklung herzustellen

  • grafische Editoren
  • Verwaltung von Begriffen
  • GUI
  • Debugger zur Fehlerfindung
  • Übersetzer
23
Q

CASE technology (Werkzeuge)

A

Unterstützt Softwareentwicklung und Evolution (kann Kreativität & Teamarbeit nicht ersetzen)

Aktivitäten:
- Debugger, grafischer Editor, automatischer Übersetzer

24
Q
CASE technology (Werkzeuge)
Klassifikationen
A

Funktionale Perspektive:
- Tools sind nach Spezifikationen gegliedert

Prozessperspektive:
- Tools sind nach Prozessaktivitäten gegliedert

Integrierende Perspektive:
- nach Organisation in Integrierungseinheiten gegliedert

25
``` CASE technology (Werkzeuge) Integrierung ```
Tools: - unterstützen individuelle Prozessaufgaben (z.B. Texteditor) Workbench: - unterstützt Prozessphase (z.B. Spezifikation, Design), beinhaltet Tools
26
Benutzeranforderung - Probleme
- Mangel an Genauigkeit (unterschiedliche Interpretation) - Anforderungen können vermischt werden - Verwirrung/Verschmelzung
27
Systemanforderung
- Genaue Beschreibung der Anforderung - Benutzt strukturiert/beschreibende Sprache - Schnittstellendefinition
28
Lastenheft + Personen
definiert Benutzeranforderung Personen: - Manager/Kunde, Manager/Softwareentwickler
29
Pflichtenheft
Systemanforderungen abhängig von: - Technischer Beauftragte vom Kunden - Endbenutzer des Systems - System/Software Architektur - Entwickler Kriterien für ein gutes Pflichtenheft: - Äußeres Systemverhalten beschrieben - Beschränkungen bzgl. Implementierung vorgeben - Leicht veränderbar/erweiterbar - Als Referenz für spätere Wartung - Leichte Systemerweiterung
30
Nichtfunktionale & Funktionale Anforderungen
Nichtfunktionale Anforderungen: - Zuverlässigkeit - Performance - Stabilität Funktionale Anforderungen - Beschreibung was das System können muss