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.

11.11.1983 - 

Maßnahmen zur Qualitätssicherung sind projektbezogen zu gestalten, Teil 1:

Perfektionismus treibt SW-Kosten in die Höhe

Die Notwendigkeit zur Verbesserung der Qualität von Softwareprodukten zeigt auch die gegenwärtige Entwicklung der Relation zwischen Hardware- und Softwarekosten. Sie wird besonders beeinflußt durch den steigenden Anteil für Entwicklung und Wartung auf der Softwareseite. Dabei ist eine reine Kostenminimierung als Lösung ebenso ungeeignet wie die Erreichnung eines (absolut) fehlerfreien Programmes. Denn entscheidend ist schließlich die Relation zwischen Qualität eines (SW-)Produktes und seinem Preis, die durch den Einsatz eines geeigneten Qualitätssicherungssystems deutlich verbessert werden kann.

Die gegenwärtige Entwicklung der Hardware- und Softwarekosten, insbesondere die der Software-Entwicklung und - Wartung, zeigt die Abb. 1.

Hieraus wird deutlich, daß es zwei Ansatzpunkte gibt, dem Qualitätsproblem bei SW-Produkten zu begegnen: Erstens muß die Produktivität der SW-Entwicklung wesentlich erhöht werden; dadurch entstehen geringere Entwicklungskosten. Zweitens muß die Effizienz der SW-Wartung gesteigert werden, dadurch sinken die Wartungskosten.

Beides nun ist mit Hilfe einer entsprechenden und geeigneten Qualitätssicherung (QS) möglich, denn: Einerseits wird, wenn von Beginn einer SW-Produktentwicklung an QS durchgeführt wird, von vorneherein am "richtigen Produkt" gearbeitet; andererseits werden Fehler frühzeitig erkannt und korrigiert. Dies schlägt sich sowohl auf die Entwicklungs- als auch auf die Wartungskosten nieder. Auch wird die Effizienz der Wartung unmittelbar durch die Qualität eines Produktes beeinflußt.

QS nie Selbstzweck

QS kann nie Selbstzweck sein und darf es auch nicht werden. Vielmehr übt sie

(un-)mittelbaren Einfluß auf die SW-Entwicklung aus. Unter QS sind die Maßnahmen zur Erzielung der geforderten Qualität zu verstehen. Dabei kommt es in der Praxis darauf an, erforderliche Maßnahmen möglichst kostengünstig zu erzielen.

Um aber die Effizienz eines QS-Systems beurteilen zu können, ist es notwendig, sowohl den dabei anfallenden Aufwand wie Nutzen zu erfassen und zu analysieren.

Bei den hierbei anfallenden Kosten handelt es sich um die sogenannten Qualitätskosten (Qko): Kosten, die überwiegend eine Folge vorgegebener Qualitätsanforderungen sind. Diese lassen sich weiter - entsprechend den Hauptaufgaben der QS - in drei Kostengruppen untergliedern: in Fehlerverhütungs- (Fverhko), Prüf- (Pko) und Fehlerkosten (Fko). Zwischen diesen besteht in Abhängigkeit zum Vollkommenheitsgrad eines Produktes ein grundsätzlicher Zusammenhang (Abb. 2).

Hieraus wird ersichtlich, daß aus wirtschaftlichen Gründen ein Vollkommenheitsgrad von 100 Prozent für ein Produkt nicht erstrebenswert sein kann. Denn die Qualitätskostenkurve zeigt ein deutliches Minimum bei Qko.min. Es ist also - bei wirtschaftlicher Betrachtungsweise - derjenige Vollkommenheitsgrad anzustreben, der sich genau bei dieser Kostenhöhe ergibt.

Grundsätzlich ist Qualitätssicherung eine interdisziplinäre Funktion, mit der alle Organisationseinheiten des Unternehmens befaßt sein können. Daher kann zwar die Koordination, nicht aber die alleinige Verantwortung für die Erzeugung von Qualität und ihre Sicherung einer einzelnen Stelle übertragen werden. QS hat also beim obersten Management zu beginnen.

