Softwaretest: Äquivalenzklassentest & Grenzwertanalyse

Kurzzusammenfassung:

In diesem Lehr-Lern-Arrangement geht es darum, dass Studierende Formen des Blackboxtests – Äquivalenzklassentest und Grenzwertanalyse – anhand eines praktischen Beispiels durchführen. Sinn und Zweck der beiden Methoden bzw. der Durchführung von Blackboxtests sollen Studierenden durch den praktischen Einsatz verdeutlicht werden.


Übersicht

Ziele:

  • Ableiten von Äquivalenzklassen zur Äquivalenzklassenanalyse
  • Ableiten von Grenzwerten zur Grenzwertanalyse

Didaktische Funktion(en):

  • Informationsaneignung
  • Transfer/Anwendung

Hintergrund / didaktisch-methodische Einordnung:

Sozialform(en):

Einzelarbeit, Partnerarbeit

Anzahl der Lernenden:

Ab 1 Person


Voraussetzungen und Ressourcen

Voraussetzungen:

  • Lehrperson: Erfahrungen im Bereich Software Test; Kenntnisse zur Durchführung von Äquivalenzklassentests und Grenzwertanalyse
  • Lernende: Software Engineering Studierende, die bereits eine theoretische Grundlagenvorlesung besucht haben; Theoretische Grundlagen im Bereich Softwaretestverfahren

Ausstattung & Medien:


Ablauf
  1. Die Studierenden erhalten mehrere Szenarien und zum Teil Codeausschnitte mit der Anweisung Äquivalenzklassentests und Grenzwertanalysen durchzuführen. Die Codeausschnitte beschreiben vollständig implementierte Funktionen in C++ (Da ein Blackboxtest durchgeführt werden soll, sind diese eigentlich nicht notwendig. Dies ist allerdings intendiert, um Studierenden die Unterschiede zwischen Blackbox- und Whiteboxtestverfahren zu verdeutlichen)
  2. Die Studierenden (alleine oder in Gruppen) bearbeiten selbstständig die Aufgaben des Übungsblattes.
  3. Während der Übung steht der Lehrende bereit, um aufkommende Fragen zu beantworten oder Hilfestellung bei Problemen zu geben.
  4. Die Studierenden dokumentieren ihre Ergebnisse direkt im Übungsblatt in bereits vorgegeben Tabellenstrukturen.

Hinweise zur Vorbereitung:

  • Konzeption von verschiedenen Szenarien, die Äquivalenzklassentests und Grenzwertanalyse erfordern
  • Erstellung eines Bewertungsschemas für die Abgaben

Hinweise zur Nachbereitung:

  • Korrektur der Abgaben anhand eines Bewertungsschemas
  • Analyse der Abgaben auf Probleme der Studierenden

Hinweise zur Dauer: 90-minütige Übung


Kritische Einordnung

Vorteile und Stärken:

Die Studierenden bauen selbstständig ein vertieftes theoretisches und praktisches Wissen in dem Gebiet der Blackboxtestverfahren auf.

Grenzen und Schwächen:

Keine


Literatur und weiterführende Hinweise
  • H.G. Schmidt (1983). Problem‐based learning: rationale and description. In: Medical Education, Vol. 17, pp. 11-16
  • M. J. Prince, R. M. Felder (2006). Inductive teaching and learning methods: Definitions, comparisons, and research bases. In: Journal of Engineering Education, vol. 95, no. 2, pp. 123-138

Interviewbasierte Anforderungsanalyse

Kurzzusammenfassung:

In diesem Lehr-Lern-Arrangement geht es darum, dass Studierende die Fähigkeit erlernen, Anforderungen nach der Schablone von Chris Rupp zu definieren.  Die benötigten Informationen für die Erstellung, werden mittels Interviews verschiedener Stakeholder bereitgestellt. Studierende sollen dabei die Rollen und Verantwortungen des Anwenders wie auch des Stakeholders kennenlernen. Außerdem sollen Studierende in der Lage sein zwischen funktionalen und nicht-funktionalen Anforderungen unterscheiden zu können.


Übersicht

Ziele:

  • Verstehen und Anwenden der Anforderungsschablone von Chris Rupp
  • Unterscheidung zwischen funktionalen und nicht funktionalen Anforderungen
  • Ableiten von Anforderungen an eine Software

Didaktische Funktion(en):

  • Transfer / Anwendung

