LF-ET – Das Entscheidungstabellen-Tool

Vorgabenerstellung – Programmgenerierung – Testfallgenerierung

LF-ET

Das Entscheidungstabellen-Tool

Vorgabenerstellung
Programmgenerierung
Testfallgenerierung

Stärken

  • Die Entscheidungstabelle als leistungsstarke Ergänzung für beliebige Entwicklungsumgebungen.
  • Leicht erlern- und intuitiv bedienbar: Einfache, komfortable, und dennoch kraftvolle Bearbeitung der Entscheidungstabellen-Regeln, -Bedingungen und -Aktionen.
  • Freie Formulierung mit dem Fachbereichs-Wortschatz des Anwenders. Die Vorgabe ist gleichzeitig auch Dokumentation und langfristig immer aktuell, da grundsätzlich nur auf der Vorgabenebene gearbeitet wird − auch später bei Wartung und Pflege!

  • Integrierte Qualitätssicherung: Neben den Prüfungen auf Vollständigkeit, Redundanz- und Widerspruchsfreiheit gehören auch die automatische Ergänzung fehlender Regeln, das Sortieren, Filtern, Expandieren und Verdichten von Regeln zum Leistungsumfang.

  • Unbegrenzte Einsatzmöglichkeiten: Aus Entscheidungstabellen kann LF-ET automatisch Programm-Module generieren: Java, JavaScript, TypeScript, Python, Groovy, C#, C++, C, ABAP, Natural, Cobol, PL/SQL, Delphi, Perl, VB, VBA, PHP,…

  • Leistungsstark auch bei Test und Abnahme: Aus Entscheidungstabellen kann LF-ET auch automatisch Testfälle generieren, zum Beispiel direkt für Gherkin/Cucumber, Robot Framework, TestLink, aqua, Excel. LF-ET unterstützt dabei Grenzwertanalyse, Zustandsbasiertes und Datengetriebenes Testen.

Was unsere Kunden sagen:

Nutzen

Erhöhung der Produktivität

Zahlreiche Funktionen unterstützen den Anwender bei der Erarbeitung, Vervollständigung und Überprüfung von fachlichen Zusammenhängen. Hierdurch erreichen die Inhalte schon sehr früh einen hohen Reife- und Vollständigkeitsgrad.

Eine dieser Funktionen ist zum Beispiel die automatische Ergänzung von noch fehlenden Regeln.

Erhöhung von Qualität und Sicherheit

Durch umfassende automatische Prüfungen werden wesentliche Fehlerquellen schon in den fachlichen Beschreibungen sicher ausgeschlossen.

Redundante, widersprüchliche oder unvollständige Inhalte werden eindeutig dargestellt und können, zum Teil auch automatisch unterstützt, rasch und sicher behoben werden.

Leichtere und präzisere Kommunikation

Durch die genormte und extrem kompakte Darstellung der fachlichen Zusammenhänge in Tabellenform kann bei der Kommunikation schnell und eindeutig auf Details Bezug genommen werden.

Logische Zusammenhänge sind klar in einzelnen Regeln dargestellt und müssen nicht mühsam aus umfangreichen Textdokumenten, Ablaufplänen oder Grafiken ermittelt werden. Hierdurch werden Interpretationsspielräume stark reduziert und viele Quellen für Missverständnisse eliminiert.

Das Erkennen und Verstehen von fachlichen Zusammenhängen ist viel schneller möglich als bei anderen Darstellungsformen.

Leichtere Einbeziehung von Experten aus dem Fachbereich

Mit LF-ET ist es leichter möglich, fachliche Know-how-Träger stärker in die Projektarbeit einzubinden.

Meist reicht die begrenzte Zeit dieses Personenkreises nicht aus, um die Erstellung der fachlichen Beschreibungen selbst durchzuführen. Durch die positiven Effekte der ‚leichteren und präziseren Kommunikation‘ (s.o.) können Experten aber punktuell prüfend, bewertend und informationsgebend mitwirken.

LF-ET eignet sich auch ganz hervorragend dazu, bei Interviews fachliche Inhalte gemeinsam zu erarbeiten, systematisch festzuhalten und darzustellen.

Bessere Bewertbarkeit jedes einzelnen Geschäftsprozesses

Umfang und Komplexität jedes Geschäftsprozesses kann direkt aus der Entscheidungstabelle abgeleitet werden: Die Anzahl der enthaltenen Bedingungen, Aktionen und Regeln ist direkt sichtbar.

Dies erleichert und sichert auch die Schätzung der Aufwände für die Folgephasen wie z.B. Implementierung, Test und Abnahme.

