Dienstag, 6. Juli 2010

Aber bitte nicht die Katze im Sack

Teilen
Vor einiger Zeit habe ich einen Eintrag geschrieben der ein Komponentenmodell einer OSGi Anwendung darstellt.

Dies war die Theorie - heute die Praxis um zu zeigen, dass hinter einer schönen Fassade auch eine saubere Architektur steckt. Hin und wieder sollte man zu einem Dependency Analyse Tool greifen und die gewünschte Architektur dahingehend überprüfen.

Natürlich fällt die Einhaltung der sauberen Schichtentrennung und einem gerichteten Dependeny Graph in einem OSGi Umfeld mit Maven Build einfacher, als dies bei proprietären Enterprise Applikationen der Fall ist, wo oft nur auf Package Ebene unterschieden wird.
Dann wird die Sache sehr viel schwieriger und sollte dauerhaft (möglichst im CI Build) einem Dependency Check unterzogen werden (JDepend).

Wenige Klicks in der IDE (stan4j) waren nötig um sich aus 15 OSGi Bundles ein klares Bild über die Abhängigkeiten zu verschaffen (Die Packages liegen z.T in unterschiedlichen Bundles):