Ebenso wie Menschen in ihrem Leben verschiedene Phasen durchlaufen, tun dies auch Softwareprodukte. Dies wird häufig als Software-Release-Lebenszyklus bezeichnet.
Mit den verschiedenen Phasen des Lebenszyklus oder den „Entwicklungsphasen“ innerhalb von Apps sind bestimmte Zeiträume verbunden, aber es kann schwierig sein, vorherzusagen, wann eine Phase endet und eine andere beginnt. Jede Phase verfügt über einen eigenen, klar abgegrenzten Satz von Aufgaben und Anforderungen funktionsübergreifender Abteilungen. Daher ist es für Produktmanager wichtig, jede Phase zu verstehen, um das Unternehmen erfolgreich durch den Software-Release-Lebenszyklus zu führen.
Im weiteren Verlauf dieses Artikels werde ich meine Erfahrungen beim Verkauf und bei der Integration von BankerBox, einem FinTech-SaaS-Unternehmen für Investmentbanker, in SS&C Intralinks gemeinsam mit meinem Mitgründer in den verschiedenen Phasen des SRLC schildern.
Was ist ein Software-Release-Lebenszyklus (SRLC)?
Der Software-Release-Lebenszyklus (SRLC) ist eine Reihe von Meilensteinen, die die verschiedenen Phasen im Lebenszyklus einer Software oder deren zeitlich aufeinanderfolgende Veröffentlichungen beschreiben – von der Konzeption bis zur letztendlichen Veröffentlichung einer vollständig ausgereiften Version. Die Länge dieses Lebenszyklus variiert abhängig von verschiedenen Faktoren, etwa der Art des Produkts, seinem vorgesehenen Verwendungszweck sowie den Sicherheits-, Compliance- und allgemeinen Branchenstandards.
Softwareanwendungen haben beispielsweise in der Regel einen kürzeren Lebenszyklus als die meisten anderen Produkte, da neue Funktionen und Verbesserungen häufig nach einer agilen Vorgehensweise veröffentlicht werden, um den sich wandelnden Marktanforderungen und neuen technologischen Trends gerecht zu werden.
Er ähnelt dem Softwareentwicklungslebenszyklus (SDLC), einer Struktur, die für die Entwicklung von Softwareprodukten eingesetzt wird. Der Unterschied zwischen diesen beiden Lebenszyklen besteht darin, dass der SDLC ausschließlich den Softwareentwicklungsprozess und das Softwaredesign beschreibt, während der Release-Lebenszyklus nicht nur die Entwicklung, sondern auch die Nutzbarkeit, das Testen und die Verteilung umfasst.
Software-Releases müssen sorgfältig geplant und getestet werden (idealerweise von einem Testteam), um sicherzustellen, dass sie nicht mehr Probleme verursachen, als sie lösen. Ein Software-Release-Lebenszyklus legt einen klaren Plan für einen erfolgreichen Release-Prozess durch angemessene Planung, Tests und Fehlerbehebungen fest.
Unternehmen sollten den Software-Release-Lebenszyklus nutzen, um vorausschauend zu planen, wann und wie sie ihre Webanwendung oder Apps im Laufe der Zeit aktualisieren. Durch die Umsetzung geeigneter Release-Management-Praktiken können sie ein robustes Produkt aufrechterhalten, das kontinuierlich sowohl die Bedürfnisse seiner Nutzer als auch die Kernfunktionalität und die Branchenstandards erfüllt (dabei kann auch KI im Release-Management helfen). Dadurch können sie ein robustes Produkt aufrechterhalten, das kontinuierlich sowohl die Bedürfnisse seiner Nutzer als auch die Kernfunktionalität und die Branchenstandards erfüllt.
Die 6 Phasen des Software-Release-Lebenszyklus
Abhängig von der Art des zu entwickelnden Systems und den Anforderungen des Entwicklungsteams können verschiedene Phasen des Software-Release-Lebenszyklus zum Einsatz kommen.
Die „Phasen“ markieren Meilensteine in der Produktentwicklung und ermöglichen es dem Entwicklungsteam und den Projektmanagern, den Fortschritt zu verfolgen. Außerdem können Entwicklungsteams dadurch Trends in Apps und Webanwendungen beobachten und überprüfen, ob durch iterative Weiterentwicklung im Laufe der Zeit Verbesserungen erzielt werden. Typischerweise umfasst er die folgenden sechs Phasen:
Have an account? Log In
1. Pre-Alpha-Version
Die erste Phase des Software-Release-Lebenszyklus ist die Pre-Alpha-Phase. In dieser Phase des Prozesses steht vollständig die Entwicklung eines Produkts und nicht dessen Vermarktung oder öffentliche Veröffentlichung im Mittelpunkt. Sie umfasst alle während der anfänglichen Entwicklung vor dem Testen ausgeführten Maßnahmen. Die häufigsten Phasen der Pre-Alpha sind Analyse, Design, Entwicklung und Unit-Tests.
Ein wesentlicher Bestandteil der Pre-Alpha-Version besteht darin, zu ermitteln, wie sich die Softwareanwendung weiterentwickeln muss, um sie auf umfassendere Veröffentlichungen wie die Alpha- oder Beta-Version vorzubereiten. Das Entwicklungsteam muss zuverlässige Softwaretests, eine gute Nutzbarkeit und Automatisierung einrichten, um stabile Übergänge zwischen den verschiedenen Phasen des Software-Release-Lebenszyklus sicherzustellen.
Bei der SaaS-Lösung, die mein Mitgründer und ich in SS&C Intralinks integriert haben, hatten wir die Pre-Alpha-Phase bereits geprüft und abgeschlossen. Wir verfügten über eine funktionsfähige Anwendung, die konzipiert, designt und entwickelt worden war. Es ist jedoch wichtig zu beachten, dass sich die Definition der Schritte Analyse, Design, Entwicklung und Unit-Tests bei einem kleinen Softwareunternehmen durchaus von der Sichtweise und dem Maß an Gründlichkeit eines großen Unternehmens bei diesen Schritten unterscheiden kann.
4 Phasen zum Einleiten der Pre-Alpha-Version
Analyse: Dies ist die erste Phase des Software-Release-Lebenszyklus oder SRLC, in der das Problem und die Anforderungen eines Systems detailliert untersucht werden. Dazu gehören die Analyse der Nutzeranforderungen, der kritischen Funktionalität, die Identifizierung des Problembereichs, die Erstellung von Machbarkeitsberichten sowie die Erstellung einer SRS (Software-Anforderungsspezifikation).
Gestaltung: In dieser Phase entwickeln die Entwicklungsteams eine Lösung für das Problem, das in der Analysephase identifiziert wurde. Diese Phase umfasst die Erstellung eines hochrangigen Designdokuments und von Entwürfen, in denen erläutert wird, wie das Softwareprodukt umgesetzt werden soll. Das Designdokument hebt die grundlegenden Schritte hervor, die befolgt werden müssen, um die Webanwendung zu erstellen.
Wenn Sie an Layouts oder Benutzeroberflächen-Abläufen arbeiten, können diese Tools zur Prototypenerstellung für responsives Design Ihnen helfen, Ideen schnell zu testen, bevor Sie mit der Entwicklung beginnen. Das Designdokument hebt die grundlegenden Schritte hervor, die befolgt werden müssen, um die Webanwendung zu erstellen.
Entwicklung: Dies ist die eigentliche Programmierphase, in der ein Entwicklungsteam die Anforderungsspezifikationen in ein tatsächliches Softwareprodukt umsetzt. Sobald die Programmierung abgeschlossen ist, führen die Entwickler Tests durch und beheben Fehler so früh wie möglich.
Modultests: Diese werden von den Entwicklern durchgeführt, bevor sie ihr Modul dem Entwicklungsteam für Qualitätssicherung (QA) zur weiteren Prüfung übergeben. In dieser Phase überprüfen die Entwickler jede einzelne Zeile des Quellcodes, um sicherzustellen, dass der Code ordnungsgemäß funktioniert, bevor er in die gesamte Anwendung integriert wird.
2. Alpha-Version
Die Alpha-Phase steht für den ersten Buchstaben des griechischen Alphabets und ist außerdem ein Codename für die Entwicklungsphase, die vor der Markteinführung eines Produkts stattfindet. Softwareentwickler verwenden den Begriff "Alpha" oder “Alpha-Version”, um Software zu beschreiben, die sich in der ersten Phase des Softwaretests befindet.
Alpha-Tests werden von internen Mitarbeitern oder Entwicklern innerhalb der Organisation durchgeführt. Diese Art von Test findet am Standort des Entwicklers, nicht jedoch am Standort des Kunden statt. Alpha-Tests werden nach Abschluss der Systemtests und vor den Betatests durchgeführt. Dieser Test wird durchgeführt, um Fehler oder Mängel im Zusammenhang mit Benutzerfreundlichkeit, Funktionalität und Konsistenz zu finden.
Bei dieser Art von Test führt eine Gruppe von Personen, die als „Testpersonen“ bezeichnet werden, Vorgänge aus, die denen von Endbenutzern ähneln, und berichtet anschließend über alle aufgetretenen Probleme. Der Hauptzweck von Alpha-Tests besteht darin, sicherzustellen, dass alle Module ordnungsgemäß integriert sind und wie erwartet funktionieren.
Als wir die Alpha-Phase für BankerBox durchliefen, wandten wir uns an Kollegen aus den Bereichen Produkt und Software sowie in unserem Fall – beim Aufbau einer Lösung für Banken – an mehrere Investmentbanker und Kontakte aus dem Bereich der Hochfinanz.
Alpha-Software ist vollständig mit Funktionen ausgestattet, weist aber wahrscheinlich noch Fehler auf. Der Schwerpunkt von Alpha-Tests liegt darauf, ein Produkt zu verbessern, indem Probleme erkannt werden, bevor es in die Betatestphase gelangt, und indem kurzfristig erforderliche Anpassungen vorgenommen werden, die aufgrund des Alpha-Feedbacks vorgeschlagen wurden.
3. Beta-Version
Die Beta-Phase, benannt nach dem zweiten Buchstaben des griechischen Alphabets, ist der Codename dafür, dass ein Softwareprodukt in die zweite Testphase übergegangen und für die externe Nutzung durch Kunden oder Auftraggeber bereit ist, die häufig als „Betatester“ bezeichnet werden. Einige Organisationen bezeichnen diese Phase als die Phase der „frühen Anwender“.
Sobald eine Beta-Version veröffentlicht wurde, wird sie im Allgemeinen intensiver getestet als während ihrer Alpha-Phase. Dadurch können Unternehmen beurteilen, wie gut ihre Software unter realen Bedingungen funktionieren wird.
Nachdem SS&C Intralinks BankerBox übernommen hatte, stellten wir schnell einige wichtige Integrationspunkte zwischen unserer Software und den übergeordneten Systemen des Unternehmens her (Authentifizierung, Cloud-Server usw.). Anschließend führten wir eine Demonstration durch und arbeiteten mit mehreren Unternehmenskunden zusammen, um sie einzuladen, diese Lösung live bei einer M&A-Transaktion zu „betatesten“.
Dies war eine großartige Möglichkeit für uns, Feedback zu erhalten, eine Kundenbeziehung aufzubauen und Bereiche zu identifizieren, in denen sich die Software weiterentwickeln muss, um die Anforderungen und den „Maßstab“ für einen Freigabekandidaten (RC) oder die allgemeine Verfügbarkeit (GA) zu erfüllen.
Bei dieser Art von Test geben Kunden wertvolles Feedback dazu, ob das Produkt oder die Anwendung ihre Erwartungen hinsichtlich Funktionalität, Benutzerfreundlichkeit, Leistung, Zuverlässigkeit, Skalierbarkeit und ähnlicher Aspekte erfüllt. Das von den Endbenutzern bereitgestellte Feedback trägt dazu bei, die Benutzererfahrung zu verbessern und betriebliche Probleme zu beheben, bevor das Produkt in den Produktivbetrieb überführt wird. Es gibt zwei Arten der Betaphase:
- Offene Betaphase: Während dieser Phase kann jeder, der teilnehmen möchte, am Betatest teilnehmen. Dies kann Entwicklern helfen, Fehler in ihrem Produkt schnell und einfach zu erkennen und zu beheben, da das Feedback mehrerer Benutzer Probleme sichtbar machen kann.
- Geschlossene Betaphase: In dieser Phase gibt es einen bestimmten Zielmarkt mit festgelegten Personengruppen als Testern. Der Zielmarkt hilft dabei, die Softwaretests auf bestimmte Problembereiche zu konzentrieren und sicherzustellen, dass alles den Anforderungen der Zielkunden entspricht.
4. Freigabekandidat
Ein Freigabekandidat (RC) ist eine Vorabversion der Software, die für ihre endgültige Veröffentlichung als Produkt (in der RC-Phase) für die Öffentlichkeit vorbereitet wird. Dies wird manchmal als „kontrollierte Verfügbarkeit“ bezeichnet. Obwohl sie möglicherweise alle vorgesehenen Funktionen und Eigenschaften enthält und wie erwartet funktioniert, kann sie aufgrund des erhaltenen Feedbacks noch Änderungen unterliegen, möglicherweise sogar grundlegenden.
Entwickler können mehrere Freigabekandidaten herausgeben, bevor sie das fertige Produkt veröffentlichen, um sicherzustellen, dass das Programm unter hoher Auslastung nicht abstürzt, keinen erheblichen Speicherverlust verursacht usw.
5. Allgemeine Verfügbarkeit
Die allgemeine Verfügbarkeit (GA) bedeutet, dass ein Produkt oder eine Dienstleistung den meisten Kunden (in der Regel weltweit) zum Kauf angeboten wird, üblicherweise über kommerzielle Vertriebskanäle. In der Softwareentwicklung bezieht sich dieser Ausdruck typischerweise auf eine Webanwendung oder App, die allen vorgesehenen Nutzern zur Verfügung steht. Während dieser Phase zielen alle Aktualisierungen oder weiteren Entwicklungsarbeiten am Produkt darauf ab, seine Funktionen und Leistung zu verbessern, um es für Kunden attraktiver und besser vermarktbar zu machen.
Nachdem BankerBox unter dem neuen Markennamen „Deal Marketing“ die allgemeine Verfügbarkeit erreicht hatte, konnten wir das Produkt auf Kunden in ganz Nordamerika ausweiten und wertvolles Feedback, Nutzungszahlen, Erkenntnisse zur Skalierbarkeit usw. sammeln, um die Produkt-Markt-Passung zu validieren, bevor wir zur letzten Phase des Software-Release-Lebenszyklus, der Produktionsfreigabe, übergingen.
More Articles
6. Produktionsfreigabe
Eine stabile Version ist eine Version eines Softwarepakets, die getestet und überprüft wurde. Sie ist die neueste (und manchmal endgültige) Version eines Programms, die als sicher für die öffentliche Nutzung gilt. Diese Art von Version wird auch als „stabile“ Version bezeichnet.
Wenn eine Software oder Webanwendung in diese Phase eintritt, kann dies der gesamten Organisation und dem Markt signalisieren, wie ausgereift Ihr Produkt ist. Bei SS&C Intralinks verknüpfte ich als Führungskraft in der Produktorganisation wichtige funktionsübergreifende Initiativen mit diesen Phasen.
In der Phase der Produktionsfreigabe konnten wir eine Angebotsstrategie, umfassende Marketing- und Vertriebsstarts sowie den erforderlichen Support in den Bereichen Kundenservice, Site Reliability Engineering und anderen Abteilungen zusammenstellen, um das Produkt erfolgreich zu machen.
Nach den meisten Maßstäben gilt dies als vollständiges Produkt, auch wenn es möglicherweise noch einige kleinere Probleme gibt, die als akzeptabel betrachtet werden. In einigen Fällen, etwa bei Linux, gibt es zwei Arten stabiler Versionen: LTS-Versionen (mit langfristigem Support) und reguläre stabile Versionen.
- Reguläre stabile Versionen – sind die häufigste Version, die Sie sehen werden. Sie lassen sich (wenn wir über Betriebssystemsoftware sprechen) einfach installieren und sind, wie ihr Name schon sagt, stabil. Wenn Sie Software in einer Produktionsumgebung testen möchten, verwenden Sie normalerweise diese Art von Version. Bei Webanwendungen werden reguläre stabile Versionen häufig als „Hauptversionen“ bezeichnet.
- LTS-Versionen (mit langfristigem Support) – sind speziell für die langfristige Nutzung in Produktionsumgebungen konzipiert. Diese Versionen haben einen längeren Wartungszeitraum als standardmäßige stabile Versionen (der durchschnittliche Abstand zwischen LTS-Versionen beträgt drei Jahre). Das bedeutet, dass sie umfassend getestet wurden und als sicherer gelten als stabile Versionen.
Abschließende Gedanken
Das Verständnis der verschiedenen Phasen des Software-Release-Lebenszyklus eines Produkts ist eine hervorragende Möglichkeit für einen Produktmanager, eine gemeinsame Ausgangsbasis zu schaffen und funktionsübergreifende sowie kundenbezogene Aktivitäten mit den verschiedenen Phasen des SRLC zu verknüpfen. Dadurch lässt sich das Produkt klar in die übergeordneten Unternehmensziele, Strategien und Initiativen einordnen.
Indem ich diese Phasen als „Auslöser“ nutzte, konnte ich mein Produkt erfolgreich in ein großes Unternehmen integrieren und die verschiedenen Aktivitäten zeitlich so planen, dass der Erfolg auf dem Markt sichergestellt war.
Sobald die Phasen des SRLC abgeschlossen sind, hat das Produkt seine Vertriebs- und Wachstumszyklen durchlaufen und die Organisation erkennt Anzeichen dafür, dass sich das Produkt seinem Ende nähert, beginnt der Wartungslebenszyklus. Dieser umfasst:
- die Behebung von Fehlern, die der Kunde während der Bereitstellungsphase gemeldet hat,
- das Hinzufügen einiger neuer Funktionen oder
- die Anpassung bestehender Funktionen auf Wunsch des Kunden entsprechend sich ändernder Anforderungen und technologischer Weiterentwicklungen.
Letztendlich erreichen alle Softwareprodukte irgendwann das Ende ihrer Lebensdauer, wenn sie von ihren Entwicklern nicht mehr unterstützt werden.
Wenn Sie mehr über Best Practices im Produktmanagement und in der Produktentwicklung erfahren möchten, abonnieren Sie unbedingt unseren Newsletter! Bis zum nächsten Mal.
Verwandte Beiträge:
- Die 6 Phasen des Softwareentwicklungslebenszyklus (SDLC)
- So verfassen Sie effektive Software-Versionshinweise, die Nutzer begeistern
Verwandte Liste von Tools: Tools für das Software-Release-Management
Ebenfalls lesenswert:




