Entwicklungsstadium (Software)

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von Developer-Preview)

Ein Entwicklungsstadium ist in der Softwaretechnik der Fertigstellungszustand, den ein zu erstellendes Softwareprodukt zu einem bestimmten Zeitpunkt erreicht hat oder erreichen soll. Die relevanten Stadien werden im Rahmen des Projektmanagements zeitpunktbezogen und inhaltlich festgelegt. Sie basieren auf dem für das Projekt gewählten Vorgehensmodell, seinen Aktivitäten und Meilensteinen oder auf Festlegungen in herstellerspezifischen Methodenkonzepten und Entwicklungsumgebungen.

Im engeren Sinn bezieht sich der Begriff Entwicklungsstadium auf ausführbare Software, d. h. auf lauffähige Programme, die im Rahmen von Releasemanagement-Prozessen eines Projekts zum Testen oder an ihre Benutzer bereitgestellt werden. Je nach Projektsituation, oft in kleineren Wartungsprojekten, entfallen manche Stadien, sie werden zusammengelegt oder die Software wird nur als eine einzige finale Version bereitgestellt.

In erweitertem Sinn ergeben sich unterschiedliche Entwicklungsstadien für Software im gesamten Projektverlauf, in dem auch in konzeptionellen Projektphasen Ergebnisse entstehen, die bestimmten Meilensteinen (‚Entwicklungsstadien‘) zugeordnet sind. Beispiel siehe.[1] Am Ende jedes Stadiums werden die definierten Projektergebnisse in nachfolgende Bearbeitungsstufen übergeleitet.

Nach dem Erreichen des Software-Endzustands beginnt der Entwicklungszyklus i. d. R. mit Maßnahmen/Projekten zur Anwendungserweiterung wieder neu – mit dem Ziel einer neuen Software-Version.

Zweck / Unterschiede

Die Zielsetzung für die Festlegung mehrerer Entwicklungsstadien ist im Allgemeinen, im Projektverlauf Fixpunkte mit definierten Reifegraden zu erreichen, um die anschließenden Aktivitäten sicher(er) bearbeiten zu können. Häufig werden unterschiedliche Entwicklungsstadien z. B. beim Softwaretest praktiziert, um in nachgelagerten Teststufen/Testarten Funktionsdetails überprüfen zu können, die auf bereits im vorhergehenden Stadium getesteten Funktionalitäten aufsetzen.

Unterschiede zwischen den einzelnen Software-Entwicklungsstadien für Computerprogramme können zum Beispiel folgende sein – um für den jeweils als Beispiel angegebenen Freigabezweck verwendet zu werden:

  • Manche Funktionen sind noch nicht realisiert; um einzelne Funktionen vorweg zu testen
  • ... oder sind nur in einfacher Form (ohne Spezialfälle) realisiert; ebenfalls für erste/frühe Tests.
  • Die Software wurde im bisherigen Stadium nur durch bestimmte Testarten (wie Alphatests) überprüft; zur Durchführung von Betatests.
  • Die Software enthält noch Hilfsroutinen (z. B. Stubs oder Driver); zum Testen von Unterprogrammen.
  • Die Anwendung wird zur Übernahme in eine spezielle System- oder Testumgebung bereitgestellt und ist ggf. zielsystemspezifisch adaptiert; zur Durchführung von Produktionstests oder Lasttests.
  • In der Anwendung sind Hilfsroutinen enthalten, die das Testen und die Dokumentation von Fehlerfällen unterstützen; für öffentliche Tester.
  • Stadiumbezogene Übergaben enthalten entweder die ganze Anwendung oder nur einzelne Komponenten zur (nachträglichen) Installation.
  • Die Anwendung ist vollständig einsatzbereit (letztes Stadium); zur finalen Übergabe in die Produktionsumgebung.

Beispiele für Entwicklungsstadien

Die Anzahl an Entwicklungsstadien mit ihren Soll-Reifegraden und auch ihre Bezeichnungen variieren erheblich. Insbesondere bei Standardsoftware (inkl. Systemsoftware) legen die Hersteller häufig fest, wie sie ihre Software stufenweise entwickeln, für wen und zu welchen Zwecken sie die jeweiligen Softwareversionen bereitstellen und wie sie diese Stufen benennen. Bei der Entwicklung von Individualsoftware werden Entwicklungsstadien/Softwarereleases meist unternehmensindividuell praktiziert, sie sind oft nicht allgemeingültig festgelegt, sondern folgen projektspezifischen Gegebenheiten.