Höhere Zukunftssicherheit

Die fachlichen Beschreibungen bilden in erster Linie Zusammenhänge aus der realen Welt ab und sollen daher nicht an konkrete technische Umsetzungen gebunden werden.

Bei LF-ET ist die technische Implementierung jeder Entscheidungstabelle frei wählbar und kann bei Bedarf jederzeit rückwirkungsfrei geändert oder erweitert werden.

Deshalb kann dieselbe Entscheidungstabelle gleichzeitig für verschiedene Systeme und Plattformen verwendet werden. Mehr Informationen dazu finden Sie im Abschnitt ‚Nutzen für die technische Implementierung‘.

Starke Erhöhung der Produktivität

Der Programmieraufwand wird mit LF-ET auf das notwendige Minimum reduziert. Es muss nur einmalig für jede Bedingung ein logischer Ausdruck und für jede Aktion die entsprechenden Statements in der gewünschten Programmiersprache definiert werden.

Die Programmierung wird tatsächlich nur einmal vorgenommen: solange sich die fachliche Bedeutung der Bedingungen und Aktionen nicht ändert, können die hinterlegten Statements für beliebig viele Programm-Generierungen wieder verwendet werden.

Entfällt: Das aufwändige, schwierige und fehleranfällige Entwickeln und Programmieren von Kontrollstrukturen, wie z.B. IF-ELSE-Schachtelungen, Case- oder Decide-Statements, entfällt völlig.

Automatisch: Die bestmögliche Programmstruktur wird bei jeder Generierung aus den Regeln der Entscheidungs­tabelle komplett neu berechnet und generiert.

Erhöhung von Qualität und Sicherheit

Reines Forward-Engineering: Der Programmcode wird vollständig aus der fachlichen Beschreibung generiert und darf manuell nicht nachbearbeitet werden.

Der generierte Programmcode entspricht immer exakt der fachlichen Beschreibung. Da diese zwingend immer qualitätsgesichert ist (d.h. garantiert vollständig, redundanz- und widerspruchsfrei) gilt dasselbe auch für die logische Qualität des Programmcodes.

Die rein technische Qualität des generierten Programmcodes wird bei jeder Generierung immer wieder neu sichergestellt:

  • Berechnung der bestmöglichen Programmstruktur („optimaler Baum“)
  • Kleinstmögliches Programmvolumen
  • Höchste Verarbeitungs-Geschwindigkeit

Hohe Flexibilität und Zukunftssicherheit: Beliebige Plattformen und Zielsprachen möglich

LF-ET erlaubt die Wahl mehrerer Zielplattformen bzw. Programmiersprachen für einen zu implementierenden Geschäftsprozess. Eine Entscheidungstabelle, die in einem Java-Projekt verwendet wird, kann bei Bedarf z.B. auch noch in einem PL/SQL-Projekt oder ABAP-Projekt verwendet werden.

Leichte und sichere Ableitung der Testfälle direkt aus der fachlichen Spezifikation

Da jeder Programmzweig genau einer fachlichen Regel entspricht, kann die Mindest-Anzahl der Testfälle (d.h. mindestens 100% Regel­überdeckung) direkt aus der Entscheidungs­tabelle abgelesen werden: Die Anzahl der Regeln! D.h. es muss mindestens für jede Regel ein Testfall erstellt werden.

Die detaillierte Erstellung jedes einzelnen Test­falles wird ebenfalls durch die Entscheidungs­tabelle hervorragend unterstützt:

  • Die notwendigen Bedingungskonstellationen können direkt aus der Entscheidungs­tabelle abgelesen werden
  • Ebenso die zu erwartenden Systemreaktionen bzw. Ergebnisse

Durch die gute Unterstützung bei der Testfall­erstellung sind leicht hohe Test­deckungs­grade erreichbar.

Sichere Bewertung der Testergebnisse und der Qualität des Testens

LF-ET unterstützt auch die Testdurchführung. Durch statistische Auswertungen der durchlaufenen Regeln können durchgeführte Tests sehr effizient und sicher bewertet werden:

  • Am Test beteiligte Geschäftsprozesse
  • Testdeckungsgrade
  • Verteilung der Testfälle auf das Regelwerk

Ob nur einzelne Komponenten oder größere Teilprojekte – quasi auf Knopfdruck ist der aktuelle Stand aller Tests sichtbar und bewertbar.

Extraktion von Testdaten z.B. aus produktiven Beständen

