Allgemeines Konzept für
Qualitätsmanagement bei der Software-Entwicklung

Die folgenden “5 Schritte” sollen eine allgemeine, modellhafte Vorgehensweise für die Etablierung eines Testprozesses in einem Software-Entwicklungs-Projekt veranschaulichen.

Qualitätsmanagement beinhaltet natürlich mehr als nur diesen Aspekt, z.B. Definition eines einheitlichen Vorgehensmodells, regelmäßige Reviews von Dokumenten und Zwischenergebnissen (Meilensteinen) etc., aber für das entscheidende Qualitätsmerkmal “möglichst fehlerfreie” (- besser: “fehlerarme” -) Software am Ende des gesamten Entwicklungsprozesses ausliefern zu können, bildet das Testen die zentrale Komponente. Aus diesem Grund beschränken sich die Betrachtungen auch auf diesen Gesichtspunkt.

1. Bedarfsanalyse

  • “Testen” als integraler Bestandteil jeder Software-Entwicklung
    (Dieses Verständnis muß bei allen Beteiligten vorhanden sein oder geweckt werden!)
  • Kosten-/Nutzenanalyse im Hinblick auf:
    - Gesamtbudget (ca. 1/3 sollten für die Qualitätssicherung geplant werden!)
    - Lebens-/Entwicklungszyklen der entwickelten / zu entwickelnden Software
    - Ressourcen (technisch / personell)
    - technische Infrastruktur
  • Ermittlung der “projekt-optimalen” allgemeinen Teststrategie
    (Entwurf eine groben Struktur des Testkonzeptes)

2. Rahmenplanung

  • Grobe Projektplanung ("Release-Management") mit Schwerpunkt auf:
    - Zeitrahmen
    - Verfügbarkeit der techn. und personellen Ressourcen
    - Externe Abhängigkeiten (Schnittstellen zu anderen Programmen und
      Systemumgebungen bzw. anderen Projekten)
    - Tests während der Entwicklung (Objekt-/Modultests)
    - Freigabe/Endabnahmetests (Regressionstestzyklen)
  • Entscheidungsvorlagen für verschiedene Alternativen (Tool-Auswahl)
  • Investitionsplanung / Beschaffung
  • Sicherheits-/Rücknahmekonzept
  • Online-Hilfe; (Benutzer-) Handbücher; Dokumentation
  • (Mitarbeiter-) Anwender-Schulung

3. Testkonzept

  • Testmethoden (theoretische Ansätze / Modelle)
  • Testverfahren (manuelle / maschinelle Strategien)
  • Testfallspezifikationen / Testleitfaden
  • Testdaten
  • Fehlerverwaltung
  • Reporting / Analyse (Statistik)
  • Formular-/Berichtswesen
  • Planung und Definition der notwendigen Testzyklen
  • "Freigabe-Kriterien"

4. Testplanung

  • Zeitplanung mit Ressourcenzuordnungen (als Teil der “Release-Management-Planung”, s.o.)
  • (Arbeits-)Prozeßbeschreibungen für die definierten Testzyklen (s.o.)
  • Testfallspezifikation / Leitfäden erstellen
  • Test-Umgebungen konfigurieren / Abhängigkeiten zu anderen (ggf. externen / projektfremden) "Schnittstellen" beachten
  • Test-Daten bereitstellen

5. Testdurchführung

  • Abarbeiten der Testfälle mit entsprechendem Fehler-Reporting im Rahmen der definierten Testzyklen
  • Koordination und Auswertung der Fehlermeldungen (möglichst mittels einer Fehler-Datenbank / Tool)
  • Bug-Fixing" und "Regression-Testing"

Freigabe-Bericht   ->  Einführung