Softwareentwicklungslebenszyklus

R 2.0.0

Was ist der Softwareentwicklungslebenszyklus?

Was ist der Softwareentwicklungslebenszyklus?

Die Aktivitäten, die in jeder Stufe der Softwareentwicklung durchgeführt werden, sowie ihre logischen und zeitlichen Verknüpfungen miteinander.

Beschreibung

Der Softwareentwicklungslebenszyklus (engl.: Software Development Life Cycle, kurz: SDLC) endet nicht mit der Erstellung des Produkts, sondern umfasst auch noch die Zeit nach der Überführung in den Wirkbetrieb, in der Fehlerbehebungen, Anpassungen und Erweiterungen der Funktionalität vorgenommen werden. Der Lebenszyklus  endet schließlich mit der Ablösung des Systems durch ein Nachfolgeprodukt. Es wird daher dargelegt,

  • wie die Weiterentwicklung des Systems nach dem Projekt weitergeht,

  • wie Nutzung und Betrieb verlaufen,

  • ob und welche Ausbaustufen des Systems geplant sind,

  • wann und wie das System stillgelegt werden soll.

Diese Punkte besitzen einen entscheidenden Einfluss auf die Entwicklung des Systems und insbesondere auf die Erstellung der Systemarchitektur.

Video: Software Lebenszyklus (Länge: 11:43)

Phasen eines Softwareentwicklungslebenszyklus

1. Identifizieren der aktuellen Probleme

IT-Service-Management (ITSM) ist ein strategischer Ansatz für die IT-Verwaltung, bei dem der Schwerpunkt auf der Bereitstellung von Mehrwert für Kunden liegt. ITSM definiert klar die Rollen und Verantwortlichkeiten jedes Einzelnen und jeder Abteilung im Hinblick auf die IT-Services. Dies führt zu einer höheren Produktivität, einer Senkung der Kosten und einer höheren Zufriedenheit der Benutzer.

2. Planung

Die Projektverantwortlichen bewerten die Bedingungen des Projekts, einschließlich der Berechnung der Arbeits- und Materialkosten, um einen Zeitplan mit Zielen zu erstellen. Die Planung muss auch Bereiche für Rückmeldungen von Stakeholdern und allen anderen Personen einschließen, die von den Anwendungen profitieren werden. Der Umfang des Projekts muss klar definiert und der Zweck der Anwendung umrissen werden. Außerdem müssen die Grenzen festgelegt werden, die notwendig sind, um zu verhindern, dass das Projekt über den Rahmen hinausgeht oder sich verschiebt.

ALT MISSING
Abb. 1: Phasen im Softwareentwicklungslebenszyklus

3. Definition von Anforderungen

Der nächste Schritt besteht darin, die Anforderungen zu definieren und zu dokumentieren und die Zustimmung der Stakeholder einzuholen. Definieren Sie, was die Anwendung leisten soll, welche Funktionen sie enthalten soll und welche Hindernisse auf dem Weg dorthin zu überwinden sind. Für die Definition der Anforderungen müssen darüber hinaus die Ressourcen ermittelt und in das Projekt integriert werden.

4. Design und Prototyperstellung

SDLC erfordert einen Designschritt, in dem die Funktionsweise der Anwendung und die Aspekte des Designs modelliert werden.

Nachdem das Design feststeht, kann ein Prototyp einer frühen Version der Software erstellt werden. Er soll eine grundlegende Vorstellung davon vermitteln, wie eine Anwendung aussehen wird, wie sie reagieren wird und welche Fähigkeiten sie hat. In dieser Phase können die Programmierer das Feedback der Stakeholder einholen, um die Anwendung abzusegnen. Die Prototyperstellung ist wesentlich kostengünstiger als Änderungen in der Entwicklungsphase.

5. Software-Entwicklung

Dies ist die Phase des SDLC, in der das Programm selbst geschrieben wird, entweder von einem einzelnen Entwickler oder von einem größeren Team, das jeweils an verschiedenen Teilen der Entwicklung arbeitet. SDLC kann Probleme im Software-Entwicklungsprozess vorwegnehmen, die zu Verzögerungen in der Produktion führen können, wie z. B. das Warten auf Testergebnisse oder das Kompilieren von Code.

6. Testen

Anwendungen müssen kontinuierlich getestet werden, um sicherzustellen, dass sie gut zusammenarbeiten. Dies ist erforderlich, da die Software-Entwicklung oft in kleinere Projekte unterteilt ist, die von verschiedenen Personen und Teams durchgeführt werden. Stellen Sie sicher, dass jede Funktion wie gewünscht ausgeführt wird und dass jeder Teil der Anwendung gut mit den anderen Teilen interagiert. Dies verringert die Anzahl der Fehler, auf die Benutzer bei der Nutzung der Anwendung stoßen können, und führt zu einer höheren Nutzungsrate und einer größeren Zufriedenheit der Benutzer.

7. Bereitstellung

Sobald die Tests abgeschlossen sind, wird die Anwendung bereitgestellt und steht damit den Benutzern zur Verfügung. Dieser Schritt des Prozesses kann je nach Komplexität und Anforderungen der Anwendung manuell oder automatisiert erfolgen.

8. Betrieb und Wartung

Sobald die Anwendung bereitgestellt ist und genutzt wird, werden in der letzten Phase Fehler, die beim Testen übersehen wurden, aufgespürt und behoben – dies kann ein eigener iterativer Prozess sein.

Quellen