www.wikidata.de-de.nina.az
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 fur das Projekt gewahlten Vorgehensmodell seinen Aktivitaten und Meilensteinen oder auf Festlegungen in herstellerspezifischen Methodenkonzepten und Entwicklungsumgebungen Im engeren Sinn bezieht sich der Begriff Entwicklungsstadium auf ausfuhrbare Software d h auf lauffahige 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 fur 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 ubergeleitet Nach dem Erreichen des Software Endzustands beginnt der Entwicklungszyklus i d R mit Massnahmen Projekten zur Anwendungserweiterung wieder neu mit dem Ziel einer neuen Software Version Inhaltsverzeichnis 1 Zweck Unterschiede 2 Beispiele fur Entwicklungsstadien 3 Softwarestadien fur ausfuhrbare Software 3 1 Pre Alpha Version 3 2 Alpha Version 3 3 Beta Version 3 4 Perpetual Beta 3 5 Release Candidate Prerelease 3 6 Release 3 7 Benennungen 4 Fehlerbehebung nach Veroffentlichung 5 Firefox als Beispiel 6 Siehe auch 7 Literatur 8 EinzelnachweiseZweck Unterschiede BearbeitenDie Zielsetzung fur die Festlegung mehrerer Entwicklungsstadien ist im Allgemeinen im Projektverlauf Fixpunkte mit definierten Reifegraden zu erreichen um die anschliessenden Aktivitaten sicher er bearbeiten zu konnen Haufig werden unterschiedliche Entwicklungsstadien z B beim Softwaretest praktiziert um in nachgelagerten Teststufen Testarten Funktionsdetails uberprufen zu konnen die auf bereits im vorhergehenden Stadium getesteten Funktionalitaten aufsetzen Unterschiede zwischen den einzelnen Software Entwicklungsstadien fur Computerprogramme konnen zum Beispiel folgende sein um fur 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 Spezialfalle realisiert ebenfalls fur erste fruhe Tests Die Software wurde im bisherigen Stadium nur durch bestimmte Testarten wie Alphatests uberpruft zur Durchfuhrung von Betatests Die Software enthalt noch Hilfsroutinen z B Stubs oder Driver zum Testen von Unterprogrammen Die Anwendung wird zur Ubernahme in eine spezielle System oder Testumgebung bereitgestellt und ist ggf zielsystemspezifisch adaptiert zur Durchfuhrung von Produktionstests oder Lasttests In der Anwendung sind Hilfsroutinen enthalten die das Testen und die Dokumentation von Fehlerfallen unterstutzen fur offentliche Tester Stadiumbezogene Ubergaben enthalten entweder die ganze Anwendung oder nur einzelne Komponenten zur nachtraglichen Installation Die Anwendung ist vollstandig einsatzbereit letztes Stadium zur finalen Ubergabe in die Produktionsumgebung Beispiele fur Entwicklungsstadien BearbeitenDie Anzahl an Entwicklungsstadien mit ihren Soll Reifegraden und auch ihre Bezeichnungen variieren erheblich Insbesondere bei Standardsoftware inkl Systemsoftware legen die Hersteller haufig fest wie sie ihre Software stufenweise entwickeln fur 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 allgemeingultig festgelegt sondern folgen projektspezifischen Gegebenheiten Entwicklungsstadien und Bezeichnungen fur Softwarereleases konnen zum Beispiel sein pre Alpha Alpha Beta Release Candidate Release In anderen Fallen 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 Fur die Softwareentwicklung allgemein d h nicht nur fur ausfuhrbare Programme geltend sind beispielsweise folgende Stadien i S von Meilensteinen bekannt Projektdefinition Anforderungsanalyse Lastenheft Pflichtenheft Codeanalyse Modultest Systemtest ProjektabnahmeSoftwarestadien fur ausfuhrbare Software Bearbeiten nbsp Software EntwicklungsstadienPre Alpha Version Bearbeiten 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 a Schriftzeichen fur 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 abgekurzt auch oft DP Alpha Version Bearbeiten 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 enthalt in der Regel eine Alpha Version bereits die grundlegenden Bestandteile des Softwareprodukts es ist aber fast unerlasslich dass in spateren Versionen der Funktionsumfang noch erweitert wird Insbesondere enthalten Alpha Versionen zumeist Programmfehler in Ausmass oder Menge die sie fur den produktiven Einsatz ungeeignet machen Auch Alpha Versionen konnen als Entwicklervorschauen englisch Developer Previews oder Developer Releases verfugbar gemacht werden Dies geschieht meist in einem exklusiven Kreis fur Entwickler von Drittanbietern Beta Version Bearbeiten Eine Beta Version ist die erste Version eines Computerprogramms die vom Hersteller zu Testzwecken veroffentlicht 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 vollstandig getestet sind Das Programm kann oder wird daher unter Umstanden 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 missverstandlich umgesetzte Anforderungen oder Unklarheiten in der Benutzeroberflache schon vor der finalen Veroffentlichung englisch Release des Programms erkannt und behoben oder zumindest dokumentiert werden konnen Als Betatester bezeichnet man im Allgemeinen den oder die ersten unabhangigen beziehungsweise anonymen Fremdtester und Anwender Beta Versionen von Programmen sind in der Regel an der 0 als Hauptversionsnummer diese Variante gilt naturlich nur fur 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 Moglichkeiten finden Verwendung In un regelmassigen Abstanden werden definierte Snapshots aktuelle Entwicklungszustande aus dem Quellcodeverwaltungssystem generiert und en bloc entweder im Quellcode oder als vorkompiliertes Paket angeboten Dies kann taglich Nightly Build wochentlich oder zu beliebigen anderen Terminen die die Entwickler fur 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 grossen Projekten mit definierten Entwicklungszielen und einem festen Veroffentlichungszeitplan ublicherweise 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 Unabhangige Anbieter konnen dann diesen Entwicklungsstand als Basis fur ihre vorkompilierten Pakete verwenden Dies kommt bei sich sehr schnell andernden Projekten die unter Umstanden 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 standig andernde tatsachliche Entwicklungsstand Betatester mussen den derzeitigen Stand selbst aus dem Quellcodeverwaltungssystem herunterladen konfigurieren und kompilieren diese Tatigkeit wird normalerweise durch vom Projekt bereitgestellte Skripte automatisiert erledigt Dies ist der haufigste Fall kann aber auch mit einer der beiden vorherigen Methoden kombiniert werden das ist die Regel Perpetual Beta Bearbeiten Ein Begriff der beschreibt dass sich in Bezug auf die standige Entwicklung des Internets auch Websites und Software kontinuierlich weiterentwickeln und somit nie wirklich fertig sind Somit ist ein immerwahrender Entwicklungszustand eingetreten die Perpetual Beta Entstanden als Schlagwort innerhalb des Web 2 0 Konzeptes das dem Extreme Programming Konzept der Continuous Integration Rechnung tragt Siehe auch Bananenprinzip Release Candidate Prerelease Bearbeiten nbsp Ein Screenshot eines Vorab Releases mit Warnhinweisen zur VerwendungEin Release Candidate kurz RC aus dem Englischen fur Freigabekandidat gelegentlich auch als Prerelease aus dem Englischen etwa fur Vorabveroffentlichung oder Vorabversion bezeichnet ist eine abschliessende Testversion einer Software Darin sind alle Funktionen die die endgultige Version der Software enthalten soll schon verfugbar sogenannter feature complete alle bis dahin bekannten Fehler sind behoben Aus dem Release Candidate wird vor der Veroffentlichung die endgultige Version erstellt um einen abschliessenden Produkttest oder Systemtest durchzufuhren Dabei wird die Qualitat der Software uberpruft und nach verbliebenen Programmfehlern gesucht Wird auch nur eine Kleinigkeit geandert 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 Anderungen und halt ein Release Candidate schliesslich die geforderten Qualitatsstandards ein so wird das Suffix RCx entfernt und damit die Version als Release auch englisch final release finale Veroffentlichung oder final version finale Version erklart und veroffentlicht 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 Geratetreibern fur Windows gibt es manchmal den Status WHQL Candidate ubersetzt WHQL Kandidat Hierbei handelt es sich um eine dem RC entsprechende Treiberversion die der Hersteller zur WHQL Prufung eingereicht hat die entsprechende Zertifizierung ist allerdings noch nicht erfolgt Release Bearbeiten Die fertige und veroffentlichte Version einer Software wird als Release bezeichnet manchmal auch als Hauptversion Damit geht traditionell eine Erhohung der Versionsnummer einher Bei einer mediengebundenen Verteilung wird diese Version zur Produktion an die Presswerke ausgeliefert wo sie auf Datentrager wie CD ROMs oder DVDs kopiert also als tatsachlich greifbares Produkt hergestellt wird Fur diesen Status haben sich ausserdem verschiedene Bezeichnungen etabliert Release to Manufacturing Web RTM RTW auch First Customer Shipment FCS Bereit fur die Vervielfaltigung und Veroffentlichung im Netz Web Stable fur eine stabile Version die nicht mehr verandert wird Final fur die endgultige finale Version General Availability GA steht fur eine allgemeine Verfugbarkeit Der Begriff verdeutlicht dass die Version fur den Praxiseinsatz freigegeben ist und uber verschiedene Medien verteilt wurde bzw erhaltlich ist 3 4 5 Gold auch Golden Master GM Mit dem Goldmaster wird die Version bezeichnet welche schliesslich ins Presswerk geht und physisch vervielfaltigt wird Um den Golden Master zu erreichen mussen alle Fehler ausgebugelt und das Endprodukt vollstandig 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 fruher keine Updates oder ahnliches gab wurden mehrere Golden Master erstellt und ausgiebig getestet bevor die Endversion ins Presswerk geschickt wurde Mit dem Gold Master wird die endgultige 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 Stuck Benennungen Bearbeiten Die Bezeichnungen von Software Versionen Releases sind grundsatzlich nicht genormt und lauten meist von Projekt zu Projekt unterschiedlich Manche Hersteller legen in einer Art Roadmap auch die beabsichtigten Bezeichnungen fur geplante veroffentlichte Entwicklungsstande fest Statt Version oder Release sind u a folgenden Benennungen fur veroffentlichte Software gangig Build Das Ergebnis aus dem Kompilieren des Quelltextes Dabei wird im Build Prozess meist die automatisch gefuhrte Build Nummer um eins erhoht vor allem wenn der gesamte Quelltext kompiliert wird Da die Software jedoch oft intern zum Testen kompiliert werden muss tragt ein solcher Build meist dieselbe Versionsnummer wie der vorherige Build Aber auch bei bereits veroffentlichten Versionen bzw Releases werden oft zwecks Wartung etwa wegen Funktionsupdates oder Bugfixes neuere Builds als Update veroffentlicht Manche Programme hangen 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 erhalt wird als eine neue Version eines Projekts gefuhrt Wird im Zuge von Hotfixes oder Bugfixes z B eine Wartungsversion veroffentlicht so kann diese die gleiche Versionsnummer tragen aber eine hohere Build Nummer oder einen namentlichen Zusatz etwa Service Release 1 oder einfach Maintenance Release Release Im Allgemeinen wird eine veroffentlichte Version als Release deutsch Veroffentlichung bezeichnet Interne Versionen die nicht veroffentlicht werden werden daher normalerweise nicht als Release bezeichnet jedoch konnen solche Versionen oder Builds leak en und somit ebenfalls an die Offentlichkeit gelangen Problematisch ist auch der Begriff Beta Version da er nicht eindeutig definiert ist und damit grundsatzlich fur 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 kurzlich hinzugefugte Teilkomponenten bezogen sein und der Rest der Projektes ist eigentlich stabil und daher keine Beta Version Auch die veroffentlichte 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 ublich sind statt einer Version kann auch eine Veroffentlichung namensgebend sein eine final release eines Entwicklungsprojektes ist lediglich die veroffentlichte final version Bei unfertigen Versionen verhalt es sich nicht anders Ob nun Pre Alpha Alpha oder Beta Version gebrauchlich 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 Veroffentlichungen 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 Nightly Build ubersetzt nachtlicher Build Ein Programm mit dieser Benennung kann zwischen vollkommen stabil bis ganzlich laufunfahig alles sein weil der Prozess fast immer automatisiert in der Nacht ablauft daher auch der Name und dabei auf dem jeweiligen Stand des Quelltextes basiert an dem die Entwickler tagsuber ihre Anderungen vornehmen Der Quelltext konnte durch die letzten Anderungen defekt geworden sein englisch broken jedoch dennoch ubersetzbar fur den Compiler bleiben sodass zwar der Build Prozess erfolgreich verlauft das Programm jedoch dennoch nicht lauffahig ist Daher sagt die Benennung als Nightly Build nichts uber das Entwicklungsstadium des Softwareprojektes aus Ublich sind aber auch Benennungen die unabhangig vom Entwicklungsstand eines Softwareprojekts an ein bestimmtes Publikum gerichtet sind Diese verfolgen meist das fur den Entwickler vorteilhafte Ziel einen externen Betatest unter bestimmten Bedingungen durchzufuhren Auch die Benennungen fur weiterreichende Beta Programme sind nicht genormt und lauten von Projekt zu Projekt unterschiedlich es gibt jedoch gemeinsame Schlagworter Internal Build oder Private Build bezeichnet eine lauffahige Version eines Projekts das nur intern getestet wird Developer Build ist eine Testversion die speziell fur externe Entwickler englisch developer gedacht ist Das kommt meist dann zur Anwendung wenn viele Drittanbieter fur die Funktion des Projektes unerlasslich sind z B bei einem Betriebssystem auf dem viele Programme von anderen Herstellern laufen konnen 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 verfugbar gemacht wird Beispiel Windows 10 als Insider Build oder Insider Preview das fur Teilnehmer eines offenen da nur anmeldepflichtigen Programms von Microsoft das den Namen Insider Program trug veroffentlicht wurde Dabei war die Aufnahme von Testern zeitlich begrenzt Public Beta bezeichnet eine Beta Version die offen und uneingeschrankt fur Early Adopter gedacht ist Beispiel Mac OS X Public Beta eine Beta Version von Mac OS X 10 0 Early Access bezeichnet ein Kundenprogramm das einen meist kostenpflichtigen Zugang englisch access zu fruhen Test und oder Entwicklerversionen bietet Dies ist vor allem bei Computerspielen sehr beliebt da es einerseits den Spielern bereits lange vor der Veroffentlichung eines Titels erlaubt bestimmte Elemente der Spielewelt zu erforschen und bei Stabilitatstests auf verschiedener Hardware zu helfen andererseits den Entwicklern ermoglicht fruhzeitig Anderungen vorzunehmen die auf Feedback der Spieler basieren Early Access Programme sind zudem meist eine gute Finanzierungsquelle da das Entwicklerstudio bereits uber Early Access Verkaufe Geld fur die Entwicklung des Spiels vorab einnimmt Eine weitere Art der Benennung stellt die Bezeichnung des Zwecks oder Grundes dar fur den eine bestimmte Version herausgegeben wird Gebrauchlich sind hier vor allem die Maintenance Release und Service Release also eine Veroffentlichung zum Zweck der Wartung Ubersetzt wird dies oft auch als Wartungsversion Fehlerbehebung nach Veroffentlichung BearbeitenUm Fehler in bereits veroffentlichter Software zu beheben geben Softwarehersteller sogenannte Aktualisierungen Hotfixes Patches und Service Packs heraus Bei vielen modernen Anwendungen und Betriebssystemen konnen diese dann manuell oder automatisch uber das Internet bezogen werden Firefox als Beispiel BearbeitenDer Webbrowser Mozilla Firefox erscheint in sechswochigen Abstanden in vier verschiedenen Versionen der experimentellen Version Firefox Nightly pre alpha der experimentellen Version Firefox Developer Edition der grosstenteils 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 Ausserdem kann man das nachtliche Nightly Build aktueller Entwicklungsstand nur zum Testen geeignet herunterladen Auf diese Weise kann einerseits der Entwicklungsprozess beschleunigt werden andererseits konnen Benutzer durch die Verwendung der Versionen Beta oder Aurora dazu beitragen kunftige Funktionen der stabilen Version zu testen zu beurteilen und Programmfehler sowie Sicherheitslucken fruhzeitig zu erkennen da die Aurora Version zwolf und die Beta Version sechs Wochen vor dem endgultigen Erscheinen der stabilen Version der Offentlichkeit zur Verfugung gestellt wird Siehe auch BearbeitenCode FreezeLiteratur BearbeitenManfred Precht Nikolaus Meier Dieter Tremel EDV Grundwissen Pearson Education Munchen 2004 ISBN 3 8273 2129 8 Mike Gunderloy Coder to Developer Wiley Default 2004 ISBN 0 7821 4327 X Einzelnachweise Bearbeiten Ralf Otinger Benutzergerechte Softwareentwicklung 1 Stadien Problemanalyse Anforderungsdefinition es2000 Software fur Sie gemacht Archivierte Kopie Memento des Originals vom 11 Dezember 2017 im Internet Archive nbsp Info Der Archivlink wurde automatisch eingesetzt und noch nicht gepruft Bitte prufe Original und Archivlink gemass Anleitung und entferne dann diesen Hinweis 1 2 Vorlage Webachiv IABot www es2000 de Support Lifecycle Microsoft Announces General Availability of Windows Small Business Server 2008 and Windows Essential Business Server 2008 Memento vom 25 Dezember 2008 im Internet Archive 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 Release Phases amp Criteria Nicht mehr online verfugbar In cs pomona edu Archiviert vom Original am 11 Juli 2016 abgerufen am 24 Juli 2016 englisch nbsp Info Der Archivlink wurde automatisch eingesetzt und noch nicht gepruft Bitte prufe Original und Archivlink gemass Anleitung und entferne dann diesen Hinweis 1 2 Vorlage Webachiv IABot www cs pomona edu Johnathan Nightingale Every Six Weeks In blog mozilla org 18 Juli 2011 abgerufen am 24 Juli 2016 englisch Jens Ihlenfeld Firefox weiter alle 6 Wochen aber mit Versionsnummer golem de 26 August 2011 abgerufen am 24 Juli 2016 Abgerufen von https de wikipedia org w index php title Entwicklungsstadium Software amp oldid 235978524 Beta Version