Requirement Engineering Flashcards
K7 LE 1
Was ist die Anforderungsanalyse und wozu dient sie?
Anforderungen des Kunden zu dem zu entwickelnden Softwareprodukts zu finden
Widersprüche zu bereinigen und zu dokumentieren
Ist die Basis für Spezifikation ind Validierung, ob Projektziele erreicht wurden
Welche Erhebungstechniken gibt es für die Anforderungsanalyse?
Interview Fragebogen Beobachtung Selbstaufschreibung Dokumentationsauswertung CRC-Karten
Welches Hauptziel hat die Erhebungsmethode Interview?
Hauptziel ist die Gewinnung qualitativer Informationen und Etablierung konstruktiver Zusammenarbeit
Hinsichtlich welcher Gesichtspunkte kann man Interviews gestallten?
standartisiert, halb oder garnicht standartisiert
weiches, neutrals oder hartes
offene oder geschlossene Fragen
direkte oder indirekte Fragen
Abschnitte eines Interviews?
Planung
Durchführung
Auswertung
Vorteile eines Interviews?
Vertiefung durch Zusatzfragen und Verständnisfragen
Möglichkeit zur Steigerung der Motivation des/der Befragten
Nachteile eines Interviews?
Zeitaufwand
hohe Qualifikationsanforderungen an den Interviewer
Störung des Interviewten bei der Aufgabenerfüllung
Fragebogen? Vor- und Nachteile?
ergänzendes Hilfsmittel, individual oder Gruppen-Fragebogen
Vorteile
schriftliches Ergebnis
geringe Kosten
Nachteile
geringe Antwortquote
Missverständnis möglich
aufwendige Auswertung
Erhebungswerkzeug “Beobachtung”?
Deckung von Informationsbedarf durch sinnliche Wahrnehmung ohne Beteiligung des Auftraggebers
Hilfreich in Softwareentwicklung von Arbeitsablauf eine Benutzerschnittstelle abzuleiten
Selbstaufschreibung? Vor- und Nachteile?
strukturierte Aufzeichnung relevanter Ereignisse und Handlungen
Dokumentation durch die Aufgabenträger ohne Mitwirkung des Systemplaners
Vorgehensrahmen Festlegung Vorbereitung Mitarbeiterinformationen Durchführung
Vorteile
Möglichkeit der Totalaufnahme
Entlastung des Systemplaners
Nachteile
Mögliche absichtliche Verfälschung
Widerstand seitens Aufgabenträger
Dokumentenauswertung?
meist leicht erhältliche Informationsquellen, Relevanz sollte aber immer hinterfragt werden
- Dokumentation bestehender Systeme
(sollten vollständig und aktuell sein) - Vorhandene Studien
(ergebnisslose oder fehlgeschlagene Untersuchungen bieten wertvolle Informationen) - Belege und Formulare
Was sind CRC-Karten?
Class Responsibilty Collaboration
Entwicklung eines Klassenmodells innerhalb einer Gruppe von 5-6 Mitgliedern
Abfolge einer CRC-Sitzung?
Zusammenstellung der Gruppe
Vorbereitung
Brainstorming (Hauptwörter = Klassen, Verben = Verantwortlichkeiten)
Klassen bilden (mit gefundenen Begriffen) (eventuell Unter- & Überklassen eintragen)
Durchspielen von Scenarien (use cases) (Normalfall, dann Ausnahme und Fehlersituationen)
Sollte Scenario nicht funktionieren werde Klassen entsprechend modifiziert (use cases können auch hinterfragt werden)
Anschließend Dokumentation der letzgültigen Klassen
Vorteile von CRC-Karten?
Überall durchführbar (“low tech”, post-it-cards)
Betonung objektorientierten Programmieren
kreative Beschäftigung mit den zu entwerfenden System
Nachteile von CRC-Karten?
wenig formales Verfahren
Ergebnis nur als Grobentwurf, Details fehlen