Ist die manuelle Zusammenstellung passender Testdaten zu schwierig oder zu aufwändig, so können mit Hilfe von Auswertungen auf Regel-Ebene passende Daten oder Datenkonstellationen gezielt aus existierenden Datenbeständen herausgefiltert werden.

Sehr geringe Fehlerrate

Immer wieder fällt beim Einsatz von LF-ET auf, wie hoch durch diese Art der Komponentenerzeugung die Qualität ist:

  • Deutlich weniger Fehler als bei manuell erstellten Prozessen
  • Extrem schnelle Reaktionszeiten im Fehlerfalle: sowohl die Erkennung der Ursache als auch deren Behebung erfolgt um Klassen schneller als üblich, da nicht in der Software selbst, sondern in der Regel nur ‚chirurgisch‘ in der fachlichen Beschreibung gearbeitet wird!
  • Beide Effekte überraschen Kunden und Projektbeteiligte immer wieder, insbesondere wenn Projekte, bei denen LF-ET verwendet wurde, erstmalig oder nach größeren Änderungen in Produktion gehen

Direkt ausführbarer Programmcode, hervorragende Transparenz und Kontrolle

LF-ET generiert standardmäßig direkt ausführbaren Programmcode. Auf Runtime-Komponenten wird bewusst verzichtet: keine Rule-Engines oder Rule-Server notwendig. Unabhängig davon, dass diese aufwändig und nicht selten sehr teuer sind, hat der Verzicht darauf mehrere Vorteile:

  • LF-ET wird beim produktiven Einsatz der erzeugten Komponenten nicht benötigt
  • Gute Performance, günstiger Ressourcenverbrauch
  • Es gibt nur Prozesse, zu denen auch der Quellcode verfügbar ist, z.B. für Reviews oder Revisionen

Das Systemverhalten entspricht zu 100% der fachlichen Spezifikation

Dies ist bei LF-ET garantiert, da der Programmcode vollständig aus der fachlichen Spezifikation erzeugt wird und manuell nicht nachbearbeitet werden darf:

  • Alle Programmzweige sind exakt fachlich nachvollziehbar, denn jeder einzelne hat einen eindeutigen Bezug zu genau einer Regel in der fachlichen Beschreibung. Diese Bezüge werden als Kommentare in den generierten Programmcode eingebunden
  • Werden bei der Ausführung z.B. die durchlaufenden Regeln protokolliert, so kann rein auf Basis der fachlichen Spezifikation das Systemverhalten exakt nachvollzogen werden
  • Dies ist besonders effektiv im Problemfall: falsche Systemreaktionen und die Ursachen dafür sind extrem schnell erkennbar

Höhere Produktivität und höhere Sicherheit

  • Änderungen an der fachlichen Beschreibung haben ‚chirurgischen‘ Charakter
  • Ungewollte Nebeneffekte werden durch die integrierten Prüfungen sicher verhindert

Oft keine Programmierung notwendig

  • Oft ändern sich ’nur‘ Regeln, d.h. die Beziehungen zwischen Bedingungen und Aktionen werden geändert
  • Bei herkömmlicher Programmierung resultieren daraus in der Regel schwierige und fehleranfällige Eingriffe in komplexe Programmstrukturen
  • Bei LF-ET wird einfach nur neu generiert
  • Solange sich Bedingungen und Aktionen inhaltlich nicht ändern
  • Solange keine neuen Bedingungen und Aktionen dazukommen

Gleichbleibend hohe Programmqualität

  • Bei jeder Änderung wird die bestmögliche Programmstruktur komplett neu berechnet und generiert

Die fachliche Beschreibung der Geschäftsprozesse ist und bleibt immer aktuell

  • Forward-Engineering forever
  • Der Programmcode wird grundsätzlich aus der Spezifikation generiert und wird manuell nicht verändert

Plattformen

LF-ET ermöglicht die Verwendung der Methode Entscheidungstabelle in beliebigen Entwicklungs­­umgebungen und ist in zwei Versionen verfügbar:

  • Als Java-Anwendung, einzige Systemvoraussetzung ist eine Java-Laufzeitumgebung ab Version 8
  • Als Natural-Anwendung auf dem Mainframe für die 4GL-Entwicklungsumgebung Natural der Software AG

Die Java-Version ist getestet und freigegeben bis einschließlich Java Version 23 und kann auch als Plugin in CI/CD-Pipelines integriert werden.

Weitere Informationen

Fragen zum Einsatz oder zur Funktionalität von LF-ET beantworten wir gerne in einem persönlichen Gespräch oder im Rahmen einer Informationsveranstaltung mit Live-Demonstration.