Melden Sie sich hier an, um auf Kommentare und die Whitepaper-Datenbank zugreifen zu können.

Kein Log-In? Dann jetzt kostenlos registrieren.

Falls Sie Ihr Passwort vergessen haben, können Sie es hier per E-Mail anfordern.

Der Zugang zur Reseller Only!-Community ist registrierten Fachhändlern, Systemhäusern und Dienstleistern vorbehalten.

Registrieren Sie sich hier, um Zugang zu diesem Bereich zu beantragen. Die Freigabe Ihres Zugangs erfolgt nach Prüfung Ihrer Anmeldung durch die Redaktion.

03.04.1987 - 

Halbherziger Ansatz bringt oft mehr Schaden als Nutzen:

QS-Konzept braucht unternehmensweite Geltung

Die Ursachen mangelhafter Softwarequalität sind vielfältig: Das Spektrum reicht von der Suche nach schnellen Erfolgen in der SW-Entwicklung über fehlendes Software-Engineering bis zum Sparen am falschen Platz, beispielsweise bei der Mitarbeiterausbildung. Um hier Abhilfe zu schaffen. empfiehlt Walter Wintersteiger* die Einführung eines QS-Konzepts, das unternehmensweit greift.

Die Software-Qualitätssicherung ist ein vielschichtiges System mit zahlreichen Komponenten und Beziehungen. Ihr Ziel ist zunächst das Erreichen von Qualität bei Software als Produkt. Qualität laßt sich jedoch nicht nachträglich in Produkte "hineinprüfen", sondern muß in den entsprechenden Prozessen bewußt "produziert" werden.

Dabei ist nicht nur der Software-Entwicklungs- und -wartungsprozeß zu bedenken. Auch der Software-Beschaffungsprozeß spielt eine entscheidende Rolle; denn gerade hier wird Qualität um so eher geradezu sträflich vernachlässigt, je billiger die Software zu haben ist. Funktional betrachtet, ist die Software-Qualitätssicherung die Summe aller Maßnahmen der Planung, Realisierung und Prüfung der erforderlichen Software-Qualität. Institutionell gesehen, ist die Software-Qualitätssicherung jene Organisationseinheit, die sich nachhaltig mit der Durchführung der Software-Qualitätssicherungsaufgaben beschäftigt. Die Maßnahmen der SW-Qualitätssicherung lassen sich in technisch-konstruktive, technisch-analytische und organisatorische Maßnahmen gliedern.

Die technisch-konstruktiven Maßnahmen zielen darauf, Software-Qualität zu produzieren. Unter den technisch-analytischen Maßnahmen zur Software-Qualitätssicherung sind in erster Linie die verschiedet en Prüfungen und Tests der Software in den einzelnen Softwareentwicklungsstadien zu verstehen. Sinn der organisatorischen Maßnahmen ist es, bestmögliche Voraussetzungen und Rahmenbedingungen für eine erfolgreiche Software-Qualitätssicherung in technischer Hinsicht zu schaffen.

Die Umgebung, in welche die Software-Qualitätssicherung eingebettet ist wird durch die DV im Hause, die DV-Anwender, die Fachabteilungen eines Unternehmens und durch die Umwelt, in der die Unternehmen tätig sind, gebildet. Unterschiedliche Erfordernisse beziehungsweise Erwartungen an die Qualität der Software prägen die Szene und führen in der Praxis zu einer Reihe von Zielkonflikten, die nur lösbar sind, wenn die Software-Qualitätssicherung aufgrund ihrer großen Bedeutung in einem Unternehmen auf hierarchisch hoher Ebene verankert ist.

Während sich der Wert der Software-Qualität nur schwer berechnen laßt, schlägt sich "Software-Unqualität" in Form von Nicht-Konformitäts-Kosten sehr deutlich zu Buche. Je später ein Fehler entdeckt wird, um so weitere Kreise zieht er und um so fataler sind in der Regel die Folgen.

