Vom Gesetz zum Modul
Diese Seite zeigt den typischen Weg von einer gesetzlichen Norm zu einer geprüften FinDSL-Regel — gedacht für Fachexpert:innen und Anforderungsmanager:innen, die nicht primär programmieren.
Als durchgehendes Beispiel dient der Solidaritätszuschlag (§§ 3, 4 SolzG, Einzelveranlagung, Nullzone).
-
Norm lesen und Größen herausschreiben.
Aus dem Gesetzestext werden die festen Größen: der Zuschlagssatz (5,5 %) und die Freigrenze (19.950 €, bis zu der kein Zuschlag anfällt).
-
Größen als
konstmit Quelle festhalten.Jede Größe bekommt ihren Typ, ihre gesetzliche Quelle und einen Doc-Kommentar:
-- Zuschlagssatz auf die festgesetzte Einkommensteuer. --@Quelle("§ 4 Satz 1 SolzG 1995")konst SOLI_SATZ: Prozent = 5,5%-- Freigrenze: bis einschließlich hier kein Zuschlag. --@Quelle("§ 3 Absatz 3 SolzG 1995")konst FREIGRENZE: Euro = 19.950 -
Die Regel als Funktion formulieren.
Die Fallunterscheidung des Gesetzes wird zu
wähle-Zweigen — und die im Gesetz vorgeschriebene Rundung zu.abrunden():@Quelle("§ 3 Absatz 1, § 4 SolzG 1995")fn Solidaritaetszuschlag(est: Euro): Euro = wähle {falls est < FREIGRENZE + 1 -> 0sonst -> (SOLI_SATZ * est).abrunden()} -
Mit echten Werten prüfen.
Bekannte Knotenpunkte werden zu
testfall-Einträgen — am besten in einer eigenen….test.findsl-Datei:prüfe "§§ 3, 4 SolzG — Nullzone & Satz" {testfall "in der Nullzone → kein Zuschlag" {Solidaritaetszuschlag(19.950) == 0}testfall "über der Freigrenze → 5,5 %" {Solidaritaetszuschlag(30.000) == 1.650}} -
Generieren.
Aus dem geprüften Modul entstehen Code (Java/TypeScript/JavaScript), Dokumentation (MD/HTML/PDF) und ein Programmablaufplan — alle synchron zur selben Quelle. Siehe Code generieren & integrieren.
Leitlinien
Abschnitt betitelt „Leitlinien“- Eine Quelle pro Regel. Jedes
konst/fnmit normativem Inhalt trägt@Quelle. Das macht den Code prüfbar und die Doku vollständig. - Rundung wie im Gesetz. Die Norm sagt, ob auf- oder abgerundet wird — das wird mit
.abrunden()/.aufrunden()sichtbar abgebildet. - Veranlagungsjahr im Dateinamen. Jahresabhängige Regeln liegen in jahresgebundenen Dateien (z. B.
…/tarif2025.findsl). - Prüfen statt vermuten. Jeder bekannte Wert aus Verwaltungsanweisung oder Tabelle wird ein
testfall— Abweichungen fallen sofort rot auf.