Da sich jedes QS-System entsprechend der erstellten Produkte und der Unternehmensgröße unterschiedlich darstellt, soll im folgenden die SW-Erstellung in einem Großunternehmen zugrunde gelegt sein.

Um ein SW-Produkt mit einer bestimmten geforderten Qualität erstellen zu können, ist es notwendig die Zusammenarbeit und Kommunikation aller an Planung, Entwurf und Herstellung von Softwarequalität beteiligten Stellen planmäßig zu gestalten.

Durch ein QS-System werden solche an sich unkoordinierten, qualitätsbeeinflussenden Tätigkeiten eines Unternehmens(-bereiches) zu einem System zusammengefaßt. Ein QS-System ist als "die festgelegte Aufbau- und Ablauforganisation zur Durchführung der Qualitätssicherung" definiert.

Grundlagen für eine eigenverantwortliche QS stellen Q-Ordnung und schriftliche Unterlagen zur QS und zu Q-Merkmalen dar. Diese müssen von einer übergeordneten Q-Abteilung erstellt werden. An den Entwickler, der hier zugleich Q-Sicherer ist, stellt die eigenverantwortliche projektleitende QS hohe Anforderungen nicht nur in bezug auf seine "Arbeitsmoral", sondern auch an seinen Wissens- und Erfahrungsstand.

Qualitätsvoraussetzung: Motivation

Dieses Konzept setzt einen hohen Stand der fachlichen Ausbildung, ein gut ausgebildetes Qualitätsbewußtsein der Belegschaft und die Förderung der Eigenverantwortung voraus. Zur erfolgreichen Schaffung solcher Voraussetzungen wird in Japan ein aus den USA kommendes Managementverfahren, der sogenannte "Qualitätszirkel", praktiziert.

Dabei handelt es sich um Gruppen von höchstens sieben qualifizierten Mitarbeitern, die regelmäßig - meist eine Stunde in der Woche - zur Diskussion arbeitsbezogener Qualitätsprobleme zusammenkommen. Der Leiter des Qualitätszirkel hat eine speziell auf diese Aufgabe zugeschnittene Ausbildung und stimmt die Arbeit über einen Spezialisten für Qualitätszirkel-Verfahren, den "Koordinator", mit anderen Qualitätszirkeln ab.

Ziel dieser Qualitätszirkel, an denen sich Programmierer und Systemanalytiker beteiligen, ist es, die Mitarbeiter zu motivieren und die Produktivität bei der SW-Entwicklung zu erhöhen. Letzteres geschieht dadurch, daß etwa Probleme bei Design-Alternativen oder bei installierten Systemen koordiniert, diskutiert und so leichter gelöst werden.

QS-Zirkel widerspricht Vieraugenprinzip

Grundsätzlich aber verstößt diese Form der QS gegen das "Vieraugenprinzip", das besagt, daß vier Augen mehr sehen als zwei, also eine Entwicklung von jemandem zweiten beurteilt werden soll.

Denn die Erfahrung zeigt, daß gerade selbstverursachte Fehler von derselben Person schwerer aufzudecken sind. Insgesamt ist diese Form der QS für Projekte mit großen bis größtem Projektumfang und/ oder Komplexität ungeeignet, weil der Entwickler dabei in aller Regel überfordert ist.

Dies hat zur Folge, daß entweder die geforderte Qualität nicht gewährleistet werden kann oder daß ein so enormer Mehraufwand an Geld und Zeit (Entwicklungskosten und -dauer erhöhen sich drastisch) betrieben werden muß, um die geforderte Qualität zu gewährleisten, daß die Produktivität eines solchen Projektes in erheblichem Maße darunter leidet. Die eigenverantwortliche projektbegleitende QS verstößt zwar gegen das "Vieraugenprinzip", trägt andererseits aber der Überlegung Rechnung, daß Qualität in ein Softwareprodukt nicht "hineingeprüft", sondern immer nur "hineinentwickelt" werden kann.

