Die Idee
Focus auf Businesslogik
 |
Die Businesslogik ist das Herz Ihrer Anwendungssoftware. Während andere Teile der Anwendung technischen Charakter haben, beschreibt die Businesslogik die fachlichen Inhalte, die mit der Software abgebildet werden sollen, beispielsweise:
- kann dieser Antrag genehmigt werden?
- wie hoch ist der Beitrag in diesem Fall?
- wie hoch ist die Provision für diesen Abschluss?
- wäre dieser Vertrag ein Risiko?
- wie ist die steuerliche Auswirkung dieser Investition?
- welcher Versandweg ist wirtschaftlicher?
|
Businesslogik ist anders
Anwendungs-Komponenten, die eher technische Aufgaben haben, etwa den Datenbankzugriff, Benutzerverwaltung, Eingabesteuerung etc., sind meist recht stabil, d.h. nachdem Ihre Funktion einmal festgelegt und implementiert wurde, sind Änderungen an diesen Komponenten eher selten und leicht handhabbar.
Businesslogik hingegen ist näher an der "wirklichen Welt" und daher komplexer, da die fachlichen Regeln für Berechnungen, Bewertungen und Entscheidungen:
- häufigeren Änderungen unterworfen sind
- schnell an geänderte Rahmenbedingungen (z.B. gesetzliche Vorgaben) angepasst werden müssen
- nicht immer eindeutig festgelegt werden können, sondern unterschiedliche Varianten für mehrere Länder, Produktlinien, Mandanten etc. abbilden müssen
- historisierbar sein müssen, so dass frühere Vorgänge auf Basis der damals geltenden fachlichen Regeln nachvollzogen werden können
Trotz dieser Unterschiede wird in den meisten klassischen Anwendungs-Architekturen für die Businesslogik dasselbe technische Rüstzeug eingesetzt, mit dem auch die technischen Komponenten realisiert werden: Die Regeln der Businesslogik werden zwar in einer separaten Ebene der Anendung, aber immer noch in einer Programmiersprache (etwa Java oder C++) hartcodiert abgelegt.
Vielleicht können die Regeln über einige Parameter verändert werden, aber dies ist natürlich nur insofern möglich, wie schon in der Entwicklung eine Parametrierung vorgesehen wurde.
Klassische Businesslogik ist teuer
 | Businesslogik mit den Mitteln der klassischen Anwendungsentwicklung umzusetzen, ist aufwendig und fehleranfällig. Der Grund hierfür wird leicht deutlich, wenn man sich das komplexe Zusammenspiel zwischen Fachbereich und technischer Umsetzung betrachtet.
Der Fachbereich bzw. Kunde verfügt über das fachliche Regelwissen, ist aber nicht selbst zur technischen Umsetzung der Regeln fähig.
Die Entwicklung kann eine klar formulierte Regel in Software umsetzen, aber hat vielfach nur unzureichendes Verständnis des fachlichen Hintergrunds, so dass Missverständnisse vorprogrammiert sind.
Als Folge daraus wird typischerweise der Entwurfs- und Entwicklungsprozess stark formalisiert. Dieses komplexe Zusammenspiel verteuert nicht nur die Erst-Entwicklung der Anwendung. Der Prozess muss auch bei jeder nachträglichen Änderungen, wie sie ja gerade im Bereich der Businesslogik häufig vorkommen, erneut durchlaufen werden.
|