Was ist eine Geschäftslogik in der Programmierung?

4 Antworten

Geschäftslogik ist der Teil von Quellcode, den der Auftraggeber lesen kann, weil er genau seine fachlichen Anforderungen widerspiegelt.

  • auftragsManagement.erstelleAuftrag(auftragsVorlage);
  • auftragsManagement.storniere(auftrag);
  • auftrag.ausführen();

Geschäftslogik ist all das NICHT, was wir als Entwickler uns dazudichten müssen, über das Programm zum Laufen zu bringen und die geschäftslogik nutzbar zu machen.

  • auftragsDao.persistiere(auftrag)
  • ui.zeige(auftrag)
  • mapper.mapToJSON(auftrag)

Dein Auftraggeber wird dich in den meisten Fällen nicht mit technischen Kram konfrontieren, sondern sagen, welche Aufgaben er mit IT unterstützt haben möchte. Und genau das ist die Geschäftslogik. Die Logik, die auch ohne ein Softwaresystem gilt, aber mit einem Softwaresystem schneller, genauer und mit weniger Fehlern abgearbeitet werden kann.

Die Logik, die für die geschäftlichen Abläufe zuständig ist. Also z.B. das Abwickeln und die Datenstrukturen für sagen wir einen geschäftlichen Vorfall z.B. Zinsen berechnen oder Prozesse im Unternehmen abbilden. Alles was technisch ist, z.B. in eine Datei schreiben oder Request durchführen ist nicht Geschäftslogik

ALso mit "Geschäftslogik" meinst du sicherlich WPF im zusammenhang mit MVVM (Model-View-ViewModel)

Dort ist die "Geschäftslogik" deine Modells, also nicht deine ViewModel.


Ich verstehe es auch nicht, ich habe als Softwareentwickler in den letzten 45 Jahre ohne diesen Begriff arbeiten und auskommen müssen, unsere Software hat aber darunter nicht gelitten.

Woher ich das weiß:Berufserfahrung

ThisIsJustMeHH  02.09.2019, 15:02

Das macht betroffen. Business Logik ist alle Geschäftliche Logik die in der Software abgebildet ist. Wenn dir das nicht klar ist scheinst du in deinem Job nicht viel über den Tellerrand zu schauen. (bei einem Banken System ist zum Beispiel die Funktion das bei einer Transaktion geprüft wird ob der Kontostand dadurch ins Minus geht und dass es ein Limit auf den Dispo Rahmen gibt eine Business Logik/Regel.)

0
mrlilienweg  02.09.2019, 15:16
@ThisIsJustMeHH

Das braucht dich keinesfalls betroffen machen, ob durch eine Transaktion ein gewisser Rahmen oder ein Regelwerk überschritten wird, haben wir bisher schlicht Plausibiltätsprüfung genannt und es entsprechend umgesetzt.

0
ThisIsJustMeHH  02.09.2019, 15:27
@mrlilienweg

OK ich merke du gehörst zur Elite. Es ist ein Beispiel. Und es ist auch keine Plausibilitätsprüfung. Wenn ein Kunde der nur 100€ aufm dem Konto hat am Automaten steht und 2000€ abheben möchte ist das weder fachlich noch technisch ein Fehlerfall sondern eine vollkommen plausible und legale Anfrage. Die Entscheidung ob er das bekommt ist ein reine Geschäftsentscheidung... Insofern: doch deine Antworten machen mich betroffen. Es zeigt mir wieder das viele Leute nur zum stumpf runter Coden taugen...

0
ThisIsJustMeHH  02.09.2019, 15:34
@ThisIsJustMeHH

Was mich so aufregt ist nicht der Punkt zu sagen "habe ich auch noch nie gehört" sondern direkt mal raus zu hauen "kenne ich nicht, braucht man also nicht!" Im Datawarehousing mit Data Vault Modellierung ist das zum Beispiel sehr entscheident Geschäftslogiken klar als solche zu erkennen um sie nicht im raw vault an zu wenden. (mal ein Beispiel warum das Relevanz hat)

0
mrlilienweg  02.09.2019, 15:56
@ThisIsJustMeHH

Mein Gott, reg dich bitte wieder ab, ich möchte nicht dass du dich so über mich aufregst das schadet doch nur deiner Gesundheit. Ich bin jetzt im Ruhestand, man holt mich ab und zu wieder zurück um noch Cobol-Programme zu warten, da der Berufsnachwuchs sich damit nicht abgeben möchte...

Man sollte es nicht glauben, wieviel alte Software heute noch ihren Dienst treu und brav verrichtet. Ich bevorzuge auch die Wartung von C und C++ Programmen.Als ich angefangen habe mussten wir unser Brot noch Assembler und Cobol verdienen, weil es damals nur das gab, glaube mir, auch damals haben die Programme das geliefert, was der Kunde im Pflichtenheft gefordert hat.

0
ThisIsJustMeHH  02.09.2019, 16:02
@mrlilienweg

" Ich bin jetzt im Ruhestand, man holt mich ab und zu wieder zurück um noch Cobol-Programme zu warten, da der Berufsnachwuchs sich damit nicht abgeben möchte..." coole sache :) da ist vieles ja auch echt 30 Jahre und mehr unendlich gewachsen. Die Komplexität ist da ja oft echt enorm. Ich hoffe du lässt dir dein Spezial wissen ordentlich vergolden.

0