Entwicklungsstadien und Bezeichnungen für Softwarereleases können zum Beispiel sein:

pre-AlphaAlphaBetaRelease CandidateRelease.

In anderen Fällen praktiziert ein Hersteller Releasebezeichnungen wie die folgenden:

CLOSED → FINAL STABLE → FINAL → CURRENT BUILD → SCHEDULED.[2]

Dabei ergeben sich zwischen solchen Haupt-Stadien in der Softwareentwicklung intern beliebig viele Software-Zwischenversionen, zum Beispiel aus mehreren Behebungsversuchen (und Teststufen) bei gemeldeten Programmfehlern.

Für die Softwareentwicklung allgemein, d. h. nicht nur für ausführbare Programme geltend, sind beispielsweise folgende Stadien i. S. von Meilensteinen bekannt:

Projektdefinition, Anforderungsanalyse, Lastenheft, Pflichtenheft, Codeanalyse, Modultest, Systemtest, Projektabnahme

Softwarestadien für ausführbare Software

Datei:Software dev3 DE.png
Software-Entwicklungsstadien

Pre-Alpha-Version

Allgemein kann jeder beliebige Entwicklungszustand vor der ersten Alpha-Version als eine pre-Alpha-Version (von lateinisch prae- ‚vorzeitig‘ und vom ersten Buchstaben des griechischen Alphabets Alpha, auch als

α'

Schriftzeichen für 1) bezeichnet werden. Oft wird eine solche Version verwendet, wenn ein halbwegs fertiges Modul der Software vorgestellt werden soll. Eine weitere Bezeichnung ist die Entwicklervorschau (von englisch developer preview, abgekürzt auch oft DP).

Alpha-Version

Die erste zum Test durch Fremde (also nicht die eigentlichen Entwickler) bestimmte Version eines Computerprogramms wird oft Alpha-Version genannt. Obwohl der Begriff nicht exakt definiert ist, enthält in der Regel eine Alpha-Version bereits die grundlegenden Bestandteile des Softwareprodukts – es ist aber fast unerlässlich, dass in späteren Versionen der Funktionsumfang noch erweitert wird.

Insbesondere enthalten Alpha-Versionen zumeist Programmfehler in Ausmaß oder Menge, die sie für den produktiven Einsatz ungeeignet machen.

Auch Alpha-Versionen können als Entwicklervorschauen, englisch Developer Previews oder

Developer Releases

, verfügbar gemacht werden. Dies geschieht meist in einem exklusiven Kreis für Entwickler von Drittanbietern.

Beta-Version

Eine Beta-Version ist die erste Version eines Computerprogramms, die vom Hersteller zu Testzwecken veröffentlicht wird. Der Begriff ist nicht exakt definiert, als Faustregel zur Abgrenzung einer Beta-Version von anderen Versionen gilt in der Regel, dass in ihr zwar alle wesentlichen Funktionen des Programms implementiert, aber noch nicht vollständig getestet sind. Das Programm kann oder wird daher unter Umständen noch viele, evtl. auch schwerwiegende Fehler enthalten, die einen produktiven Einsatz nicht empfehlenswert machen.

Der Nutzen eines Betatests besteht insbesondere darin, dass Fehler, die typischerweise erst in der Praxis auftreten (wie zum Beispiel Konflikte mit anderen Programmen, Probleme mit bestimmten Hardwarekomponenten, missverständlich umgesetzte Anforderungen oder Unklarheiten in der Benutzeroberfläche), schon vor der finalen Veröffentlichung (englisch Release) des Programms erkannt und behoben oder zumindest dokumentiert werden können.

Als Betatester bezeichnet man im Allgemeinen den oder die ersten unabhängigen beziehungsweise anonymen Fremdtester und Anwender.

Beta-Versionen von Programmen sind in der Regel an der 0 als Hauptversionsnummer – diese Variante gilt natürlich nur für die Beta-Versionen vor der ersten fertigen Version (1.0) – oder dem Namenszusatz Beta zu erkennen.

Beta-Versionen werden normalerweise nicht auf dem gleichen Weg wie

Release Candidates

