LF-ET – The Decision Table Tool

LF-ET is a tool to assist the modelling and long-term reliable maintenance of business logic using decision tables.


  • Easy to learn and intuitively operated – also for data processing amateurs – through comfortable editing of conditions, actions and rules using an interface similar to MS Excel.

  • Free wording by use of pre-existing natural vocabulary.

  • Always up-to-date: The decision table is specification and documentation at the same time. Since you are always working on the specification level, your specification and documentation never gets outdated!

  • Integrated quality assurance: LF-ET provides automated verification of completeness, absence of redundancies and contradictions. In addidion, the auto-completion of missing rules, the sorting, grouping, filtering and combining of rules is also part of the scope of services.

  • Unlimited application possibilities: Program code can be generated directly from a decision table for any programming language such as: Java, JavaScript, TypeScript, Python, Groovy, C#, C++, C, ABAP, Natural, Cobol, PL/SQL, Delphi, Perl, VB, VBA, PHP,…

  • Powerful also for testing and acceptance: LF-ET can also automatically generate test cases from a decision table, for example directly for Gherkin/Cucumber, Robot Framework, TestLink, QF-Test, aqua, Excel. LF-ET supports limit value analysis, state-based and data-driven testing.


Increase in productivity

Numerous features support the user in developing, integrating, and verifying functional correlations, achieving a high level of content maturity and integrity at a very early stage.

The automatic completion of missing rules is just one of these fuctions.

Enhanced quality and safety

Extensive automatic checks during the stages of functional definition eliminate basic sources of error.

Redundant, contradictory, or incomplete content is displayed unambiguously and can be corrected quickly and safely, in some cases even automatically.

Easier and more precise communication

The standardized and extremely compact depiction of functional correlations, in form of tables, makes it possible to quickly and definitively refer to specific details during the communication process.

Logical correlations are clearly depicted in individual rules and do not need to be collected from extensive text documents, schedules, or graphics. This leaves less room for interpretation and rules out sources of misunderstanding.

Recognizing and understanding functional correlations from tables is much easier than from other display formats.

Easier inclusion of experts from individual departments

LF-ET makes it easier to include specialized know-how carriers into project work.

The limited time available to this group of know-how carriers often makes it difficult to prepare the functional definitions themselves. Due to the positive effects of the “easier and more precise communication” (see above), it is possible for experts to participate by selectively checking, evaluating, and giving their input.

LF-ET is also suitable for jointly developing specific content during an interview and systematically record and display it.

Improved measurability of individual business processes

The extent and complexity of every business logic can be derived directly from the size of the table: the number of contained conditions, actions and rules is directly visible.

This simplifies and safeguards the estimate of time and effort for subsequent phases, such as implementation, testing and approval.

Higher future security

The functional definitions primarily portray correlations from the “real” world and therefore should not be tied to specific technical executions.

The LF-ET system allows to freely choose the technical implementation and change and extend it reactively.

As a result, the same functional definition can be used for multiple systems and platforms. More information on this topic can be found in the section ‘Benefits for the implementation’.

Significant increase in productivity

The use of LF-ET reduces the programming effort to a necessary minimum. A logical expression and a corresponding statement for every action only need to be defined once for every condition, which can be done in the desired coding language.

The programming is indeed only done once: the stored statements can be reused for any number of program generation, as long as the functional meaning of the condition remains unchanged.

The complex, difficult and error-prone development of control structures, such as IF-ELSE-statements or case- or decide-statements, is not needed at all. The final structure of the program is calculated and created upon every generation.

Enhanced quality and security

Staight forward engineering: The program code is fully generated using the functional description and may not be changed manually.

The generated program code always corresponds to the functional description. Since its quality is always assured (i.e. in each case complete, redundancy and contradiction free) the same also applies to the logical quality of the program code.

The pure technical quality of the generated program code is being ensured upon every new creation:

  • Calculation of the optimal program structure (“optimal search tree”)
  • Smallest program volume
  • Highest processing speed

