LF-ET – Das Entscheidungstabellen-Tool
Vorgabenerstellung – Programmgenerierung – Testfallgenerierung
LF-ET
Das Entscheidungstabellen-Tool
Vorgabenerstellung
Programmgenerierung
Testfallgenerierung
Stärken
Was unsere Kunden sagen:
Die mit Hilfe von LF-ET erzeugten Entscheidungstabellen haben maßgeblich dazu beigetragen, die komplexe Logik unserer Beitragsbescheide zu erfassen und zu dokumentieren. Die Qualität der fachlichen Vorgaben konnte durch die Simulationsfunktion nochmal gesteigert werden und Logikfehler wurden bereits bei der Konzeptionsphase aufgedeckt. Auch Änderungsbedarfe können nun ganz komfortabel auf ihre Auswirkungen im Gesamtkonstrukt unserer Beitragsbescheide überprüft werden.
Wir - das BSH als Bundesoberbehörde im Geschäftsbereich des Bundesministeriums für Verkehr und digitale Infrastruktur (BMVI) - nutzen das Entscheidungstabellen-Werkzeug LF‑ET zum Ausformulieren umfangreicher fachlicher Anforderungen in der Abteilung Schifffahrt. Dank LF-ET können wir unsere Anforderungen jetzt besser strukturieren, überschaubarer aufbereiten und optimieren. Immer wieder überrascht uns, wie leicht wir mit LF-ET verborgene Mängel, wie z.B. fehlende Fallkonstellationen oder Widersprüche, "aufdecken" und bereinigen können. Dank der integrierten Dokumentations-, Export- und Simulationsmöglichkeiten sind komplexe Anforderungen auch für unsere Fachbereiche jetzt besser nachvollziehbar.
Mit Entscheidungstabellen haben wir eine perfekte Möglichkeit gefunden, Produktlogiken rechnerverarbeitbar zu machen. LF-ET ist bei Blum mittlerweile ein fixer Bestandteil des Produktdaten-Services.
Mit den Entscheidungstabellen vereinfachen wir vor allem die Kommunikation zwischen dem Fachbereich und der IT, ermöglichen eine widerspruchsfreie Logik sowie passende Code-Generierung. Die Programmlogik ist mit LF-ET schnell nachvollziehbar und hilft Änderungen zügig umzusetzen.
Bereits nach einem zweitägigen Einführungsworkshop waren wir in der Lage, auch sehr komplexe Anwendungsfälle widerspruchsfrei in Entscheidungstabellen abzubilden. Die Begleitung und Unterstützung durch die Firma LOHRFINK ist vorbildlich. Bei der Bearbeitung werden auch offene Punkte deutlich, die zuvor in der Prosa-Darstellung untergegangen sind. Als sehr nützlich hat sich auch die Möglichkeit der Simulation der verschiedenen Fallkonstellationen erwiesen.
Bei der Analyse, Anpassung und Neugestaltung von komplexen Geschäftsprozessen nutzen wir zur Entwicklung und Qualitätssicherung die Entscheidungstabellen der Firma LOHRFINK. Damit erreicht unsere von jeher hohe Fachlichkeit und Qualität noch einmal eine neue Dimension.
LF-ET vereinfacht das Finden von Fehlern in der Programmausführung ungemein. Es ist schnell geklärt, ob das Problem in der Spezifikation, also der Entscheidungstabelle, oder in der Implementierung der Bedingungen oder Aktionen zu beheben ist. Änderungswünsche, wie sie im Laufe z.B. einer agilen Entwicklung häufig auftreten, sind durch die Anpassung der Entscheidungstabellen und die anschließende Code-Generierung in kürzester Zeit zu realisieren. Spezifikations- und Implementierungsphasen werden dadurch stark verkürzt.
Schon nach wenigen Stunden Einarbeitung waren wir mit LF-ET in der Lage, komplizierte Sachverhalte professioneller zu beschreiben. Die Kommunikation zwischen Fachbereich und IT wird deutlich verbessert und auch den Entwicklern wird einiges an Zeit eingespart.
Wir setzen LF-ET schon seit Jahren erfolgreich und flächendeckend in der Software-Entwicklung bei der Badenia ein und schätzen vor allem die flexiblen, kundenorientierten und effizienten Lösungen der Firma LOHRFINK bei komplexen Aufgabenstellungen.
Testspezialisten von Muth Partners setzen LF-ET sehr gerne in Kundenprojekten ein und können Teilnehmer in Seminaren zum Thema Softwaretest immer wieder mit LF-ET begeistern. Warum? Fachbereiche beschreiben in LF-ET sehr komplexe Anforderungen strukturiert und vollständig mit Entscheidungstabellen. Tester leiten daraus direkt ihre Testfälle in vollständiger Kombinatorik ab, können diese sogar inklusive Testdaten aus LF-ET heraus generieren. Damit dann Testautomatisierungswerkzeuge zu bedienen, ist nur noch ein kleiner Schritt. Zudem unterstützt LF-ET Code-Generierung. Somit arbeiten Anforderungsmanagement, Entwicklung und Test auf einer gemeinsamen Basis und ohne Informationsverlust effizient zusammen. So entsteht SW-Qualität.
Mit Prosa-Use-Cases hätten wir für eine fachliche Beschreibung mehrere Monate gebraucht, mit LF-ET haben wir das in 5 Tagen geschafft. Wobei ich überzeugt bin, dass die mit LF-ET erzeugte Qualität in Prosa nur sehr, sehr schwer erreicht werden kann.
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 Entscheidungstabelle 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 Entscheidungstabelle abgelesen werden: Die Anzahl der Regeln! D.h. es muss mindestens für jede Regel ein Testfall erstellt werden.
Die detaillierte Erstellung jedes einzelnen Testfalles wird ebenfalls durch die Entscheidungstabelle hervorragend unterstützt:
- Die notwendigen Bedingungskonstellationen können direkt aus der Entscheidungstabelle abgelesen werden
- Ebenso die zu erwartenden Systemreaktionen bzw. Ergebnisse
Durch die gute Unterstützung bei der Testfallerstellung sind leicht hohe Testdeckungsgrade 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 Entwicklungsumgebungen 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
- Release Notes: LF-ET 2.3.0 (PDF)
- Kompakt-Info: Logikbeherrschung mit Entscheidungstabellen (PDF)
- Kompakt-Info: Nutzen des toolgestützten Einsatzes von Entscheidungstabellen (PDF)
- Kompakt-Info: Automatische Testfallgenerierung mit Entscheidungstabellen (PDF)
- Tutorials zur automatischen Testfallgenerierung mit Entscheidungstabellen (Youtube)
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.