nach oben
Hinweis zum Datenschutz
Auszug aus
Ernest Wallmüller

Software Quality Engineering

07/2011, 426 Seiten, € 31,99
ISBN: 978-3-446-40405-2
S. 26-29
Software-Qualität - Software-Testnormen

Software Standards, Normen und Modelle

Management und Engineering von Software-Qualität

Ein Standard ist eine einheitliche, weithin anerkannte und meist auch angewandte Art und Weise, etwas herzustellen oder durchzuführen, die sich gegenüber anderen Möglichkeiten durchgesetzt hat.

Ein Standard kann in einem formalisierten oder nichtformalisierten Regelwerk oder auch in einer einzelnen Regel bzw. mehreren Regeln oder einer Norm bestehen. Für De-facto-Standards, also Standards, die nicht durch ein definiertes Normierungsverfahren verabschiedet bzw. entstanden sind, wird der Begriff „Industriestandard“ verwendet.

IEEE-Standards:

  • SQAP – Software Quality Assurance Plan IEEE 730
  • SCMP – Software Configuration Management Plan IEEE 828
  • STD – Software Test Documentation IEEE 829
  • SRS – Software Requirements Specification IEEE 830
  • SVVP – Software Validation & Verification Plan IEEE 1012
  • SDD – Software Design Description IEEE 1016
  • SPMP – Software Project Management Plan IEEE 1058
  • Software Reviews and Audits IEEE 1028
  • Software Life Cycle Processes IEEE 1074
  • Systems and Software Engineering – Systems Life Cycle Processes IEEE 15288

Normung, auch geplante Standardisierung genannt, bezeichnet die planmäßigen Vorgänge und Tätigkeiten zum Schaffen und Inkraftsetzen von Regelungen, mit denen materielle und immaterielle Gegenstände vereinheitlicht werden.

Normung kommt vor allem zur Anwendung, wenn gleichartige oder ähnliche Gegenstände in vielen unterschiedlichen Zusammenhängen an verschiedenen Orten von verschiedenen Personenkreisen gebraucht werden. Normung hat zum Ziel, innerhalb des Interessentenkreises national wie international durch Vereinheitlichungen und Standardisierungen technische Anwendungshemmnisse zu vermeiden und den Austausch von Waren und Dienstleistungen zu fördern. Weitere Konsequenzen einer Normung sind Rationalisierung, Kompatibilität, Gebrauchstauglichkeit, Sicherheit oder andere Eigenschaften, die bei der Verwendung von Produkten und Dienstleistungen eine wesentliche Rolle spielen.

Ein Modell wird oftmals als Gegenstand wissenschaftlicher Methodik verstanden und meint damit, dass eine zu untersuchende Realität durch bestimmte Erklärungsgrößen im Rahmen einer wissenschaftlichen Arbeit abgebildet wird. In Zusammenhang mit der Gestaltung und Bewertung von Software-Prozessen werden Good- bzw. Best-Practice-Modelle erstellt und verwendet. Dabei werden gute, bewährte Projekt- bzw. Engineering-Praktiken für selektierte Prozesse zusammengefasst und dem Prozessanwender zur Prozessausführung empfohlen. Neben spezifischen Praktiken, die nur für einen spezifischen Prozess gelten (beispielsweise sind Risiken nach Attributen wie Wahrscheinlichkeit und Auswirkung zu bewerten), gibt es auch generische Praktiken, die man zur Reifesteigerung von verschiedenen Prozessen einsetzt (beispielsweise die Etablierung einer Policy für einen Risikomanagementprozess). Die wichtigsten Modelle sind neben anderen ISO 15504, CMMI-DEV, CMMI-SVC, ITIL und COBIT.

Traditionelles, veraltetes Qualitätsmanagement für Software wie auch für materielle Produkte basiert auf dem Ansatz, das fertige Produkt mehr oder weniger gründlich auf Erfüllung der Anforderungen zu prüfen (klassisch durch Testen) und gefundene Abweichungen zu korrigieren. Dieser Ansatz hat sich aber als nicht ausreichend erwiesen. Gründe dafür sind die hohen Kosten sowohl des intensiven Tests eines fertigen Produktes als auch der nachträglichen Korrektur von beim Test gefundenen Fehlern.

