Decision+Table

Decision table
Decision tables, like flowcharts and if-then-else and switch-case statements, associate conditions with actions to perform, but in many cases do so in a more elegant way. In the 1960s and 1970s a range of "decision table based" languages such as Filetab were popular for business programming.
 * Decision tables** are a precise yet compact way to model complicated logic.

Example:
Printer troubleshooter Rules;
 * Conditions || Printer does not print || Y || Y || Y || Y || N || N || N || N ||
 * ^  || A red light is flashing || Y || Y || N || N || Y || Y || N || N ||
 * ^  || Printer is unrecognised || Y || N || Y || N || Y || N || Y || N ||
 * Actions || Check the power cable ||  ||   || X ||   ||   ||   ||   ||   ||
 * ^  || Check the printer-computer cable || X ||   || X ||   ||   ||   ||   ||   ||
 * ^  || Ensure printer software is installed || X ||   || X ||   || X ||   || X ||   ||
 * ^  || Check/replace ink || X || X ||   ||   || X || X ||   ||   ||
 * ^  || Check for paper jam ||   || X ||   || X ||   ||   ||   ||   ||