Direkt zum Hauptbereich

Brainstorming: Softwarequalität

"Quality is to a product what character is to a man"
Aufdruck auf einer Senftüte

Was ist Softwarequalität? In entsprechenden Fachbüchern und Artikeln werden mehrere Definitionen aufgeführt. Erfüllung der Anforderungen gehört z.B. auch dazu.

Für mich scheint es, polarisierend formuliert, zwei Sichtweisen zu geben, wie die Qualität von Software verbessert werden könnte. Die eine geht davon aus, dass die Entwickler selbst nicht den Wunsch haben, gute Software zu schreiben. Deswegen müssen vom Qualitätsmanagement rigide Prozesse aufgesetzt und deren Einhaltung durchgesetzt werden, damit die Entwickler gezwungen werden, gute Software zu entwickeln.

Die andere Sichtweise geht davon aus, dass Entwickler gerne gute Software schreiben würden, dass ihnen dabei jedoch Hindernisse im Weg stehen. Die Aufgabe des Qualitätsmanagements ist es nun, diese Hindernisse zu erkennen und aus dem Weg zu räumen.

Beide Sichtweisen sind richtig (natürlich).

Ich glaube in einem Buch eines ehemaligen Microsoftmitarbeiter gelesen zu haben [1], dass irgendwann bei Microsoft die Entscheidung getroffen wurde, dass die Entwickler mit den Programmen, welche sie erstellen, auch arbeiten müssen. Sinngemäß: "Eure eigene Scheiße sollt ihr fressen!"

Klingt vernünftig. Gibt es eigentlich Open-Source-Projekte, bei denen Entwickler Programme entwickeln, die sie selbst nicht benutzen wollen?

Wenn ich ein Programm entwickle und verbessere, weil ich es selbst verwende, weil ich von den Fehlern, die sich noch darin befinden und von der schlechten Benutzerführung angepisst bin, dann bin ich doch ganz anders motiviert, als wenn ich etwas entwickle, mit dem ich nie arbeiten werde/will.

In dem einen Fall liegt es in meinem direkten Interesse (intrinsische Motivation), dass die Qualität des Produktes steigt. In dem anderen Fall muss ich von Außen (extrinsische Motivation) "gezwungen" werden, die Qualität zu verbessern. Alleine schon, weil ich selbst, durch die Nichtnutzung gar keinen unmittelbaren Eindruck von der Produktqualität bekomme.

Wie kann ich die Entwickler dazu bringen, mit der eigenen erstellten Software arbeiten zu wollen? ("Wollen", nicht "müssen"!)

Bei Spielen und Office-Programmen ist dies vielleicht noch einfach möglich. Aber wie sieht es mit Steuerungsprogrammen für Atomkraftwerke oder für Herzschrittmacher aus? Ok, der Embedded-Bereich ist vielleicht eine Sache für sich.

Könnte das Buzzword "Gamification" hier helfen?

"Einmal im Monat müsst ihr mit unserem Produkt Problem XYZ in einer Simulation lösen. Je nach Punktestand wird Eurer Foto auf der Hall-of-Fame-Wand aufgehängt."

Wäre zumindest einmal einen Versuch wert. Aber was ist, wenn gecheated wird...



[1] Ich finde dieses Buch nicht mehr. Nicht bei Google, nicht bei Amazon. Die Suchfunktion der Bücherei, in welcher ich es mir damals auslieh ist grottig (Die verODERt alle Suchbegriffe anscheinend. Jeder weitere Suchbegriff vergrößert die Trefferzahl). Kennt es jemand anderes vielleicht? Ich war der Meinung, dass im Titel das Wort "Barbaren" vorkam. Vielleicht aber auch nicht.

