Softwarequalität und Tester



  • Wie groß ist der Einfluss eines Testers auf die Softwarequalität? Kann man ohne gute Tester gute Software schreiben?



  • Wenn man nicht selber testet, braucht man Tester. Ohne zu testen kann man keine gute Software schreiben.



  • OfficerCode schrieb:

    Wie groß ist der Einfluss eines Testers auf die Softwarequalität? Kann man ohne gute Tester gute Software schreiben?

    Wenn der Tester deswegen schlecht ist, weil er die Hälfte der Bugs übersieht, dann kann die Software logischweise am Ende nicht gut sein, sondern enthält ja immer noch Bugs.



  • OfficerCode schrieb:

    Wie groß ist der Einfluss eines Testers auf die Softwarequalität? Kann man ohne gute Tester gute Software schreiben?

    Der "Tester" hat keinen Einfluß auf die Softwarequalität, er überprüft sie nur.



  • loks schrieb:

    OfficerCode schrieb:

    Wie groß ist der Einfluss eines Testers auf die Softwarequalität? Kann man ohne gute Tester gute Software schreiben?

    Der "Tester" hat keinen Einfluß auf die Softwarequalität, er überprüft sie nur.

    Das heisst, alle Testabteilungen sind komplett überflüssig! *Argh*
    Und ich werde für etwas bezahlt, das absolut nutzlos ist...

    P.S. In Wahrheit erhöht jeder Tester die Qualität einer SW/HW. Selbst ein Tester, der noch nie in seinem Leben einen Bug gefunden hat (unwahrscheinlich...) hilft dabei die SW Qualität nachzuweisen. (Die SW wird dadurch vielleicht nicht besser, aber auf jedenfall wird sie nicht schlechter)



  • loks schrieb:

    OfficerCode schrieb:

    Wie groß ist der Einfluss eines Testers auf die Softwarequalität? Kann man ohne gute Tester gute Software schreiben?

    Der "Tester" hat keinen Einfluß auf die Softwarequalität, er überprüft sie nur.

    Ziemlich einseitige Sichtweise.

    Da man den Q-Prozess am Ende als Teil der Softwareentwicklung betrachten muß und bei ordentlicher Durchführung die Software erst nach dem Q-Prozess "fertig" ist, hat der Tester selbstverständlich Einfluß auf die Softwarequalität.

    Er hat keinen Einfluß auf "Version intern, ungetestet", aber er hat Einfluß auf "Version extern, getestet", und das ist gleichzeitig das Produkt.

    Weiterhin kann man bei komplexeren Projekten und schlauerem Aufbau der Firma den Q-Tester auch früh in das Projekt einbeziehen, d.h. bei der Phase der Modellierung entwickelt der Tester bereits seinen Testplan. Damit kann er bereits bei der Planungsphase kritische Dinge erkennen. In dieser Konstellation - die eigentlich eher der Fall sein sollte, aber viele Firmen haben den Q-Test eben nur am Ende, immerhin - wird er Teil vom Entwicklungsprozess.

    Wer bißchen darüber nachdenkt bemerkt, daß eigentlich auf jedem Entwicklungsschritt einer Software auch ein Tester eingebunden sein sollte, um Fehler im Vorfeld zu erkennen, oder um Lücken in der Spezifikation zu entdecken. Bekanntermaßen sind die Kosten eines Fehlers um so geringer, je früher er entdeckt wird.

    Trotzdem verstehen immer noch viele Firmen unter Testen, daß sich am Ende jemand noch mal 1 Woche lang durch die GUI klickt.

    Aber es wird besser.



  • Wenn der Tester genau das Testet, was der Entwickler entwickelt hat, und es genau so testet, wie der Entwickler es beabsichtigt hat, ist er kein guter Tester und wird auch nur selten einen Patzer des Entwciklers finden.
    Wenn der Tester aber das testet, was der Kunde bestellt hat und es so testet, wie der Kunde es anwenden wird, stellt sich schnell heraus ob der Entwickler auch genau das implementiert hat. Die Sicht auf das Programm kann sich zwischen Kunde und Entwickler deutlich unterscheiden, Aufgabe des Tests sollte es hauptsächlich sein, die Sicht des Kunden zu kennen und in dessen Sinne zu testen.
    Es gibt zwei Arten der Softwarequalität. Zum einen die interne Qualität, was die Wartbarkeit und allgemeine Stabiliät der Software betrifft, sowie die äußere Qualität, die die Anwendbarkeit und Nutzerfreundlichkeit sowie die Stabilität im speziellen Fall der normalen Benutzung der Software betrifft.
    Der Entwickler ist zwar für beides verantwortlich, es liegt aber in der Natur seiner Aufgabe dass er die äußere Qualität nicht so gut beurteilen (und gewährleisten) kann wie die innere. In unserer Firma gibts nach/während der Entwicklung für beide Teile Qualitätssicherung, zum Einen Code-QS wo ein zweiter Entwickler sich zusammen mit dem Entwickler den Code noch einmal anschaut, zum Anderen Tester, die das Programm "von außen" durchtesten und das fachliche know-how haben und die Ansprüche des Kunden kennen.



  • Kann man sagen, dass der Einfluss der Tester mit der Komplexität der SW und der Anzahl der Entwickler steigt, weil es dann mehr Kombinationsmöglichkeiten zum Testen gibt und ein Entwickler nicht mehr genau weiß was andere im Detail machen?



  • Ok, um meine Aussage mal zu erklären.

    Der "Tester" ist ein ausführendes Organ, mehr nicht. Die Qualität einer Software wird nicht dadurch verbessert, weil man sie "intensiv" Testet. Dazu bedarf es eines vernünftigen Qualitäts-Managements. Dabei ist "Qualität" mehr als "Fehlerfreiheit". Ich gehe so weit zu behaupten das selbst eine 100% Bugfreie Software trotzdem von beschissener Qualität sein kann. Man denke einfach mal an eine Textverarbeitung bei der jeder einzelne Tastendruck 20 Sekunden braucht um auf dem Bildschirm zu erscheinen. Fehlerfrei, aber unbedienbar...

    QM beginnt bei der Planung der Software und begleitet den gesamten Prozess der Software-Entwicklung. Wer glaubt, man "baut" erstmal Software und "Testet" diese dann im Anschluß der ist schon komplett auf dem Holzweg (was leider auf gut 50% der Softwarefirmen zutreffen dürfte).

    Zuerst einmal muß man sich hinsetzen und definieren was denn überhaupt die Qualitätskriterien sind die man von der Software erwartet. Hierbei spielt die Zielgruppe, das Preissegment und auch die Art der Anwendung eine erhebliche Rolle. So ist z.B. eine Reaktivität von 400 ms auf eine Benutzeraktion für eine GUI-Applikation voll akzeptabel, für den Autopiloten einer Düsenjets wohl eher nicht. Hinzu kommt das neben technischen Spizifikationen auch die Wahrnehmung des potentiellen Benutzers eine Rolle spielt. Diese sind erheblich schwerer zu fassen, weil hier Subjektivität eine Rolle spielt. Nicht alles, was der Benutzer als Qualität wahrnimmt muss, technisch betrachtet damit etwas zu tuen haben. (Beispielsweise werden manche Handies bewußt schwerer gemacht weil sie sich sonst zu billig "anfühlen")

    So entsteht ein Anforderungsdokument das gleichermassen Vorgabe für die Softwareentwicklung also auch für die Qualitätssicherung ist. Erst durch solche Vorgaben hat der spätere Tester die Möglichkeit Vorgabe mit Realität zu vergleichen und so zu überprüfen, inwieweit die Software den aufgestellten Qualitätsmerkmalen entspricht.

    Meine Aussage, das der Tester selbst keinen Einfluß auf die Softwarequlität hat bezieht sich darauf, das das eigendliche Testen im Gesamtbild tatsächlich eher unbedeutend ist. Durch Testen allein wird aus einer schlechten Software keine gute, sondern nur eine schlechte Software mit weniger Bugs.



  • OfficerCode schrieb:

    Wie groß ist der Einfluss eines Testers auf die Softwarequalität? Kann man ohne gute Tester gute Software schreiben?

    Grundsätzlich: Jeder der die Software testet erhöht auch deren Qualität. Und als Entwickler ist man in gewisser Weise Betriebsblind. Zudem schadet es niemals Meinung aus mehreren internen Quellen zu einem Programm zu haben, bevor es an Externe geht.

    Um so früher ein Fehler auffällt um so billiger ist es...


Log in to reply