Der Grundnutzen der Software-Qualitätssicherung liegt in einer generellen Risikominderung und in einer Kostensenkung durch Fehlerfrüherkennung, Fehlerursachenerkennung, Fehlerursachenvermeidung und letztlich Fehlervermeidung (siehe Abbildung 1).

Ist es zunächst die DV-Abteilung selbst, die unter mangelhafter Software zu leiden hat, so werden bald auch die Anwender in den Fachabteilungen eines Unternehmens in Mitleidenschaft gezogen. Da aber auch immer mehr Produkte und Dienstleistungen irgendwie mit der Datenverarbeitung verbunden sind und die Vernetzung der Unternehmen mit dem Markt immer stärker wird, kommt der Wirkung nach außen stark wachsende Bedeutung zu. Der Zusatznutzen der Software-Qualitätssicherung liegt somit in der Vermeidung von weitläufigen Fehlerauswirkungen, angefangen vom Imageverlust bis zum Bankrott eines Unternehmens.

Voraussetzung für eine funktionierende Software-Qualitätssicherung ist die Schaffung von günstigen Rahmenbedingungen.

Im wesentlichen geht es dabei um folgende Punkte (siehe Abbildung 2):

- Schaffen und Pflegen eines angemessenen Software-Qualitätsbewußtseins;

- Definieren der erforderlichen oder der gewünschten Software-Qualität;

- Festlegen der Aufgabeninhalte und Aktivitäten sowie der zu betrauenden Stellen (Aufbauorganisation);

- Gestalten der Regelungen und Handlungsvorschriften (Ablauforganisation).

Funktionen

Im Rahmen der aufbauorganisatorischen Maßnahmen werden zunächst die Funktionen der Software-Qualitätssicherung im einzelnen geregelt. Vereinfacht ausgedruckt: Was ist zu tun? Es geht um die Planung, die Durchführung und die Kontrolle der Software-Qualitätssicherung.

Ziel der Planung ist es, Methoden und Sachmittel zu beschaffen und einzusetzen. Bei der Durchführung geht es um die Organisation und Realisierung der technisch-konstruktiven und technisch-analytischen Maßnahmen, aber auch um Fragen des Projektmanagements und der Kommunikation. Zur Kontrolle gehört vor allem die projektbegleitende Überwachung der Zielerreichung unter besonderer Berücksichtigung der Wirtschaftlichkeit.

Gerade bei der Planung, der Durchführung und der Kontrolle fällt besonders auf, daß die Maßnahmen zur Software-Qualitätssicherung nicht isoliert gesehen werden können, sondern voll integriert sind in die Prozesse der Softwarebeschaffung, -erstellung und -wartung. Somit ist es müßig zu fragen, ob ein professionelles Projektmanagement Teil der Software-Qualitätssicherung sei, oder die Software-Qualitätssicherung ein Teil des Projektmanagements. Die beiden gehören zusammen wie die Henne und das Ei.

Beteiligte Stellen

Im Rahmen der Aufbauorganisation ist auch die Frage zu regeln, wer an der Software-Qualitätssicherung beteiligt ist. Möglicherweise sind es sehr viele Stellen.

Die an der Software-Qualitätssicherung beteiligten Stellen lassen sich aus der Sicht eines Unternehmens in interne und externe Stellen unterteilen; und diese werden wiederum, je nach der Intensität ihres Einflusses auf die SW-Qualitätssicherung, als informell oder normativ bezeichnet.

Klar herausgestrichen werden muß die Feststellung, daß zunächst und vor allen Dingen die Softwareentwickler selbst für die SW-Qualität und damit auch für die Software-Qualitätssicherung verantwortlich zu machen sind.

Es ist keine Frage der Unternehmensgröße, sondern eine Frage der Arbeitsteilung, ob und wie die Software-Qualitätssicherung institutionalisiert wird; das heißt, daß sich neben den Entwicklern eine eigene Stelle mit der Sicherung der Software-Qualität beschäftigt. Das kann jemand am der hauseigenen Revision sein, ein eigener Software-Qualitätssicherungsbeauftragter oder eine ganze Abteilung.

