Agon Newsletter Ausgabe 03 / 2013.

Zurück

Erfahrungsbericht Architekturreviews von Liferay Portalen

Agon Solutions führte in 2013 mehrere Architekturreviews für Portalanwendungen auf Basis des Open Source Produkt Liferay durch.

Anlass waren Probleme der Auftraggeber bei der Entwicklung und Inbetriebnahme von Liferay-Portalanwendungen:

  • Time-to-Market: Der Zeitaufwand für Erstellung, Test und Inbetriebnahme von Releases oder neuer Anwendungen waren gegenüber vorhandenen Webanwendungen unvertretbar hoch.
  • Die Stabilität produktiver Portalanwendungen war bei hohen Benutzerzahlen aufgrund schwerer Fehler nicht gegeben. Fehleranalyse und Bereinigung waren innerhalb kurzer Zeit nur begrenzt möglich.
  • Eine hohe Komplexität, bestehend aus vielen Schnittstellen, Frameworks und umfangreicher Fachlogik, erzeugte in Entwicklung, Test und Inbetriebnahme hohe Aufwände.

Abbildung 1 - Component Architecture in Liferay Portals

 

Da Portale die Basis für den Betrieb diverser bestehender und zukünftiger Anwendungen für unterschiedliche Benutzergruppen sind, sollte der Erfüllungsgrad bestehender Architekturanforderungen und die Zukunftsfähigkeit des umgesetzten Portalstandes bewertet werden.

Agon Solutions setzte erfolgreich sowohl eine standardisierte Vorgehensweise zur Bewertung existierender Architekturen wie auch erfahrene Experten für das Portalprodukt Liferay ein.

Im ersten Schritt wurden alle Projekt-Stakeholder interviewt, womit ein  differenziertes Bild des aktuell erreichten Standes, der Projektzusammenarbeit und vorhandener Schwachstellen gewonnen wurde. Ergänzend wurde der Dokumentationsstand zu Architektur-,  Entwicklungs-, Test- und Betriebsvorgaben auf Aktualität, Vollständigkeit und Verständlichkeit geprüft und ebenfalls Schwachstellen festgehalten.

Für das Portalprodukt Liferay wurde der Umfang der bereits eingesetzten Produktfunktionen, die Art und Tiefe der Integration mit anderen Systemen, der Einsatz der Liferay-Entwicklertools für Rapid Development sowie Design und Umsetzung wiederverwendbarer Komponenten (Plugins, Portlets, Services und Adapter) untersucht.

Der aktuelle Quellcodestand des Portals als auch der Anwendungskomponenten wurde einer statischen Quellcodeanalyse unterzogen. Dadurch konnten beispielsweise Anzahl und Version der eingesetzten Frameworks in den Architekturschichten ermittelt und Redundanzen zur Senkung der Komplexität festgehalten werden. Weiterhin konnte die Einhaltung der Architekturvorgaben für beispielsweise Sicherheit, Verteilung der Businesslogik und Fehlerhandling geprüft werden. Besondere Aufmerksamkeit wurden den Abhängigkeiten zwischen einzelnen  Komponenten,  Stand  und Automatisierungsgrad des Deployments sowie der Testbarkeit des Quellcodes gewidmet. In Summe konnten umfangreiche  Erkenntnisse zu tatsächlicher Softwarearchitektur, Komplexität, Testbarkeit und Erweiterbarkeit des bestehenden Systems gewonnen werden.

Ergänzend  führte Agon Solutions mit den Entwicklern Code-Walk-Throughs durch und ermittelte ergänzende Optimierungspotentiale. Diese galten der Senkung der Komplexität in Quellcodes. Auch Architektur, Stabilisierung und Testbarkeit der Anwendungsoberfläche wurden überprüft und optimiert.

Als Ergebnis stellte Agon Solutions den Stakeholdern einen bewerteten Ist-Stand der Software und System-Architektur zusammen und zeigte die Zielerreichung der eigenen Portalstrategie und den aktuellen Nutzungsgrad der Portalsoftware Liferay auf.

In allgemein verständlicher Form wurden wesentliche Schwachstellen und Lösungsansätze beleuchtet, Ansätze für eine maßgeschneiderte Soll-Architektur aufgezeigt und ein Stufenplan für das Refactoring und die Migration des bestehenden Standes vorgeschlagen.

Ergänzend wurden organisatorische und prozessuale „Findings" in den Bereichen Anforderungsmanagement, Releasemanagement, Testverfahren und Inbetriebnahme aufgezeigt, die neben der zentralen Aufgabenstellung gefunden wurden. So wurde kundenübergreifend eine Ergänzung insbesondere der Architekturbeschreibung nach dem Standard arc42 und das Design und die Beschreibung der Anwendungskomponenten als Basis für die Wiederverwendung empfohlen.

Ist-Analyse und Empfehlung der Reviews wurden seitens der Auftraggeber sehr positiv aufgenommen und die hohe Qualität der Ergebnisse gelobt. In der Folge wurden Maßnahmen für die Detaillierung einer Zielarchitektur, Planung und Umsetzung der vorgeschlagenen Refactoringaktivitäten sowie Architekturanforderungen neuer Projekte mit der Agon Solutions vereinbart.