Das Redesign der Universität Bern gewinnt Gold mit ZMS
Für die Jury des Best of Swiss Web Awards 2016 steht seit April 2016 fest: der Relaunch der Universität Bern ist Spitze. Im Bereich Öffentliche Einrichtungen konnte die Uni Bern sich gegen sehr starke Wettbewerber wie z.B. die Schweizer Post behaupten. Im Projekt vereint mit dem Inhouse-Team der Universität und der Schweizer Agentur ZEIX hat SNTL Publishing das technische Rückgrat konstruiert: CMS, Darstellungslogik und Informationmodel.
Bereits seit 2004 setzt die Universität Bern ZMS für die Produktion der Web-Inhalte sein. Das Relaunch Projekt wurde mit einer sehr gründliche Konzeptionsphase 2014 gestartet. Mit dem Inhouse-Team und den Usability-Experten von ZEIX wurde iterativ ein Konzept für die vielschichtigen Anforderungen entwickelt. Auf dieser Grundlage wurde von SNTL Publishing eine CMS-Machbarkeitsstudie mit ZMS3 erarbeitet, die veranschaulichen sollte, wo die Entwicklungs-Schwerpunkte liegen werden. Das Projekt wurde 2014/2015 in parallel arbeitenden Teams (Inhouse-IT: Systemarchitektur, ZEIX: Frontend-Development, SNTL: Backend-Development) nach Plan realisiert. Eine große logistische Herausforderung für das Inhouse-Team war dabei die Koordination und Schulung der zahlreichen, unterschiedlich qualifizierten Web-Autoren der Universität.
Zahlen und Fakten zur technischen Realisierung
380 Websites, 800 Redakteure, zehntausende HTML-Seiten, Gigabytes an Dateien – für Management und Publikation der Webinhalte setzt die Universität Bern voll auf quelloffene Software. Das Python-basierte ZMS 3.2. dient dabei als Kern-Anwendung. Python stammt aus dem universitären Umfeld und hat sich einer führenden Lehrsprache entwickelt. Die weltweiten Community-Aktivitäten mit unzähligen, in der Regel akademischen Software-Komponenten stehen über ein zentrales Repository (PyPI) zur freien Verfügung.
ZMS ist ein etabliertes Open-Source-CMS aus dem medizinisch-universitären Umfeld und optimiert für multilinguale Multisites. Technische Grundlage sind eine klassische Objektdatenbank (ZODB) und ein robuster objektorientierter NoSQL-Applicationserver (Zope). Das CMS-Frontend setzt auf aktuelle Webstandards (HTML5, XML, jQuery, Bootstrap).
Um einen intuitiven redaktionellen Zugang zu den Inhalten der Universität zu ermöglichen, bildet ZMS die gesamte Organisation in Form eines Content-Baumes ab. Die Wurzel des Baumes liefert die Systemkonfiguration für die Zweige des Baumes (d.h. Fakultäten, Institute, Abteilungen etc.). Diese abonnieren quasi ihre individuell erforderlichen technischen Features. Dieses Akquisitions-basierte Master-Client-Konzept sichert die langfristige technische Pflegbarkeit in einem stetig wachsenden und sich flexibel anpassbaren CMS.
Das Graphische User Interface (GUI) ist an die spezifischen Erfordernisse des im Vorfeld entwickelte Publishing- bzw. Design-Konzeptes angepasst worden. Prinzipiell werden in ZMS Inhalte blockweise in Form zentral konfigurierter Content-Objekte (siehe Screenshot) produziert. Neben WYSIWYG-Elementen liefern diese Objekte spezifische Formulare, die redaktionell intuitiv erfasst werden. Auf diese Weise ist trotz einer sehr großen Zahl an Anwendern eine solide Struktur-Qualität der Inhalte gegeben. Da die Inhalte in einer Objekt-Struktur abgebildet werden, bleiben diese auch offen für zukünftige Migration und XML-Transformation.
Das ZMS-Content-Modell arbeitet mit symmetrischer Mehrsprachigkeit, d.h. jedes Content-Objekt existiert a priori in den frei definierten Vorgabesprachen (DE/FR/EN/IT/ES) und wird via Workflow wahlweise übersetzt. Auch langfristig können somit die mehrsprachigen Inhalte nicht unkontrolliert auseinander driften.
Die projekt-spezifischen System-Anpassungen (customization layer) bestehen aus den Design-Templates (CSS, Javascript), den Strukturtemplates (TAL), den Content-Modellen (XML) und den Custom-Functions (Python). Diese Code-Komponenten werden zentral versioniert und über einen automatischen Deployment-Prozess nach einem mehrstufigen Testprozess auf den Produktiv-Cluster verteilt. Bei der Architektur wurde besonderer Wert auf die vollkommene Trennung von Design- und Struktur-Templates gelegt, damit auch im zukünftigen Dauerbetrieb die weitere Pflege durch die unterschiedlichen Disziplinen Design und Entwicklung auf sehr effiziente Weise garantiert ist.
Der Betrieb erfolgt im hauseigenen Rechenzentrum auf einem Linux-Cluster. Der Cluster trennt redaktionell aktive Instanzen bzw. Publishing-Instanzen und sorgt für die Lastverteilung. Die Web-Kommunikation und das Caching übernimmt der via ZMS steuerbare Webserver nginx.