In jedem Falle ist die Hauptaufgabe dieser Stellen weniger im analytischen Bereich der Software-Qualitätssicherung zu sehen, sondern vielmehr im konstruktiven, und zwar normativ. Das heißt mit anderen Worten: Diese Stellen sind nicht in erster Linie dazu da, den Softwareentwicklern die Fehler zu suchen, sondern vielmehr dazu, Normen, Richtlinien und Hinweise zu schaffen und einzuführen, die gute Software von Anfang an sicherstellen helfen.

Die Unternehmensleitung und die Softwareanwender im Hause und extern sind zwar vielfach nicht direkt am Software-Erstellungsprozeß beteiligt, aber doch letztlich die Hauptbetroffenen von Softwarefehlern. Somit erscheint es nicht nur wünschenswert, sondern geradezu notwendig, daß auch sie entsprechenden Einfluß auf die Software-Qualitätssicherung ausüben beziehungsweise sich soweit als möglich auch daran beteiligen.

Langsam, aber sicher setzen sich glücklicherweise aber auch die externen normativen Kräfte in der Software-Qualitätssicherung durch. Auch wenn das Gütezeichen für Software derzeit noch umstritten sein mag, so sind die Wirkung der DIN-(Vor-)Norm 66 285 beziehungsweise die RAL-GZ 901 Güte- und Prüfbestimmungen bereits an vielen Stellen spürbar. Auch die Veröffentlichungen von IEEE und anderen Institutionen sind als wertvolle Beiträge anzusehen. Selbstverständlich zeigt auch die Arbeit der Universitäten und vieler anderer Ausbildungsstätten ihre Früchte.

Relativ ruhig ist es noch an der Front der heutigen Informationsgesellschaft. Es ist noch nicht viel zu sehen, was auf ein reifes Problembewußtsein bezüglich der Gefahren aus unkontrollierbarer oder fehlerhafter Software erkennen ließe.

Auch Prüfverfahren selbst permanent kontrollieren

Die Ablauforganisation umfaßt alle organisatorischen Maßnahmen, die mit der Realisierung der im Rahmen der Aufbauorganisation geplanten Funktionen verbunden sind - von der Einrichtung der Software-Qualitätssicherung bis zur laufenden Durchführung und Kontrolle aller einschlägigen Aktivitäten. Mit anderen Worten: Wie ist vorzugehen?

Planen

Es sind Regelungen zu treffen für das Planen der Ziele des Personaleinsatzes und der Personalführung. Hinzu kommt die Planung der Methoden, insbesonders bezüglich des Projektmanagements, der Softwarebeschaffung, der Softwareentwicklung und -wartung sowie der Softwareprüfung.

Ebenfalls im vorhinein zu regeln sind Fragen des Einsatzes von Werkzeugen und sonstigen Hilfsmitteln, wie KonfigurationsmanagementTools, Testhilfen, Checklisten und Formulare.

Durchführen

Bezüglich der Durchführung der Software-Qualitätssicherung ist besonderes Augenmerk auf die Mitarbeiterführung zu legen: "Wenn du weißt warum, dann mach dir um das Wie keine Sorgen!" Das gilt auch in diesem Falle.

Führen mit klaren Leistungszielen heißt: informieren, motivieren und Betroffene beteiligen. Dazu gehört auch eine entsprechende Aus- und Weiterbildung in Theorie und Praxis.

Kontrollieren

Um die Ziele der Software-Qualitätssicherung zu erreichen, ist letztlich auch das Prüfverfahren selbst laufend zu kontrollieren, ob es einerseits den Zielvorstellungen entspricht und effektiv und effizient arbeitet. Das ist nur dann sinnvoll möglich, wenn das Soll und das Ist klar definiert und dokumentiert sind, so daß einigermaßen gute Messungen und Vergleiche möglich werden.

*Dr. Walter Wintersteiger ist Lehrbeauftragter für Wirtschaftsinformatik der Universität Innsbruck und der Hochschule Sankt Gallen und Präsident von Softwaretest-Österreich.