oder fertige Versionen vertrieben. Folgende Möglichkeiten finden Verwendung:

  • In (un)regelmäßigen Abständen werden definierte
    Snapshots
    (aktuelle Entwicklungszustände) aus dem Quellcodeverwaltungssystem generiert und en bloc entweder im Quellcode oder als vorkompiliertes Paket angeboten. Dies kann täglich (), wöchentlich oder zu beliebigen anderen Terminen, die die Entwickler für angemessen halten (z. B. nach Fertigstellung eines Subsystems), erfolgen. Eine solche Version kann auch ein automatisches
    Bugtracking
    -Modul enthalten (siehe z. B. Amarok), um den Betatestern die Fehlerberichte an die Entwickler zu erleichtern. Dies ist bei großen Projekten mit definierten Entwicklungszielen und einem festen Veröffentlichungszeitplan üblicherweise der Normalfall (z. B. bei GNOME).
  • Die Betaversion wird im Quellcodeverwaltungssystem zu einer definierten Revision mit einem
    Tag
    (einer Markierung) versehen, aber sonst nicht gesondert behandelt. Unabhängige Anbieter können dann diesen Entwicklungsstand als Basis für ihre vorkompilierten Pakete verwenden. Dies kommt bei sich sehr schnell ändernden Projekten, die unter Umständen ganz ohne oder nur mit seltenen festen
    Releases
    arbeiten, bei denen aber trotzdem allgemeines Interesse an aktuellen Versionen besteht, zum Einsatz (z. B. Dirac, Xine).
  • Es gibt keine feste Beta-Version, Beta ist das aktuelle HEAD, also der sich ständig ändernde, tatsächliche Entwicklungsstand. Betatester müssen den derzeitigen Stand selbst aus dem Quellcodeverwaltungssystem herunterladen, konfigurieren und kompilieren, diese Tätigkeit wird normalerweise durch vom Projekt bereitgestellte Skripte automatisiert erledigt. Dies ist der häufigste Fall, kann aber auch mit einer der beiden vorherigen Methoden kombiniert werden (das ist die Regel).

Perpetual Beta

Ein Begriff, der beschreibt, dass sich in Bezug auf die ständige Entwicklung des Internets auch Websites und Software kontinuierlich weiterentwickeln und somit nie wirklich fertig sind. Somit ist ein immerwährender Entwicklungszustand eingetreten, die „Perpetual Beta“. Entstanden als Schlagwort innerhalb des Web-2.0-Konzeptes, das dem

-Konzept der „

Continuous Integration

“ Rechnung trägt.

Release Candidate/Prerelease

[[Hilfe:Cache|Fehler beim Thumbnail-Erstellen]]:
Ein Screenshot eines Vorab-Releases mit Warnhinweisen zur Verwendung

Ein

Release Candidate

(kurz RC, aus dem Englischen für Freigabekandidat), gelegentlich auch als

Prerelease

(aus dem Englischen etwa für „Vorabveröffentlichung“ oder „Vorabversion“) bezeichnet, ist eine abschließende Testversion einer Software. Darin sind alle Funktionen, die die endgültige Version der Software enthalten soll, schon verfügbar (sogenannter

feature complete

), alle bis dahin bekannten Fehler sind behoben. Aus dem

Release Candidate

wird vor der Veröffentlichung die endgültige Version erstellt, um einen abschließenden Produkttest oder Systemtest durchzuführen. Dabei wird die Qualität der Software überprüft und nach verbliebenen Programmfehlern gesucht. Wird auch nur eine Kleinigkeit geändert, muss ein weiterer

Release Candidate

erstellt werden, und die Tests werden wiederholt. Die

Release Candidates

werden daher auch oft nummeriert (RC1, RC2 usw.). Erfolgen keine weiteren Änderungen und hält ein

Release Candidate

schließlich die geforderten Qualitätsstandards ein, so wird das Suffix RCx entfernt und damit die Version als

Release

(auch englisch final release, finale Veröffentlichung oder

final version

, finale Version) erklärt und veröffentlicht. Versionen, die deutlich stabiler sind als Beta-Versionen, aber noch nicht den Teststand eines

Release Candidate

besitzen, werden in manchen Entwicklungsprojekten als Gamma-Version bezeichnet. Bei Gerätetreibern für Windows gibt es manchmal den Status WHQL

Candidate

(übersetzt WHQL-Kandidat). Hierbei handelt es sich um eine dem RC entsprechende Treiberversion, die der Hersteller zur WHQL-Prüfung eingereicht hat, die entsprechende Zertifizierung ist allerdings noch nicht erfolgt.

