Drupal oder prĂ€ziser Drupal 8 ist derzeit in aller Munde. Nach mehr als drei Jahren Entwicklung ist die neuste Majorversion des Open Source CMS (Content Management Systems) Ende letzten Jahres erschienen. Dabei blieb kaum eine Komponente unberĂŒhrt: Das Core-System basiert auf Symfony2, verwendet die etablierte Frontend-Engine Twig und ist vollstĂ€ndig responsive. Die Möglichkeiten zur Bearbeitung und Verwaltung von Inhalten (in-place Editing, Ăberarbeitung des Backend-UX) wie auch der Pflege mehrerer Sprachen wurden stark ausgebaut. Der Erfolg des CMS hĂ€ngt jedoch mit dem riesigen Angebot von ĂŒber 34'000 ergĂ€nzenden Modulen zusammen, welche ebenfalls frei verfĂŒgbar sind.
Oft höre ich die Frage, ob es nicht zu frĂŒh ist, an den produktiven Einsatz von Drupal 8 zu denken. Ich bin ĂŒberzeugt, der Zeitpunkt könnte nicht besser sein! Es gibt drei Argumente, welche mich zu dieser Ăberzeugung kommen lassen: Zum einen kommt der Stand der Modul- und Core-Entwicklung auf Drupal 8 zum Tragen. Weiter spielen die Projekttypen eine Rolle, welche fĂŒr Drupal in Frage kommen. Und schliesslich ist das Projektvorgehen und damit einhergehend die Erwartungshaltung an den Scope ein wichtiger Faktor.
Stand der Modul und Core-Entwicklung
Zum aktuellen Zeitpunkt sind zahlreiche, zum Teil zentrale Module, noch nicht vollstĂ€ndig portiert. Ich denke dabei an das Media-Ecosystem, das Webform- oder das Panels-Modul, um nur einige zu nennen. Aber auch das Commerce-Modul, welches Drupal mit einem vollwertigen und mĂ€chtigen Onlineshop erweitert, ist bis heute lediglich im Alpha-Status verfĂŒgbar. Daher sind auch noch keine Upgrade-Pfade verfĂŒgbar. Eine breite Auswahl an Modulen ist fĂŒr eine effiziente Entwicklung aber relevant. So lassen sich mit Drupal 7 und den dazugehörigen Modulen bereits sehr mĂ€chtige Tools erstellen, was fĂŒr Drupal 8 im Moment nur bedingt gilt.
Was stimmt mich trotzdem positiv? Der Core von Drupal 8. Durch die Integration zahlreicher Module, in Drupal 7 noch separiert, ist er deutlich mĂ€chtiger geworden. Speziell fĂŒr kleine bis mittelgrosse Projekte lassen sich damit viele klassische Anforderungen an Websites und deren Entwicklung kostengĂŒnstig erfĂŒllen. Im Vergleich zur VorgĂ€ngerversion hat sich Drupal 8 weiter in Richtung Web-Framework entwickelt. Drupal versteht sich als mĂ€chtiges System, welches sich in der IT-Landschaft von Unternehmen als sehr flexibel prĂ€sentiert. Durch die Umstellung auf eine objektorientierte Architektur ist der Einstieg fĂŒr Entwickler einfacher geworden. Zudem wurde Drupal konsequent fĂŒr die Anforderungen einer modernen Webapplikation ausgerichtet. Der Wechsel der Templating-Engine von PHPTemplate zu Twig unterstreicht diese Absicht auf anschauliche Weise. es setzt die gĂ€ngige best practice um und trennt die Logik von der Darstellung. Dies resultiert unter anderem in der deutlich verbesserten Lesbarkeit der Template-Files, wie die Bartik Template-Files gut veranschaulichen.
Verbesserte Lesbarkeit im Bartik Template. Quelle: OSTraining.com.
Seit dem Release von Drupal 8 sind bei der Modul-Portierung deutliche Fortschritte gemacht worden. Viele Module sind inzwischen verfĂŒgbar, andere stehen als Beta-Versionen zur VerfĂŒgung oder kurz davor. Dabei engagieren sich die mehr als 100'000 aktiven Mitglieder der Drupal-Community. Selbst fĂŒr das hochkomplexe Commerce-Modul wird im August der Release der ersten Beta-Version erwartet. Die Community ist motiviert, die neue Hauptversion von Drupal mit den zusĂ€tzlichen Elementen vorwĂ€rts zu bringen. Der Fortschritt ist förmlich spĂŒrbar. Somit ist es auch keine Ăberraschung, dass mit rund 100'000 aktiven Drupal 8 Websites bereits 8 Prozent der 1.3 Millionen Drupal Websites auf der neusten Version laufen. Das CMS ist in der Breite noch nicht auf dem Stand seines VorgĂ€ngers, aber die neuen Möglichkeiten und die eingeschlagene Marschrichtung bei der Portierung von Modulen, lassen kaum Raum fĂŒr Zweifel am Erfolg von Drupal 8.
Drupal 8 â das CMS fĂŒr komplexe Projekte
Drupal stellt spĂ€testens seit der Version 7 fĂŒr einen Grossteil von Website-Ausschreibungen eine Option dar â unabhĂ€ngig von deren Grösse und KomplexitĂ€t. Seine grossen StĂ€rken spielt das System im Enterprise-Segment aus. Drupal ist selbst bei hohen Zugriffszahlen ausserordentlich stabil, hat ein fundiertes Sicherheitssystem und ist durch seinen modularen Aufbau ausserordentlich flexibel und kosteneffizient einsetzbar. Dies erhöht die Investitionssicherheit deutlich.
Daten strukturiert zu organisieren entspricht der DNA von Drupal. Mit Hilfe von Inhaltstypen, Taxonomien und der Rollenverwaltung lassen sich komplexe Stakeholderstrukturen abbilden. Inhalte werden zentral erfasst und im Frontend flexibel dem Endnutzer zugĂ€nglich gemacht. Das Enterprise-Segment wird durch die neue Version 8 und die damit einhergehenden Funktionserweiterungen noch konsequenter angesprochen. WĂ€hrend der aktuelle Stand von Drupal 8 fĂŒr kleinere bis mittelgrosse Projekte bereits eine gute Basis darstellt, lĂ€sst sich dies fĂŒr die grösseren und anspruchsvolleren Vorhaben allerdings noch nicht vorbehaltlos behaupten.
Selbst wenn Drupal 7 bis zum Release von Drupal 9 offiziell unterstĂŒtzt wird, scheinen die Tage von Drupal 7 gezĂ€hlt. Es wĂ€re leichtsinnig, in der sich rasant entwickelnden Web-Welt auf die alte Version zu setzen, zumal ein Systemupdate durch die drastischen Ănderungen am Core einer Neuentwicklung der Website gleichkommt. Viel eher lohnt es sich, einen agilen Entwicklungs-Ansatz zu wĂ€hlen, um das Projektrisiko zu reduzieren.
Durchdachtes Projektvorgehen
In diesem Zusammenhang muss aus meiner Sicht ein realistisches Projektvorgehen bedacht werden. Selbst wenn zum heutigen Zeitpunkt eine Umsetzung auf Drupal 7 als geringeres Risiko eingeschĂ€tzt wĂŒrde, ist der Einsatz eines inzwischen bereits veralteten Systems als Basis fragwĂŒrdig. Es kommt hinzu: Bei zunehmender KomplexitĂ€t eines Projekts steigt die Voraussetzung an sauber durchgefĂŒhrte Konzeptionsarbeiten. Das braucht Zeit. Bei Liip machen wir regelmĂ€ssig die Erfahrung, dass sich ein ausfĂŒhrliches Vorprojekt gerade in Zusammenhang mit Drupal mehr als auszahlt. Bei dem von uns dafĂŒr verwendeten 5S-Vorgehen gemäss Jesse James Garrett sind die Phasen Scope und Structure besonders relevant. So werden die Inhalte mit Fokus auf den Nutzer sauber fĂŒr die Inhaltstypen strukturiert und sinnvoll via Taxonomien verknĂŒpft. Auch bietet das Vorgehen die Möglichkeit, sich mit den Umsystemen vertraut zu machen und so sinnvolle Schnittstellenspezifikationen zu entwickeln. Systemspezialisten erhalten einen Ăberblick ĂŒber die relevanten Anforderungen der Applikation und können das Grundsystem mit Hilfe von Core- und relevanten ModulfunktionalitĂ€ten fĂŒr einen möglichst hohen ROI optimieren. Ein solches Vorprojekt dauert bis zur Fertigstellung von Wireframes und einem Styleguide mindestens ein halbes Jahr und geht der Entwicklung zwingend voraus. Diese Tatsache muss in Zusammenhang mit dem aktuellen Entwicklungsstand von Drupal 8 und den damit kompatiblen Modulen berĂŒcksichtigt werden.
Sobald mit der Entwicklung gestartet wird, zahlt sich ein agiles Vorgehen gleich doppelt aus. So können die Funktionen mit dem effektiv grössten ROI (Business Value/Aufwand) anhand realer Gegebenheiten umgesetzt und Bereiche mit noch nicht ausgereiften Standardlösungen in Drupal auf spĂ€ter verschoben werden. Die Massgeschneiderte Entwicklung von Modulen oder Anpassungen am Core können dabei an die Community zurĂŒckfliessen.
Was noch folgt
Die Entwicklungsfortschritte seit dem ersten Release von Drupal 8 zeigen eine klare Gangart auf und es ist davon auszugehen, dass Drupal 8 bis in einem halben Jahr noch einmal deutlich weiter gereift sein wird. FĂŒr mich steht es ausser Frage, dass viele Module bis dahin auf einem sehr hohen Niveau zur VerfĂŒgung stehen und sich fĂŒr den Produktiveinsatz eignen werden. Ebenfalls wird der Core â geplant sind ein Punktrelease pro Halbjahr â noch einmal merklich Fortschritte machen. Damit wird auch bei einem grossen Projekt das Risiko fĂŒr eine Umsetzung auf der neusten Version noch einmal reduziert. Wer heute ein Webprojekt in Angriff nehmen will, sollte Drupal 8 ganz sicher auf der Liste der zu evaluierenden CMS haben.