Entscheidungstabelle

Was ist eine Entscheidungstabelle?

Eine Entscheidungstabelle ist eine tabellarische Darstellungsform von Regeln, die aus einer Kombination von Bedingungen (z. B. Eingaben, Auslösern) und den dazugehörigen Aktionen (z. B. Ausgaben, Wirkungen) bestehen. Diese Tabellen dienen dazu, verschiedene mögliche Bedingungskombinationen zu dokumentieren und die entsprechenden Handlungen oder Entscheidungen, die unter diesen Bedingungen ausgeführt werden müssen, festzulegen. Entscheidungstabellen werden häufig im Testdesign eingesetzt, um Testfälle zu erstellen, die alle möglichen Kombinationen von Bedingungen und Aktionen abdecken.

Merkmale einer Entscheidungstabelle

  • Bedingungen: Die Spalten der Entscheidungstabelle repräsentieren die Bedingungen, die erfüllt sein müssen, um eine bestimmte Aktion auszulösen.
  • Aktionen: Die Zeilen der Tabelle definieren die Aktionen, die ausgeführt werden, wenn bestimmte Kombinationen von Bedingungen zutreffen.
  • Regeln: Jede Kombination von Bedingungen und den dazugehörigen Aktionen stellt eine Regel dar.
  • Vollständigkeit: Eine gut gestaltete Entscheidungstabelle deckt alle möglichen Kombinationen von Bedingungen ab, um sicherzustellen, dass alle möglichen Szenarien getestet werden.
  • Testfall-Generierung: Entscheidungstabellen können verwendet werden, um alle relevanten Testfälle zu entwickeln und sicherzustellen, dass alle wichtigen Szenarien abgedeckt werden.

Beispiel einer Entscheidungstabelle

Angenommen, wir haben ein einfaches System zur Berechnung von Versandkosten, das zwei Bedingungen berücksichtigt:

  • Bedingung 1: Ist der Bestellwert höher als 50 EUR?
  • Bedingung 2: Ist der Kunde ein Premium-Kunde?

Hier ist eine beispielhafte Entscheidungstabelle zur Berechnung der Versandkosten:

RegelBedingung 1 (Bestellwert > 50 EUR)Bedingung 2 (Premium-Kunde)Aktion (Versandkosten)
1JaJa0 EUR (kostenlos)
2JaNein5 EUR
3NeinJa10 EUR
4NeinNein15 EUR
  • Regel 1: Wenn der Bestellwert über 50 EUR liegt und der Kunde ein Premium-Kunde ist, sind die Versandkosten 0 EUR.
  • Regel 2: Wenn der Bestellwert über 50 EUR liegt, der Kunde aber kein Premium-Kunde ist, betragen die Versandkosten 5 EUR.
  • Regel 3: Wenn der Bestellwert unter 50 EUR liegt und der Kunde ein Premium-Kunde ist, betragen die Versandkosten 10 EUR.
  • Regel 4: Wenn der Bestellwert unter 50 EUR liegt und der Kunde kein Premium-Kunde ist, betragen die Versandkosten 15 EUR.

Vorteile der Entscheidungstabelle

  • Einfache Visualisierung: Entscheidungstabellen ermöglichen eine klare und strukturierte Darstellung komplexer Entscheidungslogiken.
  • Vollständigkeit: Sie helfen sicherzustellen, dass alle möglichen Kombinationen von Bedingungen und Aktionen berücksichtigt werden, was zu einer vollständigen Testabdeckung führt.
  • Reduzierung der Komplexität: Anstatt eine Vielzahl von If-Else-Bedingungen manuell zu durchlaufen, bietet die Entscheidungstabelle eine kompakte und übersichtliche Darstellung.
  • Fehlervermeidung: Durch die systematische Auflistung aller Regeln können Unklarheiten oder Fehler im Entscheidungsprozess frühzeitig erkannt und behoben werden.

Hinweise für die Praxis

  • Komplexität der Bedingungen: Wenn es zu viele Bedingungen gibt, kann die Entscheidungstabelle sehr groß werden. In solchen Fällen können Dekompositionstechniken wie die Verwendung von Teiltabellen oder die Anwendung von Äquivalenzklassen helfen, die Tabelle überschaubar zu halten.
  • Testfallabdeckung: Entscheidungstabellen sind besonders hilfreich, um sicherzustellen, dass alle wichtigen Testfälle abgedeckt werden, besonders wenn viele Kombinationen von Eingabedaten möglich sind.
  • Verwendung in der Automatisierung: Entscheidungstabellen können zur Automatisierung von Tests verwendet werden, indem sie als Grundlage für die Testfall-Generierung dienen, insbesondere bei komplexen Geschäftsregeln oder Algorithmen.

Eine Entscheidungstabelle ist ein effektives Werkzeug, um komplexe Entscheidungsprozesse klar zu strukturieren und alle relevanten Bedingungskombinationen zu erfassen. Sie erleichtert sowohl die Testfallgenerierung als auch die Dokumentation von Geschäftsregeln und ist besonders nützlich in Umgebungen, in denen viele Bedingungen und Entscheidungen miteinander kombiniert werden müssen.