3. SE - 3. Spezifikationen von Software Flashcards
Was steht im Lastenheft?
- Anforderungen aus Sicht des Auftraggebers
- Ist-Zustand VS. Soll-Zustand
- Funktionale Anforderungen
- Nicht funktionale Anforderungen
- Grundlage der Angebote potentieller Autragsnehmer
Was steht im Pflichtenhelft?
- Realisierungsvorhaben aus Sicht des Auftragsnehmers
- detailliert das Lastenheft (baut auf Lastenheft auf)
- enthält Kriterien für Abnahme
- begründet grundsätzliche Plattformentscheidungen
Welches Heft ist für Auftragnehmer und welches Heft für Auftraggebers?
Auftraggebers - Lastenheft
Auftragnehmer - Pflichtenheft
Warum müssen Anforderungen an Softwaresystem schriftlich fixiert werden?
um Missverständnisse zu vermeiden
damit man später auch noch weis was gefordert ist
Was beschreiben die funktionalen Anforderungen?
Was System leisten soll
Wie es auf bestimme Eingaben reagieren soll
Wie es sich in bestimmten Situation verhalten soll
Was beschreiben nicht funktionale Anforderungen?
Beschränkungen vom System angeboten Dienste
zB. zeitliche Einschränkung, Einhaltung von Standards, Kompatibilität mit Plattformen
Worin haben Nichtfunktionale Anforderungen ihren Ursprung? und Bsp
- dem Produkt (min. Anzahl concurrent users)
- der Organisationen (Zugriff auf Unternehmensdatenbanken)
- externe Quellen (Gesetze, Standards)
Funktionale Anforderungen sollen … (2)
… vollständig sein, also alles enthalten was der Benutzer benötigt
… konsistent sein, also keine Widersprüche enthalten
Systemziel von Softwareanforderungen
Nichtfunktionale Anforderungen (besser sind messbare Formulierungen)
Was sind messbare Formulierungen? Nenne Bsp.
- Performance (messbar in Transaktionen pro Sekunde bei gegebener Zahl von concurrent users)
- Portierbarkeit (konkretisierbarkeit mittels Auflistung der Zielplattformen)
Was ist ein Systemziel?
System sollte für erfahrene Benutzer einfach zu bedienen und so aufgebaut sein, dass Fehler durch den Benutzer minimiert werden
Wie können Softwareanforderungen formuliert sein?
- in natürlicher Sprache
- in vorstrukturierten Formularen (Bsp. Use Case Dokument)
- als graphisches Modell (Bsp. Sequenz- und Aktivitäten Diagramme aus der UML)
Was sind die 3 Nachteile wenn Anforderungen in natürlicher Sprache formuliert sind?
- ungenaue Formulierung
- verwirrende Formulierung
- Gefahr der Verschmelzung von Anforderungen
Wer hilft bei der Sammlung der Anforderungen?
Softwareteam arbeitet u.a. mit Kunden und Endbenutzern zusammen
Welche Schwierigkeiten sind möglich wenn Softwareteam mit Kunden und Endbenutzern zusammenarbeitet für die Sammlung der Anforderungen?
- Beteiligten haben unklare, unrealistische Erwartungen
- Können ihre Erwartungen nicht in Worte fassen
- Beschreiben Erwartungen in einer unternehmensspezifischen Terminologie
- Erwartungen verschiedener Beteiligter widersprechen sich
Nenne bis zu 4 möglichen Interview Fragen um einen Use Case zu erfassen
Was tun Sie, damit dieser Anwendungsfall beginnt? (Trigger)
Welche Voraussetzungen müssen dafür erfüllt sein (Pre-conditions)
Welche Aktionen laufen ab, wenn dabei alles wie gewünscht funktioniert?(Szenario/Ablauf, Abweichungen vom Normalfall)
Welchen Systemzustand erwarten Sie nach dem Szenario? (Post-conditions)
Was soll bei möglichen Interview Fragen vor allem vermieden werden?
IT-Terminologie. Der Kunde kann vllt nichts mit Begriffen wie “Architektur” oder “Komponente” anfangen
Nachdem Anforderungen gesammelt sind, werden sie…
… klassifiziert, strukturiert, gruppiert
… priorisiert, verhandelt, Konflikte gelöst
… dokumentiert
Was passiert in “Review Meetings”?
Anforderungen werden mit Vertretern von Anbieter und Kunden validiert
Was ist “Change Management”?
Wenn Anfroderungen verabschiedet, ändern sie sich normalerweise nochmals
Um Überblick nicht zu verlieren, muss Prozess geben, der beschreibt, wie über Änderungen entschieden wird und wie dokumentiert
Wann kommen besondere Anforderungen kritischer Systeme zum Ausdruck?
- in funktionalen Anforderungen (Bsp. Funktionen zur Widerherstellung)
- nicht funktionalen Anforderungen (Verfügbarkeit beschreiben)
- in abstrakten Sicherheitsanforderungen
Wie beschreibt Sommerville die Abstrakten Sicherheitsanforderungen?
als “shall not”-requirements
Nenne 2 Bsp für abstrakte Sicherheitsanforderungen
- sociales network: System soll Benutzern nicht erlauben, mehr als 20 Profildaten anderer Benutzer pro Stunde einzusehen
- Kontoführungssystem einer Bank: System soll einem Benutzer alleine keinen Zugriff auf Konten eigener Bankmitarbeiter gewähren (Vier-Augen-Prinzip)