Release

Die fertige und veröffentlichte Version einer Software wird als

Release

bezeichnet, manchmal auch als Hauptversion. Damit geht traditionell eine Erhöhung der Versionsnummer einher. Bei einer mediengebundenen Verteilung wird diese Version zur Produktion an die Presswerke ausgeliefert, wo sie auf Datenträger wie CD-ROMs oder DVDs kopiert, also als tatsächlich greifbares Produkt hergestellt wird.

Für diesen Status haben sich außerdem verschiedene Bezeichnungen etabliert:

Release to Manufacturing/Web
(RTM/RTW), auch
First Customer Shipment
(FCS)
Bereit für die Vervielfältigung und Veröffentlichung im Netz (Web)
Stable
für eine stabile Version, die nicht mehr verändert wird
Final
für die endgültige (finale) Version
General Availability
(GA)
steht für eine allgemeine Verfügbarkeit. Der Begriff verdeutlicht, dass die Version für den Praxiseinsatz freigegeben ist und über verschiedene Medien verteilt wurde bzw. erhältlich ist.[3][4][5]
Gold
, auch
Golden Master
(GM)
Mit dem Goldmaster wird die Version bezeichnet, welche schließlich ins Presswerk geht und (physisch) vervielfältigt wird. Um den Golden Master zu erreichen, müssen alle Fehler ausgebügelt und das Endprodukt vollständig komplett und auf das Endspeichermedium (die Goldmaster-DVD) gebrannt sein. Die Bezeichnung kommt aus der Musikindustrie. Die Goldmaster DVD wird ganz am Schluss hergestellt, kurz bevor sie ans Presswerk geschickt wird. Da es früher keine Updates oder ähnliches gab, wurden mehrere Golden Master erstellt und ausgiebig getestet, bevor die Endversion ins Presswerk geschickt wurde. Mit dem Gold Master wird die endgültige Verkaufsversion bezeichnet, welche als Original ins Presswerk kommt und von der dann Kopien hergestellt werden. In der Musik- und Filmindustrie wird der Golden Master noch ausgiebig eingesetzt (CD und DVD-Produktion), in der Software-Industrie wurde er weitgehend durch Updates ersetzt. Von der Goldmaster-DVD gibt es normalerweise nur ein Stück.

Benennungen

Die Bezeichnungen von Software-Versionen, Releases, sind grundsätzlich nicht genormt und lauten meist von Projekt zu Projekt unterschiedlich. Manche Hersteller legen in einer Art

auch die beabsichtigten Bezeichnungen für (geplante) veröffentlichte Entwicklungsstände fest. Statt „Version“ oder „Release“ sind u. a. folgenden Benennungen für veröffentlichte Software gängig:

Build
Das Ergebnis aus dem Kompilieren des Quelltextes. Dabei wird im
Build
-Prozess
meist die automatisch geführte
Build
-Nummer
um eins erhöht, vor allem, wenn der gesamte Quelltext kompiliert wird. Da die Software jedoch oft intern zum Testen kompiliert werden muss, trägt ein solcher
Build
meist dieselbe Versionsnummer wie der vorherige
Build
. Aber auch bei bereits veröffentlichten Versionen bzw.
Releases
werden oft zwecks Wartung, etwa wegen Funktionsupdates oder , neuere
Builds
als veröffentlicht.
Manche Programme hängen bei der Version die
Build
-Nummer mit einem Bindestrich an, also z. B. 1.2.3-4567, wobei 1 die Hauptversionsnummer ist, 2.3 die Nebenversions- und Revisionsnummer und 4567 (nach dem Bindestrich) die
Build
-Nummer. Siehe auch Versionsnummer.
Version
Ein Build, der eine eindeutige Versionsnummer erhält, wird als eine neue Version eines Projekts geführt. Wird im Zuge von oder
Bugfixes
z. B. eine Wartungsversion veröffentlicht, so kann diese die gleiche Versionsnummer tragen, aber eine höhere Build-Nummer oder einen namentlichen Zusatz, etwa „
Service Release
 1“ oder einfach „
Maintenance Release
.“
Release
Im Allgemeinen wird eine veröffentlichte Version als
Release
(deutsch: Veröffentlichung) bezeichnet. Interne Versionen, die nicht veröffentlicht werden, werden daher normalerweise nicht als
Release
bezeichnet, jedoch können solche Versionen oder Builds
leak
en
und somit ebenfalls an die Öffentlichkeit gelangen.

