Unerklärliche Versionssprünge, unauffindbare Versionen und ein vermeidliches Update-Chaos – so muss die Versionsstrategie des Joomla! Projekt auf Außenstehende wirken. Dabei setzt das Projekt auf bewährte und in der IT weit verbreitete Konzepte und Prozesse bei der Veröffentlichung neuer Versionen, die ich im Folgenden erklären möchte.

Aus Fehlern lernen – ein  Rückblick

Bevor wir einsteigen lohnt sich jedoch erstmal der Blick zurück auf Zeiten, in dem Joomla! noch nach dem berühmten „It’s done when it’s done“-Prinzip entwickelt wurde. Bis einschließlich der Version 1.6 gab es für neue Joomla! Versionen keine fixen Veröffentlichungstermine. Stattdessen setze man sich nach dem Release einer Version (z.B. der Version 1.5) ein Ziel in Form von bestimmten Features, die man gerne in der neuen Version sehen würde. Anschließend setzte ein mehr oder minder chaotischer Entwicklungsprozess ein, bei dem man teils zügig, teils gemächlich und teils garnicht an den abgesprochenen Funktionen arbeitete um dann schlussendlich, wenn alles fertig war, die Versionsnummer zu erhöhen und das neue Joomla! in die Welt zu entlassen. Dabei zeigt sich jedoch schnell ein Problem: aufgrund von organisatorischen, technischen und auch teils persönlichen (der zuständige Entwickler war plötzlich nicht mehr erreichbar) Problemen zog sich die Entwicklung einiger Funktionen wie Kaugummi – und das zum Leidwesen der anderen Entwickler und Nutzer, die dringend auf bereits fertiggestellte Funktionen warteten. Die eigene Roadmap und der „wir veröffentlichen erst wenn ALLES drin ist“-Vorsatz verhinderten nun eine zügige Weiterentwicklung und Joomla! verlor den Anschluss an die restliche OpenSource-CMS Szene.

Der Time-Based Release Cycle – der Versionstakt

Nach der Veröffentlichung von Joomla! 1.6 entschloss man sich daher, das Veröffentlichungsprinzip zu verändern und auf einen sog. Time-Based Release Cycle“ zu wechseln. Dieser kehrt das bisherige Prinzip gewissermaßen um! Statt mit festen Features arbeitet man nun mit einem festen, vorher festgelegten Datum, an dem eine Version (wenn nicht vorher die Hölle gefriert oder etwas unvorhergesehenes passiert) erscheint. In die Version aufgenommen werden dabei nur die neuen Funktionen, die zu einem ebenfalls vorher festgelegten Stichtag „ready to commit“, also fertig entwickelt, geprüft und getestet sind – wer zu spät kommt muss es bei der nächsten Version probieren.

 

Das Projekt arbeitet dabei mit einem 6-Monats-Rhythmus. Jeweils im Mai und November erscheint eine neue Joomla!-Version, der sog. Feature-Freeze, also der Zeitpunkt zu dem eine neue Funktion fertig sein muss, liegt jeweils 3 Monate vorher.

 

Bedenkt man aber, dass die Millionen von Webseiten, die mit Joomla! betrieben werden, ja jeweils auch auf die neue Version aktualisiert werden müssen, dann erkennt man, dass 6 Monate ein wenig „sportlich“ angesetzt sind. Da auch dem Joomla! Projekt diese Erkenntnis kam, hat man beschlossen zwei verschiedene Arten von Versionen zu veröffentlichen:

Standard-Term-Support (STS) Versionen:

Werden so lange mit (Sicherheits-)Updates versorgt, bis die jeweils nächste Joomla! Version erscheint. Sprich: alle 6 Monate ist hier ein größeres Update fällig, was diese Versionen für „normale“ Seitenbetreiber eher unattraktiv macht. Einzige Ausnahme: man benötigt dringend eine neue Funktion, die erst in einer der neuen STS-Versionen eingefügt wurde und dementsprechend in der letzten LTS-Version fehlt.

Long-Term-Support (LTS) Versionen:

Werden bis 3 Monate nach dem Erscheinen der nächsten LTS-Version mit Updates versorgt.

Bei der Veröffentlichung wechseln sich jeweils 3 STS und eine LTS-Version ab, woraus sich z.B. für Joomla 3 das folgende Schema ergibt:

 

Joomla 2.5 (LTS) – Mai 2012

Joomla 3.0 (STS) – November 2012

Joomla 3.1 (STS) –  Mai 2013

Joomla 3.2 (STS) – November 2013

Joomla 3.5 (LTS) –  Mai 2014

 

Na, fällt Ihnen etwas auf? Richtig, da sind zwei komische Sprünge, die dadurch bedingt sind, dass man sich im Joomla! Projekt darauf geeinigt hat, dass alle LTS-Versionen eine 5 an zweiter Stelle der Versionsnummer tragen sollen – dies erklärt übrigens auch den kruden Sprung von Joomla 1.7 (STS) auf Joomla 2.5 (LTS). Ob das sinnvoll ist sei mal dahin gestellt 😉

 

Nun kommt mal ein bisschen Mathe: Wir wissen, dass je 6 Monate zwischen zwei Versionen liegen und LTS Versionen bis zum Erscheinen der jeweils nächsten LTS Version gepflegt werden. Rechnen wir nun mal ein bisschen hin und her, so finden wir heraus das damit eine LTS-Version im Joomla-Projekt für jeweils 27 Monate, also über 2 Jahre mit Updates versorgt wird – das sollte selbst dem größten Update-Muffel eine gewisse Gelassenheit vermitteln und qualifiziert Joomla! durchaus für anspruchsvollere Projekte im Enterprise-Umfeld.

Wer möchte, kann mir zu Joomla! sehr gerne an dieser Stelle Fragen stellen, ich beantworte diese dann in in Kürze in einem weiteren Blog! Die Hanser Redaktion belohnt die sinnvollsten Kommentare bzw. Fragen mit einem Freiexemplar meines Buches Joomla! 2.5. Teilnahmschluss ist der 10. Oktober 2013!

 

Jardin, Joomla 2.5

Jardin, Joomla 2.5

Wir (also die Hanser Update Redaktion und ich) sind schon auf Ihre Fragen gespannt – es lohnt sich!

Bitte beachten Sie auch die Gewinnspiel-Teilnahmebedingungen

 

PS: Hier auf dem Blog gibts auch mein Video zu Webentwicklung mit Joomla!