Hintergrund / didaktisch-methodische Einordnung:

Sozialform(en):

Kleingruppenarbeit (3-5), Partnerarbeit

Anzahl der Lernenden:

Ab 1 Person


Voraussetzungen und Ressourcen

Voraussetzungen:

  • Lehrperson: Erfahrungen in Requirements Engineering; Kenntnisse der Schablone nach Chris Rupp
  • Lernende: Software Engineering Studierende, die bereits eine theoretische Grundlagenvorlesung besucht haben; Theoretische Grundlagen in Requirements Engineering

Ausstattung & Medien:


Ablauf
  1. Die Studierenden erhalten das Übungsblatt zur interviewbasierten Anforderungsanalyse sowie die zugehörigen Stakeholder-Interviews über die Lernplattform.
  2. Sie bearbeiten das bereitgestellte Übungsblatt in Partnerarbeit. In den Interviews werden Statements mit Projektbeteiligten gelistet, die die Anforderungen an das Produkt enthalten, die es zu identifizieren und auszuformulieren gilt. Außerdem ist ein Template enthalten, in das die Anforderungen eingetragen werden sollen.
  3. Während der Übung steht der Lehrende bereit, um aufkommende Fragen zu beantworten oder Hilfestellung bei Problemen zu geben.
  4. Die Studierenden dokumentieren ihre Ergebnisse im bereitgestellten Template und geben dieses über die Lernplattform ab.

Beispiele oder Materialien:

Creative Commons Lizenzvertrag
Dieses Werk ist lizenziert unter einer Creative Commons Namensnennung – Nicht-kommerziell – Weitergabe unter gleichen Bedingungen 4.0 International Lizenz.

Aufgabe:

  • Überlegen Sie sich zunächst tabellarisch mögliche Anwender und Stakeholder.
    • Bearbeiten Sie dazu die Tabelle im Template unter Abschnitt 3.1.. Benennen Sie die Stakeholder, beschreiben Sie diese und überlegen Sie sich Verantwortungen, die die jeweiligen Stakeholder haben.
  • Überlegen Sie sich in welcher Umgebung Coff-E betrieben wird und was den Stakeholdern wichtig ist.
  • Teilen Sie die Requirements in sinnvolle Kategorien (mindestens aber nicht-funktionale/funktionale Anforderungen) ein.
  • Geben Sie den Requirements eine sinnvolle ID (dort kann man zum Beispiel auch die Kategorie abbilden).
  • Verwenden Sie bei der Formulierung der Anforderungen die Schablone von Chris Rupp.

Hinweise zur Vorbereitung:

  • Erstellung von Interviews für die Anforderungsanalyse
  • Konzeption von Aufgaben für die Studierenden
  • Erstellung eines Bewertungsschemas für die Abgaben

Hinweise zur Nachbereitung:

  • Korrektur der Abgaben anhand des Bewertungsschemas

Hinweise zur Dauer: 90-minütige Übung + Vervollständigung außerhalb der Übung


Kritische Einordnung

Vorteile und Stärken:

Die Studierenden bauen selbstständig ein vertieftes theoretisches und praktisches Wissen in dem Gebiet des Requirement Engineerings auf.

Grenzen und Schwächen:

Die Übung basiert auf Textarbeit, die auch mit realen Stakeholdern durchgeführt werden könnte. Ein weiterer digitalisierter Ansatz wurde mit der Virtual Reality durchgeführt.


Literatur und weiterführende Hinweise

Qualitätskriterien von Requirements

Kurzzusammenfassung:

In diesem Lehr-Lern-Arrangement geht es darum, dass Studierende ihnen vorgelegte, teils schlecht formulierte Requirements erkennen und mit Hilfe einer beigefügten Checkliste zunächst nach ihrer Qualität beurteilen. Anschließend sollen diese unter Anderem mit Hilfe der Anforderungsschablone von Chris Rupp verbessert werden. Zusätzlich benötigte Informationen zur Verbesserung der Requirements erhalten die Studierenden aus zusätzlich bereitgestellten Interviews. Dieses LLA folgt dem LLA zur interviewbasierten Anforderungsanalyse.


Übersicht

Ziele:

  • Erkennen von schlecht formulierten Requirements
  • Einordnung der Qualität von Requirements mit Hilfe einer Checkliste
  • Verbesserung von schlecht formulierten Requirements
  • Verstehen und Anwenden der Anforderungsschablone von Chris Rupp

