Frau Habchi, Wie kam es dazu, dass apsec sich entschieden hat, Qualitätssicherung als Dienstleistung anzubieten?
Habchi: Wir haben 15 Jahre Erfahrung im Bereich Informationssicherheit, das ist unser Kerngeschäft. Unsere Kunden sind in den letzten Jahren immer öfter auf uns zugekommen und haben Bedarf im Bereich Qualitätssicherung für die Begleitung von Projekten angemeldet. Kein Wunder, denn die Software wird immer komplexer, die Anforderungen immer größer. Es war sozusagen ein logischer nächster Schritt für apsec, nach der Entwicklung von Software und der Beratung im Bereich Informationssicherheit auch Qualitätssicherung anzubieten.
Können Sie zunächst mal definieren, was Qualität in dieser Beziehung bedeutet?
Habchi: Unter Qualität verstehen wir dabei das reibungslose Funktionieren von Software und Hardware für eine bestimmte Aufgabe. Dazu gehören die Kriterien Zuverlässigkeit, Benutzbarkeit, Änderbarkeit, Effizienz und Übertragbarkeit auf andere Zusammenhänge. Alles in allem ganz wichtige Voraussetzungen dafür, dass die alltäglichen Arbeitsprozesse im Unternehmen so funktionieren wie geplant. Wenn ein Tool genau das tut, was es soll, ist die Qualität hoch.
Und wie sichern Sie diese Qualität?
Habchi: Mit Qualitätssicherung als Dienstleistung meinen wir, dass wir unsere Kunden innerhalb ihrer Projekte bei Testaufgaben und Funktionsüberprüfungen unterstützen. Wir berücksichtigen alle Aspekte, die etwa bei der Entwicklung einer Software oder bei der Migration von Hardware wichtig sind. Von der Erfassung der individuellen sowie allgemeinen technischen Anforderungen bis zum tatsächlichen produktiven Einsatz der Software.
Herr Stadtmüller, können Sie diesen Prozess im Einzelnen beschreiben?
Stadtmüller: Wie wir genau vorgehen und welche Leistung wir im Detail erbringen, hängt stark von den Anforderungen des Kunden ab. Jedes Projekt ist ein Original. Aber natürlich gibt es viele Projekte, bei denen wir auf einen Großteil der Testmethoden und –verfahren zurückgreifen. Dann unterstützen wir den Kunden zunächst bei der Aufnahme von Anforderungen und der Erstellung von Pflichtenheften durch statische Tests der Dokumente. Anschließend erstellen wir Testkonzepte und Testpläne, führen einzelne Testfälle für die Teststufen Komponenten- bis Systemtest aus und arbeiten diese durch. Die Testfälle bewegen sich dabei sowohl im Bereich der funktionalen wie auch nichtfunktionalen Tests von Webanwendungen und –services, Backendanwendungen und Datenbankprozeduren. Hierbei spielt natürlich auch Testautomatisierung eine sehr wichtige Rolle. Nicht zuletzt haben wir in jedem Projekt selbstverständlich auch immer ein Auge auf den Sicherheitsaspekt.
Welche Elemente gehören auf jeden Fall zu einem Qualitätssicherungsprojekt?
Stadtmüller: Wir empfehlen dem Kunden zum Beispiel, welche Testabdeckung sinnvoll ist, um optimale Genauigkeit und Sicherheit zu erzielen. Und dann erarbeiten wir dafür gemeinsam ein passendes Konzept. Dabei ist uns sehr wichtig, immer wieder zu überprüfen, ob wir die Anforderungen richtig verstanden haben. Denn ein Missverständnis bei der ursprünglichen Abstimmung birgt eine enorme Gefahr für den gesamten Prozess.
Wo liegen die häufigsten Fehlerursachen?
Habchi: Viele Sicherheits- und Funktionalitätsprobleme entstehen durch Programmierfehler oder durch mangelhafte Dokumentation des Gesamtprozesses. Allgemein gesprochen: Schwierigkeiten tauchen immer dann auf, wenn die Anforderungen nicht erfüllt werden, weil etwas vergessen, nicht richtig implementiert oder nicht eindeutig definiert wurde. Das kann beim Programmieren passieren, aber auch beim Testen. Deshalb legen wir bei der Entwicklung der Prüfszenarien großen Wert auf die Kriterien Zuverlässigkeit, Analysierbarkeit, Verständlichkeit und Erweiterbarkeit.
Sie raten also dazu, die Qualitätssicherung von der Produktentwicklung zu trennen?
Habchi: Ja – denn bei dieser Aufteilung profitieren unsere Kunden von den langjährigen Erfahrungen, die wir in der Beratung gesammelt haben: Wir verstehen uns darauf, sehr genau hinzuhören und sehr klar abzufragen, was die exakten Anforderungen an die Software sind. Wir sind in der Regel auch besser mit der Steuerung eines so komplexen Prozesses vertraut als unsere Kunden. Deshalb können wir alle Elemente, auf die es bei der Umsetzung von IT-Projekten ankommt, mit der erforderlichen Detailgenauigkeit überprüfen. Wenn sich in einem langen und komplexen Prozess irgendwo ein Fehler einschleicht, fällt er ansonsten erst durch seine Auswirkungen auf. Genau zuhören und exakt prüfen, so lässt sich unsere Arbeitsweise zusammenfassen.
Kunden legen bekanntlich immer mehr Wert auf Zertifizierungen. Was können die Berater der apsec-Abteilung Qualitätssicherung auf diesem Gebiet vorweisen?
Habchi: Unsere Codereviews basieren auf zertifizierten Qualitätsstandards, unter anderem auf der ISO-Norm 9126. Alle unsere Berater in der Abteilung Qualitätssicherung sind nach den Standards des International Software Testing Qualifications Board (ISTQB) zertifiziert. Das wichtigste ist jedoch die langjährige Erfahrung, die unsere Berater einbringen können. Kein Zertifikat ersetzt die Praxis.
Afifa Habchi ist Diplom-Informatikerin und leitet seit 2011 die Abteilung Qualitätssicherung bei apsec. An der Etablierung von Qualitätssicherung als Dienstleistung war die 38-Jährige von Anfang an beteiligt.
Sebastian Stadtmüller ist Fachinformatiker für Anwendungsentwicklung und wechselte vor einem Jahr intern von der Software-Entwicklung in die Qualitätssicherung. Der 30-jährige Berater absolvierte seine Ausbildung bei apsec und ist seit acht Jahren im Unternehmen tätig.