Angenommen, ich verfüge über eine große Middleware-Infrastruktur, die Anfragen zwischen verschiedenen Geschäftskomponenten (Kundenanwendungen, Netzwerk, Zahlungen usw.) vermittelt. Der Middleware-Stack ist verantwortlich für Orchestrierung, Routing, Transformation und anderes (ähnlich dem Enterprise Integration Patterns-Buch von Gregor Hohpe).Sind Middleware-Apps für die Geschäftslogik erforderlich?
Meine Frage ist: Ist es gutes Design, um einige Geschäftslogik auf die Middleware zu setzen?
Angenommen, meine App A fordert einige Kundendaten von der Middleware an. Aber um diese Daten zu erhalten, muss ich Kundennummer und einige anderen Parameter liefern. Das Abrufen dieses Parameters sollte von der anfordernden App durchgeführt werden oder ist die Middleware verantwortlich für die Bereitstellung einer Schnittstelle, die Kunden-IDs empfängt und intern den anderen Parameter abruft?
Ich weiß, dies ist keine einfache Frage (wegen der Definition der Geschäftslogik), aber ich frage mich, ob es eine allgemeine Vorgehensweise oder einige Richtlinien ist.
Der schwierige Teil ist Verantwortlichkeit: Wer sollte für was verantwortlich sein. Ich glaube, das ist ein kulturelles Problem. BTW, meine Frage war rein hypothetisch, das Projekt, in dem ich bin, ist bereits fast fertig, und wir verwenden ein nettes Middleware-Produkt. –
Der schwierige Teil wird "Governance" genannt und umfasst Verantwortlichkeit sowie Änderungskontrolle und technische Standards. Es ist nicht "kulturell" - es ist größer als das - und es ist normalerweise sehr schwer. –