Skip to content

Decision table

A tabular rule representation enumerating combinations of conditions and the actions prescribed for each combination.

Core Idea

Decision tables separate condition rows, alternative columns, action rows, and rule entries so completeness, conflicts, redundancy, and don't-care cases can be inspected mechanically. Each column binds one condition assignment to one action set; consolidation merges irrelevant distinctions and coverage analysis detects missing or overlapping rules. The abstraction is therefore identified by a declared carrier, a transformation or constraint over that carrier, and an invariant that tells an analyst whether the named structure is genuinely present.

The load-bearing residual is not the broad topic of business rules and software specification. It is the domain-specific identity determined by condition domains, rule columns, don't-care semantics, action ordering, hit policy, completeness, and conflict resolution are explicit.

How would you explain it like I'm…

The What-to-Do Chart

A decision table is a chart that tells you what to do. Across the top you write every mix of what could happen, like 'raining and cold' or 'sunny and warm.' Under each mix you mark what to do, like 'wear a coat.' With the chart you can easily spot if you forgot a mix or said two different things for the same one.

Every-Case Rule Grid

A decision table is a grid that shows what to do in every situation. Some rows list the questions, or conditions, like is it raining and is it cold. Each column is one rule: one set of answers to the questions, and below it the actions to take. Because everything is laid out in a grid, you can check for problems like a combination nobody covered, two rules that disagree, or two rules that say the same thing. Sometimes a question does not matter for a rule, and the table marks that with a don't-care, which lets several columns merge into one.

Condition–Action Rule Table

A decision table is a way of writing business rules or program logic as a grid. Condition rows list the things being tested, action rows list the possible actions, and each column is a rule that pairs one combination of condition values with a set of actions. Entries can be marked 'don't care' when a condition does not affect the outcome, which lets similar rules be merged. The grid layout lets you check mechanically whether the rules are complete (every case covered), whether any conflict or overlap, and whether any are redundant. To be precise, you must state each condition's possible values, what 'don't care' means, the order of actions, and what happens when more than one rule matches (the 'hit policy').

 

A decision table separates condition rows, condition alternatives, action rows, and rule entries so that completeness, conflicts, redundancy, and don't-care cases can be checked mechanically. Each rule column binds one assignment of condition values to one set of actions. Consolidation merges columns whose distinctions are irrelevant, using don't-care entries, and coverage analysis detects missing combinations or overlapping rules. For the table to be well defined, its condition domains, rule columns, don't-care semantics, action ordering, hit policy (what happens when several rules match), completeness criterion, and conflict resolution must be explicit. This is what distinguishes a decision table from an arbitrary grid of business rules or from a general specification document.

Scope of Application

Decision table belongs to business rules and software specification and is useful where the analyst can specify the typed business rules and software specification carrier, defining objects and relations, parameters, conventions, evidence, boundary cases, and comparison targets, then evaluate condition domains, rule columns, don't-care semantics, action ordering, hit policy, completeness, and conflict resolution are explicit. The scope is broad within that domain but bounded by the need for condition domains, rule columns, don't-care semantics, action ordering, hit policy, completeness, and conflict resolution are explicit. The entry records a descriptive analytical identity; practical use requires the governing domain's evidence, standards, and safety obligations.

Clarity

The abstraction clarifies a crowded vocabulary by making condition domains, rule columns, don't-care semantics, action ordering, hit policy, completeness, and conflict resolution are explicit the center of the account. A claim should name the carrier, the governing operation or relation, the applicable assumptions, and the recognition test. A bare label is insufficient because the name Decision table can be used for a formal identity, an implementation, or a neighboring result unless carrier and convention are stated.

Manages Complexity

Without the abstraction, an analyst must reason directly over many local details: the carrier roles, admissibility assumptions, competing conventions, derived invariants, boundary cases, and proof or validation obligations specific to Decision table. Decision table compresses them into the roles in the structural signature. That compression permits comparison across instances without erasing the variables that determine validity. It also exposes which details may be varied safely and which are constitutive.

Abstract Reasoning

  1. Identify the carrier. State what the elements, states, objects, or observations are: the typed business rules and software specification carrier, defining objects and relations, parameters, conventions, evidence, boundary cases, and comparison targets. Reject examples whose alleged carrier belongs to a different problem.
  2. Lock the constitutive rule. Express condition domains, rule columns, don't-care semantics, action ordering, hit policy, completeness, and conflict resolution are explicit independently of one notation or implementation.

Knowledge Transfer

Knowledge transfers strongly among subfields of business rules and software specification because they reuse the typed business rules and software specification carrier, defining objects and relations, parameters, conventions, evidence, boundary cases, and comparison targets, Each column binds one condition assignment to one action set; consolidation merges irrelevant distinctions and coverage analysis detects missing or overlapping rules., and type the carrier, state every parameter and convention in the definition, test that condition domains, rule columns, don't-care semantics, action ordering, hit policy, completeness, and conflict resolution are explicit, compare the nearest accepted identity, and report counterexamples, uncertainty, and limiting cases.

Relationships to Other Abstractions

Local relationship map for Decision tableParents appear above the current abstraction, mutual partners to the right, and children below. Node labels state whether each abstraction is prime or domain-specific; colors identify relation types.Decision tableDOMAINPrime abstraction: Representation — is a kind ofRepresentationPRIME

Current abstraction Decision table Domain-specific

Parents (1) — outgoing typed relations

  • Decision table is a kind of Representation Prime

    It remains its own entry because its identity is fixed by condition domains, rule columns, don't-care semantics, action ordering, hit policy, completeness, and conflict resolution.

Hierarchy path (1) — routes to 1 parentless root

Neighborhood in Abstraction Space

Decision table sits in a crowded region of the domain-specific corpus (11th percentile for distinctiveness): several abstractions share nearly its structure, so a description that fits it tends to fit its neighbors too.

Family — Software Architecture & Modeling Methods (23 abstractions)

Nearest neighbors

Computed from structural-signature embeddings · 2026-10-25