Software-Qualitätssicherung

 

– Sicherung der Softwarequalität durch Messung, Prüfung und Bewertung –
Aus dem Inhalt des CC Seminars:
  • Das Wesen der Softwarequalitätssicherung
    Software als Produkt; Softwareentwicklung als Prozeß; Formen der Quali­tätssicherung;
    psychologische, konstruktive und analytische Qualitätssi­cherung; die Rolle der
    Qualitätssicherung in einem ergebnisorientierten Entwicklungsprozeß; Ziele und Mittel.
  • Organisation der Qualitätssicherung
    Qualitätsmanagement; Bestimmung der Qualitätsprozesse; Verantwortlich­keiten,
    Aufgabe und Ausstattung eines QS-Stabes; Schnittstellen zu den Projektgruppen
    (Analytikern; Entwicklern, Testern); autoritäre vs. volontäre Qualitätssicherung; QS als
    Instrument der Weiterbildung.
  • Fachkonzeptprüfung
    Anforderungsanalyse; Datenmodell-, Objektmodell- und Funktionsmodell­prüfung;
    Vollständigkeits-, Konsistenz- und Korrektheitskontrolle der Kon­zepte; freie Textanalyse;
    Prüfung der Use Cases; Metriken für die Größe, Komplexität und Qualität der Konzepte; Reviewtechniken.
  • Entwurfsbewertung
    Richtlinien für die Nutzung der UML-Entwurfsmethodik; Analyse der UML-Diagramme;
    Prüfung der Diagramme auf Vollständigkeit; Konsistenz und Korrektheit; Abgleich der
    UML-Entwurfsdokumentation mit der Fachkon­zeptdokumentation; Nutzung der Object
    Constraint Language zur Verifika­tion der Verarbeitungslogik; Metriken für die Größe,
    Komplexität und Qualität der UML-Entwürfe; Bewertung der Systemarchitektur nach
    sta­tischen Qualitätsmaßstäben; Inspektionen als bewährte Technik der
    Dia­grammkontrolle.
  • Codeprüfung
    Richtlinien für die Programmierung in Java, C++ und IDL; automatische Prüfung der Regeleinhaltung; Messung der Quantität, Komplexität und Qualität objektorientierter Programme; Umgang mit Entwicklern, die die Regeln nicht einhalten; Kalibrierung der Programmierregeln nach den Be­dürfnissen der Projekte; Abgleich der programmierten Klassen und Schnitt­stellen mit dem UML-Diagrammen; Werkzeuge für die statische Programm­analyse.
  • Testrevision
    Testrevision als Test der Tester; Messung der Testüberdeckung; Fehler­analyse; Berechnung
    der Fehlerdichte; Zusammenhang zwischen Testüberdeckung und Fehlerdichte; Schätzung der
    Restfehlerwahrschein­lichkeit; Abgleich der Testergebnisse mit den Testzielen; Systemfreigaben.
  • Statische und dynamische Programmanalyse
    Werkzeuge von CC für die statische und dynamische Analyse von Pro­grammen;
    Ziele und Mittel der Analyse; Kontrolle der Programmierregeln; Messung der Qualität;
    Protokollierung der Testüberdeckung.
  • Wirtschaftlichkeit
    Wieviel darf für Qualitätssicherung ausgegeben werden? Welcher Nutzen ist von der QS zu erwarten?
    Folgekosten schlechter Softwarequalität; die Kosten nicht automatisierter Qualitätssicherung;
    Notwendigkeit einer automatisierten QS.
  • Qualitätssicherung extern vergebener Projekte
    Bedeutung der Vertragsbedingungen; Vereinbarung meßbarer Qualitäts­ziele; Pflichten und
    Rechte des Auftraggebers und des Auftragnehmers; Fortschreiben von Prozeßmodellen;
    Vorschriften für Produktqualität; das Recht auf genormte, vollständige und formal spezifizierte
    Anforderungen; das Recht auf eindeutig quantifizierbare Qualitätsziele; Was ist zu tun, da­mit
    Softwareprojekte nicht als Gerichtsprozesse enden?