Problematisch ist auch der Begriff Beta-Version, da er nicht eindeutig definiert ist und damit grundsätzlich für jeden unfertigen Entwicklungsstand stehen kann. So gibt es dieselben Benennung nach den Stadien der Entwicklung oft einerseits bezogen auf das gesamte Projekt, andererseits kann die Benennung auch lediglich auf erst kürzlich hinzugefügte Teilkomponenten bezogen sein (und der Rest der Projektes ist eigentlich stabil und daher keine Beta-Version).

Auch die veröffentlichte Software selbst hat meist unterschiedliche Namen. Neben der sogenannten

“Release”

gibt es auch die

“Final”

oder

final version

(zu Deutsch: fertige Version oder auch finale Version). Es gibt jedoch auch den Begriff

“Stable”

, also stabil, oft als

stable version

, stabile Version. Auch hier zeigt sich deutlich, dass verschiedene Benennungen durchaus üblich sind: statt einer Version kann auch eine Veröffentlichung namensgebend sein: eine

final release

eines Entwicklungsprojektes ist lediglich die veröffentlichte

final version

. Bei unfertigen Versionen verhält es sich nicht anders. Ob nun Pre-Alpha-, Alpha- oder Beta-Version: gebräuchlich ist

“experimental”

(experimentell),

“unstable”

(instabil),

“testing”

genauso wie

“Preview”

, jeweils optional wieder als

“version”

oder als

“release”

, aber auch als

“build”

. Ein

Build

ist dabei am unspezifischsten, wird aber auch oft bei Veröffentlichungen verwendet, um den Status einer unfertigen Software zu verdeutlichen. Dennoch haben auch stabile und fertige Versionen oft eine

Build

-Nummer. Eine Besonderheit ist die Benennung als

, übersetzt: nächtlicher

Build

. Ein Programm mit dieser Benennung kann zwischen vollkommen stabil bis gänzlich laufunfähig alles sein, weil der Prozess fast immer automatisiert in der Nacht abläuft (daher auch der Name) und dabei auf dem jeweiligen Stand des Quelltextes basiert, an dem die Entwickler tagsüber ihre Änderungen vornehmen. Der Quelltext könnte durch die letzten Änderungen defekt geworden sein (englisch broken), jedoch dennoch übersetzbar für den Compiler bleiben, sodass zwar der Build-Prozess erfolgreich verläuft, das Programm jedoch dennoch nicht lauffähig ist. Daher sagt die Benennung als

Nightly Build

nichts über das Entwicklungsstadium des Softwareprojektes aus.

Üblich sind aber auch Benennungen, die unabhängig vom Entwicklungsstand eines Softwareprojekts an ein bestimmtes Publikum gerichtet sind. Diese verfolgen meist das für den Entwickler vorteilhafte Ziel, einen externen Betatest unter bestimmten Bedingungen durchzuführen. Auch die Benennungen für weiterreichende „Beta-Programme“ sind nicht genormt und lauten von Projekt zu Projekt unterschiedlich, es gibt jedoch gemeinsame Schlagwörter:

Internal Build
oder
Private Build
bezeichnet eine lauffähige Version eines Projekts, das nur intern getestet wird.
Developer Build
ist eine Testversion, die speziell für externe Entwickler (englisch developer) gedacht ist. Das kommt meist dann zur Anwendung, wenn viele Drittanbieter für die Funktion des Projektes unerlässlich sind, z. B. bei einem Betriebssystem, auf dem viele Programme von anderen Herstellern laufen können (bzw. kompatibel bleiben oder werden) sollen.
Beispiel:
Rhapsody Developer Release
oder Mac OS X
Developer Preview
Closed Beta
bezeichnet eine Beta-Version, die einem exklusiven Kreis verfügbar gemacht wird.
Beispiel: Windows 10 als
Insider Build
oder
Insider Preview
, das für Teilnehmer eines offenen (da nur anmeldepflichtigen) Programms von Microsoft, das den Namen
Insider Program
trug, veröffentlicht wurde. Dabei war die Aufnahme von Testern zeitlich begrenzt.
Public Beta
bezeichnet eine Beta-Version, die offen und uneingeschränkt für gedacht ist.
Beispiel: Mac OS X Public Beta, eine Beta-Version von Mac OS X 10.0.
bezeichnet ein Kundenprogramm, das einen meist kostenpflichtigen Zugang (englisch access) zu frühen Test- und/oder Entwicklerversionen bietet. Dies ist vor allem bei Computerspielen sehr beliebt, da es einerseits den Spielern bereits lange vor der Veröffentlichung eines Titels erlaubt, bestimmte Elemente der Spielewelt zu erforschen und bei Stabilitätstests auf verschiedener Hardware zu helfen, andererseits den Entwicklern ermöglicht, frühzeitig Änderungen vorzunehmen, die auf Feedback der Spieler basieren.
Early-Access
-Programme sind zudem meist eine gute Finanzierungsquelle, da das Entwicklerstudio bereits über
Early-Access
-Verkäufe Geld für die Entwicklung des Spiels vorab einnimmt.