Kommentare

  1. Der Begriff der Softwarequalität ist vielschichtig. So könnte man sagen, eine Software, die keine Fehler hat, besitzt eine hohe Qualität. Die Software kann aus Nutzersicht aber dennoch eine niedrige Qualität haben, wenn sie die falschen Probleme löst. Deshalb hilft nur eine Mischung aus Nutzer- und Herstellersicht. Die Software muss die wichtigsten Probleme des Nutzers zufriedenstellend lösen. Andererseits darf sich der Hersteller aber auch nicht zum Sklaven der Nutzer machen, sondern muss auch seine strategische Vision verwirklichen, um z.B. später weitere Nutzer gewinnen zu können.

    Ein hohes Qualitätsbewusstsein im Entwicklungsteam zu etablieren, ist leichter gesagt, als getan. Theoretisch sollte es jeden Entwickler krämen, wenn ein Tester schon nach wenigen Minuten sein neues Feature hinters Licht geführt hat. Leider krämt es nicht jeden, da nicht jeder eine professionelle Einstellung zu seinem Beruf hat. Von daher wird man immer sowohl Mittel zur intrinsischen als auch extrinsischen Motivation nutzen müssen.

    AntwortenLöschen

Kommentar veröffentlichen

Beliebte Posts aus diesem Blog

Avatar - mit Glatze bitte!

Vor einigen Monaten kamen zwei neue Mitarbeiter in unser Team. Da einer von ihnen auch Martin hieß, führte das oft zu Verwechslungen und der Nachfrage „welcher jetzt?“ – vor allem in der Remote-Kommunikation. Beschreibungen wie „der zweite Martin“ oder „der andere Martin“ hielt ich für unpassend. Also schlug ich vor, dass ich von nun an einfach einen anderen Rufnamen erhalte und wählte: „Guybrush“. Damit das auch immer präsent ist, ersetzte ich auch mein Profilbild an allen mir möglichen Orten durch ein Pixelbild von Gybrush aus Monkey Island 2 : Wie erwartet, setzte sich das sehr schnell durch. Vor einigen Tagen wollte ich dieses Bild jedoch durch eine etwas auflösungsstärkere Variante ersetzen. Die gefundenen Bilder machten jedoch sehr deutlich, dass es doch erheblich an Ähnlichkeit mangelte. Vor allem die Haare entsprachen so gar nicht meiner Frisur. Also beschloss ich, dass dies doch mal ein guter Einsatz für einen AI-Bildgenerator wäre. Die zwei mit denen ich bisher gearbeitet h...

Utopie gesucht

In den 90er Jahren gab es meiner Meinung nach eine positive Zukunftssicht. Das sah man u.a. in der Serie Star Trek The next generation. Heute dagegen scheint es nur noch pessimistische Blicke auf die Zukunft zu geben. Auch die aktuellen Star Trek Serien stellen eine düsterere Welt dar. Dies könnte zu einer selbst erfüllenden Prophezeiung werden. Gibt es in der aktuellen Popkultur noch Utopien?

Dienst am Staat schadet der Gemeinschaft

Mit seinem letzten Beitrag hat Steinchen mir ja geradezu den Fehdehandschuh hingeworfen :-). Er macht den Vorschlag, den bestehenden staatlichen Arbeitszwang nicht abzuschaffen, sondern ihn nur von seiner militärischen Komponente zu befreien. Mit diesem Vorschlag (wie mit vielen anderen auch) kann man sich auf zwei Arten auseinandersetzen. Zum einen ethisch: Wie ist der Vorschlag nach allgemein anerkannten ethischen Prinzipien zu bewerten? Hier müssen jedoch zuerst diese allgemein anerkannten (wenigstens unter den beiden Diskutanten) Prinzipien gefunden werden. Zum anderen kann der Vorschlag ökonomisch untersucht werden. Hier lautet zunächst die Frage, welche subjektiven Ziele nach Ansicht des Autors mit der vorgeschlagenen Maßnahme erreicht werden sollen. Darauf aufbauend kann dann untersucht werden, ob das vorgeschlagene Mittel geeignet ist, diese Ziele zu erreichen. Beide Wege bieten genug Stoff um etliche Blogeinträge zu füllen und die eine oder andere wissenschaftliche Arbeit auf...