Didaktische Funktion(en):

  • Wiederholung / Festigung
  • Transfer / Anwendung

Hintergrund / didaktisch-methodische Einordnung:

Sozialform(en):

Partnerarbeit

Anzahl der Lernenden:

Ab 1 Person


Voraussetzungen und Ressourcen

Voraussetzungen:

  • Lehrperson: Erfahrungen in Requirements Engineering; Kenntnisse der Schablone nach Chris Rupp
  • Lernende: Software Engineering Studierende, die bereits eine theoretische Grundlagenvorlesung besucht haben; Theoretische Grundlagen in Requirements Engineering

Ausstattung & Medien:


Ablauf
    1. Studierende erhalten das Übungsblatt zur Evaluation von Requirements über die Lernplattform. Zentrale Aufgabe ist es vorab beabsichtigt schlecht formulierte Anforderungen zu erkennen und zu korrigieren. Es werden Statements bzw. Interviews mit Projektbeteiligten mitgeliefert, die als Hilfestellung und Informationsquelle dienen und bei der Verbesserung der Requirements unterstützend wirken. Außerdem ist eine Checkliste für Requirements (vorgeschlagen von Chris Rupp & den Sophisten) enthalten, mit Hilfe die Studierenden die Requirements bewerten sollen.
    2. Die Studierenden dokumentieren ihre Ergebnisse in der bereitgestellten Checkliste mit Hilfe einer dreistufigen Priorisierung (vollständig erfüllt/teilweise erfüllt/nicht erfüllt) und einem Textdokument mit den verbesserten Requirements und geben dieses über die Lernplattform ab.
    3. Die Studierenden können dann mit dem Lehrenden offene Fragen klären.

Beispiele oder Materialien:

Creative Commons Lizenzvertrag
Dieses Werk ist lizenziert unter einer Creative Commons Namensnennung – Nicht-kommerziell – Weitergabe unter gleichen Bedingungen 4.0 International Lizenz.

Beispiel-Aufgabe:
Bewerten Sie die nachfolgend angegebenen Anforderungen anhand der Requirements Checkliste (füllen Sie sie entsprechend aus), identifizieren Sie eventuelle unsachgemäße oder fehlerhafte Formulierungen (z.B. nicht eindeutig) und korrigieren Sie das Requirement entsprechend!

Hinweise zur Vorbereitung:

  • Erstellung von Interviews für die Anforderungsanalyse
  • Vorbereitung von nicht korrekten Requirements mit verschiedenen Fehlerarten
  • Konzeption von Aufgaben für die Studierenden
  • Erstellung eines Bewertungsschemas für die Abgaben
  • Vorbereitung einer Checkliste für Requirements

Hinweise zur Nachbereitung:

  • Korrektur der Abgaben anhand des Bewertungsschemas
  • Analyse der Abgaben auf Probleme der Studierenden

Hinweise zur Dauer: 90-minütige Übung


Kritische Einordnung

Vorteile und Stärken:

Die Studierenden bauen selbstständig ein vertieftes theoretisches und praktisches Wissen im Gebiet des Requirement Engineerings auf.

Grenzen und Schwächen:

Die Bewertung von Requirements ist oft nicht objektiv, d.h. nach besonderen Algorithmen (Vorgehensweisen) durchführbar. Dies sorgt bei Studierenden für Probleme und macht eine Bewertung nur auf Basis der Checkliste zum Teil schwierig. Eine Begründung der Studierenden, warum eine Qualitätskriterium in welchem Grad  erfüllt ist kann hier für den Dozierenden hilfreich sein.

Dozierende sollten Studierenden vermitteln, dass es in vielen Fällen im Bereich des Software Engineering, hier am Beispiel der Bewertung von Anforderungen nicht eine einzige korrekte Lösung gibt und mehrere Möglichkeiten existieren gute Anforderungen zu formulieren.


Literatur und weiterführende Hinweise
  • H.G. Schmidt (1983). Problem‐based learning: rationale and description. In: Medical Education, Vol. 17, pp. 11-16
  • M. J. Prince, R. M. Felder (2006). Inductive teaching and learning methods: Definitions, comparisons, and research bases. In: Journal of Engineering Education, vol. 95, no. 2, pp. 123-138
  • die Sophisten (2020). Abgerufen am 08.03.2021 unter: https://www.sophist.de/unsere-themen/requirements-engineering/