Eine weitere Art der Benennung stellt die Bezeichnung des Zwecks oder Grundes dar, für den eine bestimmte Version herausgegeben wird. Gebräuchlich sind hier vor allem die

“Maintenance Release”

und

“Service Release”

, also eine Veröffentlichung zum Zweck der Wartung. Übersetzt wird dies oft auch als Wartungsversion.

Fehlerbehebung nach Veröffentlichung

Um Fehler in bereits veröffentlichter Software zu beheben, geben Softwarehersteller sogenannte Aktualisierungen,

,

und

heraus. Bei vielen modernen Anwendungen und Betriebssystemen können diese dann manuell oder automatisch über das Internet bezogen werden.

Firefox als Beispiel

Der Webbrowser Mozilla Firefox erscheint in sechswöchigen Abständen in vier verschiedenen Versionen: der experimentellen Version Firefox Nightly (pre-alpha), der experimentellen Version "Firefox Developer Edition", der größtenteils stabilen Version Firefox Beta und der stabilen Version Firefox,[6][7] die sich jeweils in ihrer Versionsnummer unterscheiden, z. B. Firefox Aurora 11, Firefox Beta 10, Firefox 9. Außerdem kann man das „nächtliche“

(aktueller Entwicklungsstand, nur zum Testen geeignet) herunterladen. Auf diese Weise kann einerseits der Entwicklungsprozess beschleunigt werden, andererseits können Benutzer durch die Verwendung der Versionen Beta oder Aurora dazu beitragen, künftige Funktionen der stabilen Version zu testen, zu beurteilen und Programmfehler sowie Sicherheitslücken frühzeitig zu erkennen, da die Aurora-Version zwölf und die Beta-Version sechs Wochen vor dem endgültigen Erscheinen der stabilen Version der Öffentlichkeit zur Verfügung gestellt wird.

Siehe auch

Literatur

  • Manfred Precht, Nikolaus Meier, Dieter Tremel: EDV-Grundwissen. Pearson Education, München 2004, ISBN 3-8273-2129-8.
  • Mike Gunderloy: Coder to Developer. Wiley_Default, 2004, ISBN 0-7821-4327-X.

Einzelnachweise

  1. Ralf Ötinger Benutzergerechte Softwareentwicklung [1] Stadien: Problemanalyse, Anforderungsdefinition
  2. es2000 Software für Sie gemacht Archivierte Kopie (Memento des Originals vom 11. Dezember 2017 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/www.es2000.de Support Lifecycle
  3. Microsoft Announces General Availability of Windows Small Business Server 2008 and Windows Essential Business Server 2008 (Memento vom 25. Dezember 2008 im Internet Archive)
  4. VMware Announces General Availability of VMware View 3, with Ground-Breaking Advances in Managing, Scaling and Personalizing Virtual Desktop Environments (Memento vom 5. Dezember 2008 im Internet Archive)
  5. Release Phases & Criteria. (Nicht mehr online verfügbar.) In: cs.pomona.edu. Archiviert vom Original am 11. Juli 2016; abgerufen am 24. Juli 2016 (englisch).  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/www.cs.pomona.edu
  6. Johnathan Nightingale: Every Six Weeks. In: blog.mozilla.org. 18. Juli 2011, abgerufen am 24. Juli 2016 (englisch).
  7. Jens Ihlenfeld: Firefox weiter alle 6 Wochen, aber mit Versionsnummer. golem.de, 26. August 2011, abgerufen am 24. Juli 2016.