Daher geht man heute zunehmend dazu über, die Qualität des Software-Produktes indirekt über die Qualität des Entwicklungsprozesses zu verbessern. Prüfungen und Tests sind dann Teilaufgaben dieses Prozesses und als solche nur Teil des gesamten Qualitätsmanagements. Als Folge des prozessorientierten Ansatzes unterscheiden wir folgende Klassen von Normen:

  • Prozessnormen
  • Produktnormen
  • Qualitätsmanagement (-System)
    • ISO 9000:2005 Quality management systems – Fundamentals and vocabulary
    • ISO 9001:2008 Quality management systems – Requirements
    • ISO 9004:2009 Managing for the sustained success of an organization – A quality management approach
    • ISO/IEC 90003:2004 Software engineering – Guidelines for the application of ISO 9001:2000 to computer software
  • Software-Prozesse und Vorgehensmodelle
    • ISO/IEC 12207:2008 Systems and software engineering – Software life cycle process
    • V-Modell XT, Vorgehensmodell zum Planen und Durchführen von Systementwicklungsprojekten des Bundes (Deutschland)
    • HERMES – Die schweizerische Projektführungsmethode, um Projekte der Informations- und Kommunikationstechnik (IKT) einheitlich und strukturiert durchzuführen
    • IT-BVM, Vorgehensmodell für die Entwicklung von IT-Systemen des Bundes (Österreich)
  • Best-Practice-Prozessmodelle mit Reifegraden und ihre Bewertung
    • ISO/IEC15504 ff Information technology – Process assessment, hervorgegangen aus dem Standardentwicklungsprojekt SPICE® (Software Process Improvement and Capability Determination)
    • Automotive SPICE®
    • CMMI (Capability Maturity Model Integration) und SCAMPI

Unter Produktnormen fallen Standards, die einheitliche Kriterien für die Beurteilung von Produktqualität zur Verfügung stellen. Nachfolgend einige Beispiele von Produktnormen:

  • für Programme und Daten
    • ISO/IEC 9126 Information Technology – Software Product Evaluation – Quality Characteristics and Guidelines for their Use
    • ISO/IEC 9126-1 Software Engineering – Product Quality – Part 1: Quality Model
    • ISO/IEC 25051:2006 Software engineering – Software product Quality Requirements and Evaluation (SQuaRE) – Requirements for quality of Commercial Off-The-Shelf (COTS) software products and instructions for testing
  • für Ergonomie
    • ISO 9241 ff Ergonomics of human system interaction
    • ISO 13407:1999 Human-centred design processes for interactive systems
    • DATech-Prüfhandbuch Gebrauchstauglichkeit
  • für Sicherheit
    • CC Common Criteria for Information Technology Security Evaluation (ISO 15408)
    • TSEC Information Technology Security Evaluation Criteria
  • für Dokumentation
    • Information technology – Guidelines for the documentation of computer-based application systems
    • DIN 66230 Informationsverarbeitung – Programmdokumentation
    • DIN 66270 Informationstechnik – Bewerten von Software-Dokumenten – Qualitätsmerkmale
    • IN 66231 Programmentwicklungsdokumentation

Diese Normen beziehen sich allein auf die analytische Bewertung von Produkten und nicht auf den Erstellungsprozess. Zwischen beiden Klassen gibt es Mischformen, die Standards für Zwischenergebnisse der Software-Entwicklung und des Projektengineerings beschreiben. Hierzu gehören vor allem die IEEE-Standards.

Bild 1 gibt einen Überblick über viele – aber nicht alle – für die Software-Entwicklung im Jahr 2011 relevanten Best-Practice-Modelle und Standards. Bild 1 ist aus einem europäischen Blickwinkel erstellt und enthält nur wenige militärische Normen.

Bild 1: Überblick Best-Practice-Modelle und Standards

Bild 1: Überblick Best-Practice-Modelle und Standards

Auszug aus
Ernest Wallmüller

Software Quality Engineering

07/2011, 426 Seiten, € 31,99
ISBN: 978-3-446-40405-2
S. 26-29
Kostenloses KVP E-Book

Jetzt kostenlos herunterladen!

Prozesswelt

Serie zum Thema Prozesse, veröffentlicht von QM-Experten deutscher Unternehmen gemeinsam mit der N5 GmbH und der Fachzeitschrift QZ

zur Prozesswelt