High flexibility and future security: Any platform and object language possible

LF-ET allows for the option of multiple target platforms and programming languages possible for a business logic, which is to be implemented. A function that is used in a Java-project can be used for projects such as a PL/SQL-project or an ABAP-project.

Easy and safe derivation of test cases directly from the functional specification

Since every leg corresponds to exactly one functional rule the minimal number of test cases (i.e. no less than 100% test correspondence) can be directly read from the table: The number of rules! This implicates that there has to be at least one test case for every rule.

The tabular representation also allows for the detailed generation of each individual test case.

  • The necessary constellations of conditions can be read accurately from the table
  • As well as the predicted system reactions and results

Due to the powerful support of the test case creation it is easy to reach more than 100% correspondence of tests are easily achievable.

Reliable assessment of test scores and test quality

LF-ET also supports the test execution. With statistic analysis of the continuous rules is it possible to evaluate the conducted tests efficiently and reliably:

  • Business logic involved in the test
  • Test coverage
  • Spread of test cases to the set of rules

Whether single components or greater sub-projects – the current status of tests is visible and assessable virtually at the touch of a button.

Extraction of test data e.g. from productive stocks

If the manual compilation of suitable test data is too challenging or complex, with the assistance of analysis, based on a rule level, it is possible to filter suitable data or data constellations specifically from existing databases.

Extremely low error rate

Using LF-ET proves time and again how high the quality of component creation is:

  • Considerably fewer errors than through manually created processes
  • Extremely quick reaction times in case of failure: both, the recognition of the error’s cause and its rectification, happen a lot faster than usual, since only ‘surgical’ changes are made in the functional description rather than within the software itself.

Both effects surprise customers and project participants again and again, especially when projects, conducted with LF-ET, enter production for the first time or after major changes.

Directly executable program code, outstanding transparency and monitoring

LF-ET, by default, generates directly implementable program code. Runtime components are deliberately forgone: no rule engines or rule servers necessary. Notwithstanding their complexity and costliness, forgoing them has a lot of advantages:

  • LF-ET isn’t needed when the generated component is productively used
  • Exceptional performance, beneficial use of resources
  • There are only processes that have a corresponding code, e.g. for reviews or revisions

The system behavior corresponds 100% to the functional specifications

This is guaranteed when using LF-ET, since the program code is fully created from the functional specification and may not be manually reworked:

  • All program branches are accurately and functionally comprehensible, since every single one has a definite connection to exactly one rule in a functional description. These connections are integrated into the generated program code as comments
  • If, for instance, the continuous rules are recorded during the execution, the system behavior can be comprehended solely based on the functional specification
  • This is especially effective in a problem case: false system reactions and their causes are easily identifiable

Higher Productivity and more security

  • Changes to the functional description have a surgical character, in terms of “razor-sharp” and “very precise”
  • Unintended side effects are prevented through indirect checks

Programming is rarely necessary

  • Often “only” rules are changed, i.e. the relation between conditions and actions are changed
  • Conventional coding usually triggers difficult and error-prone interference with complex program structures
  • When using LF-ET the code is simply regenerated
  • So long as conditions and actions aren’t substantially changed
  • A long as no new conditions and actions are added

Continuous exalted program quality

  • The ideal program structure is calculated and generated anew upon every change

The functional description of business processes always stays up-to-date

  • Forward-engineering forever
  • The program code is categorically generated from the specification and is not manually changed


LF-ET is as a powerful complement for any developing environment available in two versions:

  • As a Java application, the sole system requirement being Java runtime environment as of version 8
  • As a Natural application on the mainframe for the 4GL development environment and Natural of the Software AG

The Java version has been tested and released up to and including Java version 22 and can also be integrated as a plug-in in CI/CD pipelines.

Further Informationen

If you have any questions regarding LF-ET we will be happy to answer them in a personal meeting or during an information event including a live demonstration.