Es sind zu Projektbeginn mit dem Projektleiter Q-Anforderungen festzulegen (in Form eines Qualitätssicherungsplanes) und während der gesamten Laufzeit des Projektes die Teilprodukte - die ebenfalls festgelegten und dokumentierten Phasenergebnisse - zur Prüfung zu übernehmen und zu prüfen. Jedes Prüfungsergebnis wird in Form einer Qualitätsnotiz dokumentiert.

Entsprechend den jeweiligen Phasen ergeben sich gemäß dem Projektfortschritt unterschiedliche Aufgaben für die projektbegleitende Qualitätssicherung.

Bei Feststellung eines Fehlers erfolgt eine Q-Besprechung mit dem Projektleiter. Als Ende der Prüftätigkeit wird ein Abschlußbericht erstellt, der einerseits für den Kunden die tatsächliche Qualität seines bestellten Produktes dokumentiert, andererseits für den Entwickler und insbesondere für die Person, die für die Q-Prüfung verantwortlich ist, ein wichtiges Entlastungsmittel im Hinblick auf Produkt- oder Produzentenhaftung darstellt..

Je nach Projektumfang und Komplexität des Projektes wird sich eine mehr oder weniger hohe Qualität erzielen lassen. Andererseits ist es gerade hier der Entwickler, der direkt mit der Materie befaßt ist, der die QS durchführt. Dabei hat er Fehler nicht nur unmittelbar in oder nach der Phase, in der sie entstehen, zu entdecken und zu beheben, sondern auch Fehlern vorzubeugen. Dies kann dadurch geschehen, daß er subjektiv eine spezielle Schwachstellenuntersuchung vornimmt oder daß er die Vollständigkeit überprüft - unterstützt etwa durch Vorgabe von Checklisten .

Die eigenverantwortliche Schlußprüfung als QS verstößt ebenfalls gegen das "Vieraugenprinzip" und ist deshalb diesbezüglich mit den gleichen Mängeln behaftet wie die vorher dargestellte Form.

Darüber hinaus kann hier, aufgrund einer einzigen Überprüfung der Qualität in Form der Schlußprüfung, lediglich noch die Qualität oder deren Fehlen festgestellt und nicht mehr "hineinentwickelt" werden, da eine Schlußprüfung erst nach Fertigstellung des Produktes erfolgen kann. Damit ist bei dieser Organisationsform eine Fehlerbeseitigung während beziehungsweise unmittelbar nachdem sie induziert wurden nicht möglich - von einer Fehlerverhütung ganz zu schweigen.

Dies ist allerdings nicht Aufgabe der Q-Kontrolle. Vielmehr soll hier festgestellt werden, inwieweit Produkte oder Tätigkeiten die an sie gestellte Qualitätsanforderungen erfüllen.

Fähigkeit zur Selbstkritik eingeschränkt

Andererseits ist bei einer wirtschaftlichen Betrachtungsweise der Organisationsformen der vorgenannte Nachteil relevant. Würde etwa eine solche Schlußprüfung von einer unabhängigen Stelle vorgenommen werden, würde das Ergebnis normalerweise nicht so günstig wie bei dieser Form der QS ausfallen (es würde also eine geringere Qualität festgestellt werden).

Dies ist einerseits dadurch zu erklären, daß keine Person uneingeschränkte Fähigkeit zur Selbstkritik besitzt und daß andererseits - wie schon erwähnt - selbsterzeugte Fehler schwerer aufzudecken sind, also eine eigene "Blindheit" davor besteht. Gerade bei sehr komplexen und/oder umfangreichen Projekten ist eine eigenverantwortliche Schlußprüfung als QS nicht ausreichend.

Auch wenn sich in der Anfangsphase des Projektes eine Schlußprüfung durch Kosten- und Zeiteinsparung positiv bemerkbar macht, wird sich in dessen weiteren Verlauf diese Ersparnis kompensieren, beziehungsweise in der Wartungsphase ins Gegenteil umkehren. Hierbei ist von besonderer Wichtigkeit, daß 75 Prozent der Kosten eines Softwarepaketes nach dessen Fertigstellung anfallen, wovon wieder weit mehr als die Hälfte des Aufwandes auf Fehler und Mängel aus der Entwicklung zurückzuführen ist. Somit ist also eine eigenverantwortliche Schlußprüfung bei komplexen wie umfangreichen Projekten, bezogen auf den Gesamtkostenaufwand, unwirtschaftlich (auch wenn ihre primäre Aufgabe nicht in der Fehlerverhütung besteht).

