Das Releasemanagement entscheidet maßgeblich über einen gesunden Projektfluss, denn ohne eine vernünftige Planung des Projektverlaufs und eine eindeutige zeitliche Zielsetzung einzelner Abschnitte besteht die Gefahr eines chaotischen Ablaufs. Es muss konkret festgelegt werden, welcher Status des Systems zu welchem Zeitpunkt mit welchen Funktionalitäten zu erreichen ist.
Projekte größeren Umfangs teilen wir strikt in einzelne Abschnitte. Die erste testbare Version (Alpha State) verfügt bereits über alle wesentlichen Funktionalitäten. Da funktionale Tests bereits vor und während der Entwicklung stetig durchgeführt werden, stehen bei dieser ersten Vesion nur ein Minimum an Black Box Tests realer Nutzer an und die Testingphase geht schnell von statten. Nach eingehenden Tests und Auffindung der Mängel geht es an die Fehlerbehebung. Generell bietet sich in dem Kontext die Nutzung eines Wikis oder einer GroupWare (eGroupWare, Trac) an, bei der die Nutzer und / oder der Auftraggeber alle Mängel vermerken und die Programmierer schließlich anhand dieser Liste alle Fehler und kleinen Bugs abarbeiten und beheben. In kritischen Phasen garantieren wir eine Reaktionszeit von unter 1 Stunde, um diese zweite Etappe der Softwareentwicklung (Betastate) schnellstmöglich zu meistern.
Sind auch im Betastate alle Bugs gefixt und das System in einem einwandfreien Zustand, steht der Roll out unmittelbar bevor. Nach Überarbeitung der letzten Mängel wird der Release Candidate schließlich der Nutzermasse vorgeführt und einem breiten Massentest unterzogen.
Einem erfahrenen Entwickler ist klar, dass trotz intensiver Qualitätssicherungsmaßnahmen noch immer kleinere Bugs auftreten können und werden. Aus dem Grunde schließt sich wiederum eine Debuggingphase an, bevor das endgültige Produktivsystem (Release) steht und das Projekt als abgeschlossen betrachtet werden kann. Allerdings nur prinzipiell, denn durch die stete Weiterentwicklung großer Systeme zeichnet sich seit geraumer Zeit ab, dass es den echten Release nicht geben wird. Vielmehr sollte man Softwareentwicklung mittlerweile als ständigen Entwicklungsprozess und das geschilderte Szenario als sich ständig wiederholendes Prozedere ansehen. Bildlich gesprochen, hat sich die Webentwicklung von ihrem stringenten Verlauf hin zu einem Curriculum entwickelt (Perpetual Beta) - eine schöne Entwicklung und zweifelsfrei im Sinne der Nutzer. Um mit dieser Entwicklung Schritt zu halten, ist auch an dieser Stelle das Einsetzen einer Versionsverwaltung wie SVN nützlich, denn verschiedene Entwicklungsstadien ( d.h. Änderungsschritte) können festgehalten und bei Bedarf wieder konstruiert werden.