Versionierung

[ASSET18]

Versionierung in unterschiedlichen Stati

Häufig sind fertige Open-Source Lösungen (wie z.B. Joomla, OSCommerce, o.ä.) eine gute Ausgangsbasis für eigene Internetlösungen. Meist muss noch etwas angepasst werden oder Add-Ons installiert werden.

Doch einen Haken hat die Sache: Das System kann von dort an nur noch auf sehr komplizierte Weise auf einen aktuelleren Softwarestand gebracht werden. Meist sind Änderungen verschwunden oder es gehen Daten verloren. Ein Update ist damit in der Regel sehr aufwändig und damit teuer. Meist werden Systeme daher in der Regel nicht auf dem aktuellen Stand gehalten.

Dies ist jedoch nicht nur auf Grund der fehlenden neuen Features und vor allem fehlenden Bugfixes alles andere als gut. Zusätzlich werden bekannte Sicherheitslücken nicht geschlossen! Das eigene System wird somit zunehmend unsicherer, zumal das System je gefährdeter ist, desto bekannter die Open Source Lösung ist. Ein Bug in einem weit verbreiteten System ist einfach bekannter als in einer seltenen Lösung.

Das RedSpark Framework bietet eine Lösung: Fast alle Teile einer Anwendung sind versionierbar. Zudem ist eine bestimmte Version einer App immer von einer bestimmten Version der Frameworks abhängig. Folgende Elemente sind im Einzelnen versionierbar:

- Anwendungen (Apps)
- Libraries (z.B. ZEND Framework, RedSpark Framework)

Was bedeutet "versionierbar"?
Eine App wird meist mit einer bestimmten Version der Libraries entwickelt und mit bestimmten Versionen anderer Apps verknüpft. Sowohl die Libraries, als auch die Apps (Eigene und fremde) entwickeln sich weiter.

Indem alle Elemente versioniert werden, können mehrere Versionen von Library und Apps gleichzeitig installiert sein. Beim Update werden die neue Versionen auf den Server gespielt und die eigene Weiterentwicklung mit den aktualisierten Fremdbibliotheken getestet. Das stabile Live-System läuft derweil völlig unverändert weiter, es wurde schließlich keine einzige Datei geändert...

Die neue Version kann über einen speziellen Link ausführlich qualitätsgesichert werden. Eine Liveschaltung nach erfolgreichem Test erfolgt einfach über die Aktualisierung der Versionsnummer der eigenen App in der Bootstrap Konfiguration. Treten dennoch unerwartet Probleme auf, kann genau so leicht wieder zurück geschwenkt werden. Einfach, sicher, schnell, zukunftssicher...

Zu verschiedenen Stati der Anwendungsentwicklung muss die Versionierung jeweils unterschiedlich eingesetzt werden. Meist lassen sich folgende Anwendungsfälle unterscheiden:

Versionen in Subversion

Welches grundlegende Konzept steckt hinter der Versionierung des RedSpark Projekts. mehr Infos

Versionierung zur Entwicklungszeit

Während der Entwicklungszeit empfiehlt es sich stets auf dem aktuellsten Entwicklungsstand der App zu arbeiten. Das RedSpark Framework bietet die spezielle Version "latest". mehr Infos


Stabiler Stand / QS

Um einen finalen Stand zu erreichen, sollte man sich auf bestimmte Versionen der benötigten Applikationen und Bibliotheken festlegen. mehr Infos

Livegang

Wenn ein System live geht, sollten alle Versionen fix sein. mehr Infos


Versionierung für ein Update

Ein Update sollte immer auf eine konkrete Version erfolgen, nicht auf latest. mehr Infos

Kuborgh GmbH

Hamburg 040 819 773 770 Köln 0221 276 66 96 info@kuborgh.de www.kuborgh.de

RedSpark Community

RedSpark Community

Community Website
RedSpark Apps

RedSpark Apps

Zur Übersicht
RedSpark Download

RedSpark Basispaket

Zum Download
Key facts