Unter Wahrung des "Vieraugenprinzips" werden die wichtigsten Teilergebnisse des SW-Erstellungsprozesses bei dieser Form der QS von einer unabhängigen Stelle überprüft. Dies ist notwendig, weil in der Praxis der Anwender zumeist (fachlich) nicht in der Lage ist, sich auf Diskussionen mit dem Entwickler einzulassen, geschweige denn sein Konzept schlecht zu heißen. Somit müßte sich der Anwender auf die fachliche Kompetenz und den Wissens- und Erfahrungsstand den Entwicklers verlassen (und auf dessen Loyalität).

Unabhängige Instanz behebt Interessenkonflikt

Dieser Interessenkonflikt wird nun durch eine unabhängige Instanz behoben, die auch fachlich in der Lage ist, mit dem Entwickler zu diskutieren und sich mit seinem Konzept auseinanderzusetzen. Daher und aufgrund des enormen fachlichen Wissens und der fachlichen Erfahrung ist das Ansehen solcher unabhängiger Stellen von seiten des Kunden sehr hoch.

Intern aber müssen gerade wegen der geschilderten Gründe an die fachliche Qualifikation der Mitarbeiter einer unabhängigen QS-Stelle sehr hohe Anforderungen gestellt werden, um dieser Stellung - intern wie extern - nachkommen zu können. Durch den projektbegleitenden Charakter dieser Form der QS können alle positiven Aspekte der Fehlerentdeckung und -beseitigung sowie der -Verhütung ausgeschöpft werden.

Dies kommt gerade bei Projekten mit mittlerem bis großem Umfang, mittlerer bis hoher Komplexität und Qualität zum Tragen. Untersuchungen an abgeschlossenen Projekten haben ergeben, daß durch frühzeitiges Untersuchen (etwa durch Inspektion) mehr als 40 Prozent der aufgezeichneten Fehler (insgesamt 224) frühzeitig erkennbar gewesen wären, wodurch sich eine Phasenverschiebung von 2,5 Phasen für die Fehlerbehandlung ergeben hätte (bei insgesamt 8 Phasen).

Dieses Ergebnis ist vor dem Hintergrund interessant, daß die Fehlerverhütung in den frühen Stadien der Produktentstehung besonders wirkungsvoll ist. Je später nämlich ein Fehler erkannt wird und beseitigt werden muß, um so höhere Kosten entstehen.

Die unabhängige Schlußprüfung als QS gewährleistet in ihrem Prüfbericht ebensowie die unabhängige projektbegleitende QS ein Höchstmaß an Objektivität, womit Qualität auch hier zu einem Verkaufsargument wird. Andererseits ist aber, da diese QS als Schlußprüfung durchgeführt wird, eine Fehlerbehebung, von einer frühzeitigen ganz zu schweigen, nicht mehr während der Entwicklungsphase möglich.

Da eine unabhängige QS mit einem Testatrecht ausgestattet ist, hat sie die Möglichkeit, ein Produkt zurückzuweisen, also die Auslieferung des Produktes zu verhindern, wenn etwa festgestellt wird, daß das geprüfte Produkt nicht der geforderten Qualität entspricht. Dies setzt natürlich einen hohen Wissens- und Erfahrungsstand sowie absolute Unabhängigkeit voraus.

Die Kosten einer Schlußprüfung sind zwar niedriger als die einer projektbegleitenden QS, dafür ist aber bei Feststellung des Fehlens der geforderten Qualität der nachfolgende Aufwand für Nachentwicklung um so größer. Von den beschriebenen wirtschaftlichen Überlegungen her käme die unabhängige Schlußprüfung je nach Komplexität, Umfang und Q-Forderungen besonders für mittlere Projekte in Frage.

