Übersicht zu den aktuellen Testing-Trends
Qualitätskontrolle in der Programmierung ein Muss
Organisation
Lange Jahre wurde der Schlüssel für ein wirksames Testen darin gesehen, die Programmierung und das Testen organisatorisch so gut und so früh wie möglich voneinander zu trennen.
Fünf Organisationsmodelle werden in diesem Zusammenhang praktiziert:
Die Softwaretests liegen weiter in der Verantwortlichkeit des Entwicklungsteams, dessen Mitarbeiter ihre Ergebnisse jedoch "gegenseitig" testen. Ein Entwickler testet also die Programme eines Kollegen, aber nicht die eigenen.
Einzelne Mitglieder des Entwicklerteams werden ausschließlich für Testarbeiten abgestellt. Diese Tester erledigen alle Testarbeiten ihres Teams.
Ein separates Testteam bekommt die Testaufgaben für die Dauer des Entwicklungsprojekts übertragen. Das Team wird von einem Testmanager geleitet. Auch Mitarbeiter aus Fach- und IT-Abteilung arbeiten als unabhängige Tester in diesem Team mit.
Für spezielle Aufgaben wie das Testen von Performanz, Benutzbarkeit oder Sicherheit werden zeitweise unabhängige Tester beauftragt.
Eine separate Organisationseinheit in Form einer internen Testabteilung, eines Test-Centers oder eines externen Testdienstleisters, übernimmt das Testen oder wesentliche Teile davon, etwa den Systemtest. Diese Organisationseinheit ist als Dienstleister für mehrere Projekte oder Produkte zuständig.
- So wechseln CIOs den Outsourcing-Partner
Bei Unzufriedenheit unbedacht den Dienstleister zu wechseln ist gefährlich. Zu prüfen sind unter anderem Laufzeit, Folgekosten und Optionen wie Multisourcing. - 1. Die Gründe für das Outsourcing nochmals überprüfen:
"Rufen Sie sich die Gründe dafür zurück, warum Sie sich ursprünglich zum Auslagern entschieden haben", rät Edward J. Hansen von der Anwaltskanzlei Baker & McKenzie. Wenn diese Gründe immer noch gelten, reicht es, sich einen neuen Dienstleister zu suchen. Falls nicht, muss die ganze Strategie überdacht werden - und das Unternehmen entschließt sich möglicherweise zum Insourcing. - 2. An die Vertragslaufzeiten denken:
Wer den Anbieter wechseln will, tut das am besten, wenn das bisherige Abkommen ausläuft. Die Zusammenarbeit während der Laufzeit zu beenden, ist nur in dringenden Fällen ratsam. - 3. Den Vertrag genau studieren:
Es kann Streit ums Geld geben, wenn ein Vertrag vorzeitig beendet werden soll. Schon aus diesem Grund muss der bestehende Vertrag genauestens unter die Lupe genommen werden. Wer geschickt ist, baut in künftige Abkommen ein, in welcher Weise ein Dienstleister den Kunden bei einem Provider-Wechsel unterstützen muss. - 4. Wiederverhandeln kann sinnvoller sein als Aussteigen:
Ein Anbieterwechsel kann sich kompliziert gestalten. Wer das vermeiden will, sollte den bestehenden Vertrag lieber neu verhandeln. Entscheider müssen die eigenen Motive für den Wunsch nach einem Wechsel überprüfen. - 5. Den bestehenden Dienstleister durchleuchten:
Dieser Punkt knüpft an den vorhergehenden an. Wenn der Grund für den Wechsel-Wunsch darin liegt, dass der Dienstleister schlechte Qualität liefert, muss sich auch der Kunde nach den Gründen dafür fragen. Ein offenes Gespräch kann in Neu-Verhandlungen statt im Wechsel enden. - 6. Es wird Ärger mit dem Faktor Mensch geben:
Wenn Mitarbeiter des neuen Dienstleisters ins eigene Unternehmen kommen, kann es zu zwischenmenschlichen Reibereien kommen. Das darf nicht unterschätzt werden. - 7. Beim Wechsel mit unproblematischeren Teilen beginnen:
Rechenzentrum-Services oder Disaster Recovery bieten sich als Erstes an, wenn der Dienstleister gewechselt werden soll. Generell gilt: Nicht mit dem Kompliziertesten anfangen! - 8. Die Kosten eines Wechsels kalkulieren:
Wer durch den Wechsel des Anbieters Kosten senken will, muss bedenken, dass die Neu-Organisation des Outsourcings selbst auch Geld kostet. Diese Ausgaben müssen gegen mögliche Einsparungen abgewogen werden. - 9. Multisourcing als Alternative:
Wer das bisherige Abkommen auflösen will, zielt meist auf Multisourcing ab, statt sich wieder für einen einzigen Anbieter zu entscheiden. Das ist zumindest die Beobachtung von Jeffrey Andrews (Anwaltskanzlei Thompson & Knight). Entscheider sollten sich des damit verbundenen Zeitaufwandes bewusst sein. - 10. Aus den eigenen bisherigen Fehlern lernen:
Das vielleicht Wichtigste ist, die eigenen Erfahrungen festzuhalten, um beim nächsten Mal daraus zu lernen.
Die Maßnahmen ergänzen sich beziehungsweise bauen aufeinander auf. Es ist nicht notwendig, alle Maßnahmen von Beginn an gleichzeitig einzuführen. Man kann die Maßnahmen schrittweise umsetzen und miteinander kombinieren.
Das Prinzip ist jedoch immer das Gleiche: Man trennt Test- und Entwicklungsaufgaben personell, um zu erreichen, dass Annahmen, Gedankenmodelle und versteckte Voraussetzungen, die die Programmierer getroffen oder verwendet haben, kritisch hinterfragt werden. Das alleine macht das Testen schon wesentlich wirksamer.
Unabhängig davon, ob es die gleiche Organisation ist die die Tests durchführt oder eine andere, liegt der Schlüssel zum Erfolg darin, dass die Verantwortung für Qualität in einer anderen Hand liegt, als die Verantwortung für den terminkonformen Projektabschluss.
Outsourcing
Oft ist eine mögliche Lösung, die Qualitätsmaßnahmen auszulagern und über einen Dienstleister abzudecken, da dieser organisatorisch komplett getrennt aufgestellt ist, und keine Beeinflussung erfolgt.
Florian Prester, Geschäftsführer von sepp.med, einem Beratungshaus für Qualitätssicherung, sagt dazu: "Tests sind prädestiniert für das Outsourcing-Geschäft. Hier bewerten unabhängige Experten die Entwicklung nach den neuesten Anforderungen - entsprechend den regulatorischen Vorgaben oder den Belangen der Kunden. Dabei kommt die Expertise eines spezialisierten Dienstleisters in Methoden, Werkzeugen und Kompetenzen für Dienstleistung und Produktgeschäft zum Tragen."
Gerade im Outsourcinggeschäft sind Konzepte, wie Testfactories, in denen standardisiert getestet wird, erfolgreich eingesetzt worden.
Qualitätssicherung agiler Systeme
Beim Internet der Dinge und Industrie 4.0Industrie 4.0 sprechen immer mehr Dinge miteinander und tauschen Infromationen aus. Daten werden an immer mehr Stellen erzeugt und verarbeitet. Diese neue Form der Komplexität gepaart mit hoher Agiltät der Systeme erfordert neue Ansätze in der Qualitätssicherung. Alles zu Industrie 4.0 auf CIO.de
Modellbasiertes Testen hat nach Jahren der Vorarbeit nun einen relevanten Stellenwert in der Welt der Qualität. Der modellzentrierte Test ist eine Best-Practice Methode des modellbasierten Tests für die Industrie und bietet eine umfassende methodische Basis. Darauf aufbauend lassen sich die Anforderungen und Lösungsansätze aus der individuellen Projektsituation ableiten, der Werkzeugeinsatz kann geplant und die konkrete Umsetzung gesteuert werden. Er bringt viele Vorteile mit sich, die sich in hohen Synergien begründen.
- Prüfen von Anforderungen in agilen Projekten
Ohne die Priorisierung der Anforderungen des IT-Projekts drohen hohe Folgekosten in einzelnen Sprintphasen. - Verzögerungen durch exportierte Probleme
Neben dem Totalausfall eines Sprints gehören Verzögerungen zur Tagesordnung. Diese entstehen etwa bei unklar definierten Anforderungen, die eventuell im falschen Detaillierungsgrad vorliegen oder durch Überlastung des Product Owners verspätet priorisiert werden. - Zeitverluste durch fehlende Aufgabenzuordnung
Zunächst lassen sich nicht ausreichend gut definierte Anforderungen durch ohnehin erforderliche Routinearbeiten wie der Spezifikation technischer Anforderungen kompensieren. Später droht dagegen der Totalverlust ganzer Sprints. - Anforderungen treffen ungesteuert auf das Projektteam
Bei agilem Projektmanagement stehen viele Unternehmen noch immer auf der Bremse. Der Grund: Viele Projektverantwortliche müssen zusätzlich zu den Projektanforderungen weiterhin Aufgaben im Tagesgeschäft übernehmen. - Anforderungen laufen beim Product-Owner-Team zusammen
In einem Projektteam aus typischerweise sechs bis acht Mitarbeitern laufen alle Fäden beim Product Owner zusammen. Das Product-Owner-Team besteht aus maximal drei Personen. Der Product Owner managed alle an das Team herangetragenen Anforderungen. Das gilt sowohl vonseiten der Auftraggeber als auch der beteiligten Fach- und IT-Abteilungen sowie der Revision. Viele Unternehmen machen dabei den Fehler, Product Owner nicht ausreichend vom Tagesgeschäft freizuhalten.
Tool-Konsolidierung
Wenn eine Organisation die Verantwortung für das Testen übernimmt, fällt immer das Wort "Tool-Konsolidierung". In mehr als 50 Prozent der Organisationen sind unterschiedliche Testwerkzeuge und Frameworks im Einsatz, die nicht aufgrund von technischen Anforderungen sondern aus historischen Gründen unterschiedlich sind. Oft lässt sich der ROI einer KonsolidierungKonsolidierung schnell nachweisen. Alles zu Konsolidierung auf CIO.de
Vorteile
Unternehmen, die sich auf diese Trends in der Qualitätssicherung einlassen, werden viele Vorteile erfahren:
Kostenreduktion
Schnellere Markteinführung
Höhere Effizienz
Risikominimierung
Bessere Zusammenarbeit zwischen Business und IT
Grundlage für den nachhaltigen Erfolg der Qualität in der Welt der digitalen Transformation ist der Mensch. Er muss die Notwendigkeit der Qualität in allen Phasen des Produktlebenszyklus erkennen und zu schätzen wissen. Dann werden einerseits Investitionen für Qualität und andererseits organisatorische Maßnahmen kein Hindernis sein.