1. Sie unterhalten sich mit einem anderen Programmierer über Fehler in der SoftwareEntwicklung. Ihr Gesprächspartner bezeichnet Maßnahmen zur Qualitätssicherung als
„neumodischen Firlefanz“. Schließlich finde sein Entwicklungswerkzeug bei der Übersetzung des Quelltextes Fehler. Damit sei alles andere überflüssig. Nehmen Sie zu dieser Aussage Stellung
2. Trifft die folgende Aussage zu?
„Statische Tests sind bei korrekter Ausführung und sorgfältiger Durchführung ein vollständiger Ersatz für dynamische Tests.“
Begründen Sie bitte Ihre Antwort.
3. Sie lesen, dass ein Hersteller seine Software als fehlerfrei anpreist, da bei dem C0-Test mit einem kontrollflussbasierten dynamischen Test keine Fehler gefunden wurden. Ist die Software tatsächlich fehlerfrei? Begründen Sie auch hier bitte Ihre Antwort.
4. Ein Software-System soll Zahlen in den Zahlenräumen 10 bis 20 und 50 bis 60 verarbeiten. Konstruieren Sie Äquivalenzklassen, die diese Zahlenräume und Ausnahmen abdecken.
Welche Grenzwerte müssen für den Test besonders berücksichtigt werden?
5. Ein hierarchisch strukturiertes System mit hochkomplexen Teilsystemen soll integriert werden. Die Integration soll nach der Top-Down-Strategie erfolgen. Welche Schwierigkeiten können sich dabei ergeben?
Nennen Sie Alternativen zur Top-Down-Strategie.
6. Der folgende Algorithmus soll in einer Schleife die Zahl 5 hintereinander durch die
Zahlen 5, 4, 3 und so weiter dividieren. Da eine Division durch 0 mathematisch nicht
definiert ist, soll die letzte Division durch den Wert 1 erfolgen.
Zahl1 = 5
Solange Zahl1 >=0 {
Verringere Zahl1 um den Wert 1
Dividiere 5 durch Zahl1
Gib das Ergebnis der Rechnung aus
}
Der Algorithmus weist einen groben und einen eher leichten Fehler auf. Finden Sie die Fehler durch einen Schreibtischtest der Anweisungen. Beschreiben Sie die Fehler, und nehmen Sie die erforderlichen Korrekturen vor.
Denken Sie bitte daran, den Algorithmus nach den Korrekturen noch einmal zu -testen.
7. Können Sie beide Fehler in dem Algorithmus aus der vorigen Aufgabe mit einem C1-Test feststellen? Begründen Sie bitte Ihre Antwort.