Existiert in einem Unternehmen jedoch nur diese Form zur QS, ist es unbedingt notwendig, gerade große Projekte zu überprüfen, weil es für das Renommee der Unternehmung langfristig von großem Schaden sein wird, wenn qualitativ minderwertige oder fehlerhafte Produkte an den Kunden verkauft werden. So nimmt diese Form der QS eine Sonderstellung ein, weil gerade sie das Pendant zu der in der Produktion allgemein üblichen Produktendabnahme darstellt.

Unabhängige Schlußprüfung nicht für Großprojekte

Die modulare projektbegleitende QS besitzt die gleichen Vorzüge wie die unabhängige projektbegleitende QS. Darüber hinaus ist es hier aufgrund der modularen Organisationsstruktur möglich, gerade bei großen Projekten, in denen mehrere verschiedene Stellen zusammenarbeiten, die Kommunikation und den Informationsfluß im Hinblick auf die Effizienz zu verbessern, also die Gesamtproduktivität sowie das Arbeitsklima zu steigern. Denn aufgrund der modularen Struktur entfallen zeitraubende und kostspielige Überprüfungen der angelieferten Teilprodukte der einzelnen Stellen, weil deren QS nach den gleichen Kriterien erfolgt. Die Summe der Aufwendungen, die die einzelnen Abteilungen für QS aufbringen, ist geringer als der Aufwand, den eine unabhängige QS-Stelle benötigen würde (Fehlervermeidung an den Schnittstellen sowie deren bessere Versorgung).

Weiterhin ist der Aufwand, der bei Änderung der Arbeitsunterlagen der QS erfolgen muß, aufgrund der ebenfalls modularen Struktur dieser Dokumente erheblich geringer, weil hier nur die unmittelbar betroffenen Module geändert werden müssen und nicht alle möglichen Kombinationen davon. Deshalb vereinigt die modulare projektbegleitende QS den Gedanken der Unabhängigkeit mit dem der Qualitätsentwicklung ebensowie den der wirtschaftlichen Durchführung aufgrund einer hierfür geeigneten Organisation. Damit ist sie je nach Komplexität, Projektumfang und Qualität der unabhängigen projektbegleitenden QS vorzuziehen .

Der Vollständigkeit halber ist die fehlende QS zu erwähnen, die kein QS-System im eigentlichen Sinne darstellt, jedoch in der Praxis von Bedeutung ist. Dies liegt zumeist nicht daran, daß es je nach Umfang des zu erstellenden SW-Produktes oft (wirtschaftlich) sinnvoller ist, gegen das "Vieraugenprinzip" zu verstoßen, als durch eine unabhängige QS einige (wenige) Fehler zu vermeiden.

Vielmehr liegt es in der geringen Akzeptanz eines QS-Systems von seiten der Entwickler. Denn in der Praxis fehlt oft das Bewußtsein dafür, daß die meisten Wartungsprobleme ihre Ursachen in den Anfangsphasen der Systementwicklung haben. Zielvorgabe, Kontrolle und Einführungsunterstützung führen meist zu großen Akzeptanzproblemen. Diese sind zum Teil durch die Mentalität der Programmierer begründet (Wunsch nach Mitsprache, Scheu vor Überprüfungen, mangelnde Lernbereitschaft) .

Ein typisches Beispiel für die Berechtigung der fehlenden QS stellen kleine und kleinste Anwenderprogramme dar. Bei der Beurteilung, wann eine eigenverantwortliche QS durch eine unabhängige Stelle übernommen werden soll, gibt es keine allgemeingültigen Aussagen.

Letzten Endes ist eine Kosten/Nutzen-Analyse aufschlußreich, in der der erhöhte Nutzen und Aufwand einer unabhängigen QS mit dem verminderten Nutzen und Aufwand einer eigenverantwortlichen QS verglichen wird. Als Entscheidungskriterium können die oben angeführten Punkte dienen.

*Hermann Wertheimer ist cand. rer. mat. an der Ludwig-Maximilians-Universität, München.