Übersicht zum Prozess der Softwareentwicklung

Prozess der Softwareentwicklung

Übersicht

Anforderungsdefinition

  • Anforderungen ermitteln
  • Anforderungen dokumentieren, beschreiben in natürlicher Sprache und erstellen von Anforderungsmodellen
  • Anforderungen validieren und abstimmen, Prüfen anhand der Dokumentation und Spezifikation, Prüfen der Qualitätskriterien
  • Anforderungen verwalten, Maßnahmen zu Strukturierung, Bestandsverwaltung

Ergebnisse

  • Kundenanforderungen als User Stories oder Protokollen
  • definierte Anwendungsfällle und Akteure
  • funktionale Anforderungen
  • Diagramme des Systems
  • Oberflächen-Prototyp
  • Pflichtenheft

Softwareentwurf

  • Analyse der Einsatzbedingungen, Umgebung und Randbedingungen

  • Entwurf der Systemarchitektur

  • System in Komponenten zerlegen

  • Spezikation des Funktions und Leistungsumfangs

  • Spezifikation des Verhaltens der Komponenten

  • Festlegung der Schnittstellen zwischen Systemkomponenten

  • Technisches Design der Anwendung

    • Infrastruktur
    • Entwicklungsumgebung
    • Grobstruktur

Ergebnisse

  • Software-Architektur

    • Fragen:

      • Wie soll die Software gebaut werden
      • Wie wo wodurch werden funktionale Anforderungen umgesetzt
      • Wie können nicht-funktionale Anforderungen erfüllt werden
    • Ergebnis

      • Fachliches und technisches Design
      • Leitfaden zur Implementierung
      • Beispiele für nicht-funktionale Anforderungen
      • Zuverlässigkeit, Fehlertoleranz
      • Leistung und Effizienz, Antwortzeiten, Ressourcenbedarf
      • Sicherheit, Datenintegrität, Verfügbarkeit, Vertraulichkeit
      • Bedienarten, Technologievorgaben
  • Plan von Komponenten

  • strukturierte und hierarchische Anordnung der Komponenten

Software-Architektur

Sichten auf Softwarearchitekturen

Implementierung

  • Programmtechnische Umsetzung der Entwurfsergebnisse
  • Umsetzung der Konzepte in Konstrukte
  • Dokumentation der Problemlösung und der Implementierungsentscheidung
  • Test und Verifikation der Programme einschließlich Testplanung und Testfallerstellung
  • Prüfung des Zusammenwirkens der Systemkomponenten unter realen Bedingungen

Ergebnisse

  • Quellprogramm
  • Dokumentation
  • Test-Protokolle

Testverfahren bzw. Teststufen

  • Komponententest

    • elementare Programteile separat testen
  • Integrationstest

    • Zusammenspiel zwischen zei oder mehreren Komponenten
    • ob die Schnittstellen der Komponenten korrekt spezifiziert und implementiert wurden
  • Systemtest

    • Funktionsfähigkeit des gesamten Systems
    • entsprechend der Anforderungsspezifikationen
    • Testfälle während der Anforderungsermittlung erstellt
    • Performanz, Last, Stress und Robustheit
  • Abnahmetest

    • in Zielumgebung unter realen Einsatzbedingungen
    • Gebrauchstauglichkeit und äußere Qualität

Abnahme und Einführung

  • Übergabe der Software und Dokumentation an Auftraggeber
  • Durchführung von Abnahmetests
  • Installation des Produktes in der Zielumgebung
  • Schulung der Benutzer
  • Inbetriebnahme

Ergebnisse

  • Übergebene Software
  • Abnahmeprotokoll
Last modified 2022.05.02