09 Februar 2012

Es gibt Java-Applikationen, deren Module Komponenten zugewiesen werden und in einem EAR-File verschnürt werden, auch wenn die Anwendungen dann wie beschrieben weniger robust sind. Problematisch wird es, wenn unter mehreren Komponenten Abhängigkeiten entstehen. Diese sorgen dafür, dass die Komponente A nur noch mit Komponente B laufen kann und die galvanische Trennung ist nicht mehr gegeben. Die Schnittstellen zwischen den Komponenten sind offensichtlich und leicht zu identifizieren, denn bei entsprechender Benennung der Packages findet sich schnell der Name der Komponente A im Code von Komponente B wieder.

Eine Verletzung der galvanischen Trennung zu sehen, wird schwieriger, wenn eine 3. Komponente C dazukommt, die von Komponente A und B genutzt wird. Wenn z.B. Daten aus den Komponenten A und B in Komponente zusammengeführt werden, wird die Trennung ebenfalls verletzt. Die Verletzung sorgt nicht nur bei der Handhabung der Komponenten für Probleme, sondern auch bei der Organisation der Zuständigkeiten. Wenn die Komponenten A und B von je von einem Team betreut werden, wer ist dann für die Komponente C zuständig?