Unternehmensportal

für ca. 30.000 User in Europa mit Contao

Die Aufgabenstellung bestand darin, ein mittlerweile in die Jahre gekommenes und nicht mehr zeitgemäßes Anwenderportal sowie Dokumentenrepository durch ein modernes Content Management System mit angebundenem Dokumenten Management System abzulösen. Die Aufgabenstellungen waren dabei im Besonderen:

  • Möglichst gleiche Funktionalität wie das bisherige System „Out of the Box“
  • Eignung für ca. 30 bis 40 Tsd. Benutzer
  • Multidomainbetrieb und Mehrsprachigkeit
  • Zusätzlich Ablösung des bestehenden Intranet-CMS (Eigenentwicklung / 21 Sites)
  • Anbindung an das zentrale User- und Rechtemanagement (Eigenentwicklung)
  • Einfache Anpassungsmöglichkeit an die Bedürfnisse eines Automobilherstellers
  • Anbindung an ein neues oder bestehendes Dokumenten Management System
  • Geringe Systemanforderungen und leichte Administrierbarkeit
  • Leichte Pflege der Inhalte im Backend auch durch die Fachabteilungen
  • Gewährleistung eines „4 Augenprinzips" bei der Veröffentlichung
  • Anbindung bestehender Systeme und Datenbanken

Nach der Definition des Anforderungskataloges wurden verschiedene Systeme auf ihre Funktionalität, Erweiterbarkeit und „Useability“ hin überprüft, zunächst sowohl im kommerziellen als auch im Opensource Umfeld. Dabei kristallisierte sich sehr schnell Contao (bzw. Typolight) als das am ehesten geeignete System heraus. Viele der notwendigen Funktionalitäten brachte und bringt es bereits mit und die notwendigen Anpassungen sind mit vergleichsweise geringem Aufwand realisierbar. Dies ermöglicht auch eine Einführung in verschiedenen Teilprojekten, so dass die Migration fliessend erfolgen kann und die Anwender sukzessive an das System herangeführt werden.

Nachstehend eine Auswahl der zusätzlichen Module, die im Rahmen des Projektes bereits entwickelt wurden oder in naher Zukunft geplant sind:

  • Userauthentifizierung über Jasig CAS (Single Sign On/Off)
  • Userautorisierung über das zentrale Usermanagement (Eigenentwicklung). Automatische Benutzer- und Rechteprovisionierung abhängig vom jeweiligen Rollenmodell in das Front- und Backend
  • Modul zur Verwaltung der bestehenden Applikationen mit rollen- und abteilungsspezifischer Zuordnung und automatischer Aufbau entsprechender Menüstrukturen (Portalfunktionalität)
  • Einbindung eines bestehenden Mitarbeiterverwaltungs- und Informationssystems
  • Unterteilung der Backend-Module in zusätzliche Hierarchieebenen, um bei ca. 40 Tsd. Benutzern trotzdem eine übersichtliche Darstellung zu gewährleisten
  • Spezielles Newslettermodul mit vorgegebenem Layout und Zielgruppen sowie integrierter Anzeige von PDF-Dateien
  • Modul zur benutzerabhängigen „Zwangsanzeige“, die sowohl manuell im Backend als auch aus bestehenden Systemen heraus mit Inhalten versorgt wird
  • Zentrale Berechtigungsstruktur bis auf Dokumentenebene sowohl für Contao als auch das angebundene Dokumenten Management System
  • Volltextsuche auch für Dokumente / Dateianhänge und vordefinierte Suchen auf Basis des Indexservers „Apache Lucene / Solr“
  • Übernahme / Import bestehender Dokumente, Berechtigungsstrukturen und Inhalte
  • Workflows, entweder durch Eigenentwicklung oder den Einsatz einer „Workflow-Engine"

Später ist zudem die Nutzung des Frameworks zur (Teil)-Ablösung bestehender Applikationen geplant. Gerade im Unternehmensumfeld werden öfters kleinere Programmfunktionen angefragt, z.B. Eventregistrierungen, Mitarbeiterumfragen, verschiedenste Onlineformulare, etc. Diese sind mit den verfügbaren Modulen bereits umsetzbar oder mit geringem Aufwand zu ergänzen. Für den Anwender bedeutet das letztendlich eine Anwendung „aus einem Guss“ mit einem einheitlichem „Look and Feel“ und die IT-Budgets werden geschont.

Technische Umsetzung:

Contao als Kernkomponente wird redundant auf zwei identisch ausgestatteten Linux-Systemen im Clusterverbund ausschließlich für autorisierte Benutzer in ganz Europa betrieben. Dabei kommen vorgelagert zwei Hardware-Loadbalancer zum Einsatz um die eigentlichen Applikationsserver so weit als möglich zu entlasten. Die Datenhaltung erfolgt auf einem über ein Clusterfilesystem angebundenes Speichersystem, d.h. von beiden Knoten sind Schreib- / Leseoperationen möglich. Als Datenbankserver kommen zwei MySQL-Server (Active / Active-Replikation) und als PHP-Stack der ZendServer in der aktuellen Version zum Einsatz. Bei Bedarf können zudem weitere Knoten hinzugefügt werden.

Für den (Anwender)Test von Softwareupdates, neuen Modulen oder Weiterentwicklungen steht eine vergleichbare Infrastruktur als sog. Test- und Acceptance-System zur Verfügung.

Contao – die richtige Entscheidung?

Eindeutig ja. Gerade in der Realisierungsphase zeigt sich, dass alle Anforderungen (sowie bereits einige neue) erfolgreich umsetzbar sind. Die klare Struktur des zugrunde liegenden Frameworks, die daraus resultierenden Möglichkeiten der Erweiterung / Anpassung und die einfache Administration sprechen für Contao. In der (vorläufigen) Endausbaustufe werden hiermit ca. 35 – 40 Websites entstehen, die dann von den jeweiligen Fachabteilungen und Standorten selbst verwaltet werden.

Da das System selbst ohne Lizenzkosten eingesetzt werden kann, ist der Betrieb mittel- bis langfristig zu einem Bruchteil der heutigen Kosten möglich. Hierfür gilt der Dank besonders an Leo Feyer für das System selbst, aber auch dem Contao-Team und der Community für den Support und die Bereitstellung der unterschiedlichsten Erweiterungen.

Es ist geplant, die im Rahmen des Projektes entwickelten Erweiterungen ebenfalls in das Extension Repository einfließen zu lassen sofern die Nutzung auch für andere Anwender sinnvoll erscheint.