Web

"Zu 100 Prozent fehlerfreie Software gibt es nicht"

20.10.2005
MÜNCHEN (COMPUTERWOCHE) - Über Qualitätsstandards der Programmierung sowie Trends in der Softwareentwicklung sprach SAP-Vorstand Claus Heinrich mit CW-Redakteur Martin Bayer .

SAP-Vorstand Claus Heinrich: "SAP wurde früher zu Recht dafür kritisiert, dass nicht immer Wert auf jedes Detail gelegt wurde."

CW: Analysten und Anwender kritisieren die zunehmende Häufigkeit von Softwarefehlern. Ist die Qualität in den vergangenen Jahren schlechter geworden?

Heinrich: Derzeit höre ich weniger Beschwerden aus unserer Industrie, als vielmehr aus dem Automobilbereich. Die meisten Probleme dort lassen sich auf Softwarefehler zurückführen. Vielen Leuten wird immer mehr bewusst, wie wichtig die Qualität von Software ist. Wir bei SAP setzen da sehr hohe Ansprüche. Früher haben wir unsere Software an vielleicht 100 Kunden ausgeliefert. Heute schicken wir ein neues ERP-Release an bis zu 25 000 Unternehmen. Qualitätsprobleme wären sehr teuer. Daher achten wir strikt auf Qualität.

CW: Wie funktioniert Ihr Qualitäts-Management?

Heinrich: Wichtig ist, die Qualität bereits in der Design- und Entwicklungsphase der Software sicherzustellen. Das bedeutet einen gewissen Paradigmenwechsel. Früher hat man eine Software entwickelt, getestet und ausgeliefert. Letztendlich merkte man aber frühestens beim Test, wenn etwas mit der Qualität nicht stimmte. Unser Ansatz heute verfolgt das Prinzip des "Early Bug Fixing". Je früher Fehler entdeckt und behoben werden - in der Definition der Anforderungen, im Design der Software, in ersten Integrationstests neuer Module -, desto schneller verläuft die weitere Entwicklung, und umso geringer fallen die Gesamtkosten aus. Fehler später zu beheben, ist naturgemäß sehr viel aufwändiger als während des Designprozesses selbst.

Für uns beginnt die Qualitätssicherung deshalb schon mit der Definition der Anforderungen. Die erste Frage, die ein Softwarehersteller beantworten muss, ist: Habe ich wirklich verstanden, was der Kunde von mir will und was er braucht? SAP prüft bereits in den frühen Stadien der Entwicklung die Anforderungen und Designs. Wir setzen uns mit Kunden und User-Groups zusammen, zeigen erste Ergebnisse und fragen, ob dies dem entspricht, was sie erwarten.

CW: Was bedeutet Qualität für Ihre Kunden?

Heinrich: Qualität ist im Grunde ein sehr subjektiver Begriff. Daher muss auch SAP ständig analysieren, was die Kunden eigentlich darunter verstehen beziehungsweise was ihnen besonders wichtig ist. So nehmen die Nutzer beispielsweise ein Sicherheitsproblem als einen wesentlich schlimmeren Defekt wahr, als wenn eine Funktion nicht ganz genauso abläuft, wie er es sich vielleicht vorstellt. Ein gutes Beispiel ist unsere Supply Chain-Planungslösung: Hier haben wir unsere Entwicklungsstrategie nach den ersten Releases völlig geändert - Kundenanforderungen und Robustheit stehen seitdem im Vordergrund. Kollegen aus dem Feld haben dazu eng mit den Kunden zusammengearbeitet. Die Kernanforderungen wurden umgesetzt, andere jedoch nicht. Stabilität und Qualität hatten oberste Priorität, etwas, das in einem kritischen Bereich wie Supply Chain Management selbstverständlich sein sollte, leider aber nicht überall ist. Das Ergebnis war, dass die

Kundenzufriedenheit kontinuierlich gestiegen ist, obwohl nicht alle "Wunschfunktionen" umgesetzt wurden.

CW: Spielen Feinheiten damit keine Rolle mehr?

Heinrich: Doch, wir achten heute wesentlich mehr auf Einzelheiten. SAP wurde früher zu Recht dafür kritisiert, dass nicht immer Wert auf jedes Detail gelegt wurde. So haben bisweilen Übersetzungen gefehlt oder Fehlertexte waren teilweise nur schwer verständlich. Heute haben wir insgesamt 16 Produktstandards implementiert. Damit werden Aspekte getestet wie beispielsweise Nutzbarkeit, Zugänglichkeit, Leistung und Sicherheit. Diese Dinge werden viel intensiver getestet als früher. Das ist auch ein Trend in der gesamten Industrie.

CW: Es geht also nicht allein um Fehlerfreiheit und Funktionalität, sondern auch um Bedienbarkeit und ähnliche Aspekte?

Heinrich: Das macht die Qualität einer Software aus. In der Automobilbranche spielt heute genauso eine Rolle, wie einfach sich das Radio bedienen lässt. Früher maß sich die Qualität allein daran, wie lang der Motor hielt. Das wird heute anders definiert. Die Tatsache, dass ein Motor heute 200.000 km läuft, wird einfach vorausgesetzt.

CW: Wie geht SAP mit Fehlern in seiner Software um?

Heinrich: Zu 100 Prozent fehlerfreie Software gibt es nicht. SAPs Prämisse ist: Wenn ein Kunde einen Fehler meldet, dann wird dieser auch behoben. Der Nutzer bekommt einen Bugfix. In einem zweiten Schritt untersuchen wir, ob dieser Fehler auch bei anderen Kunden auftreten könnte. Dann wird die Lösung unmittelbar bereitgestellt. Zusätzlich fassen wir alle Lösungen in vierteljährlich ausgelieferten Patches zusammen. SAP hat die Schuldigkeit, bekannte Fehler jedem Kunden zu melden und zu beheben.

CW: Gibt es denn Möglichkeiten, die Fehlerrate zu senken?

Heinrich: Hier investiert SAP viel Geld. Für uns ist es wichtig, Fehler möglichst früh im Entwicklungsprozess, vor dem Auslieferungstermin zu erkennen und zu beheben.

Dazu dienen beispielsweise Rampup-Phasen, in denen die Software bei einer Reihe ausgewählter Anwender getestet wird. Einen Fehler zu beheben, der bereits draußen beim Kunden ist, kostet die SAP ein Zigfaches dessen, was wir für die Korrektur während der Entwicklung aufwenden müssten. Zudem hilft das "Early Bug Fixing"-Prinzip, unsere Aufwände für reaktive Wartung zu reduzieren. So erhalten wir mehr Ressourcen für die proaktive Wartung und die Weiterentwicklung, das heißt wir werden schneller. Das ist wichtig, denn die Forderungen der Kunden nach schnellen Veränderungen nehmen zu. SAP muss heute flexibel auch innerhalb eines Entwicklungszyklus auf geänderte Anforderungen reagieren. Unsere Entwicklungspläne sind nicht mehr in Stein gegossen.

CW: SAP baut derzeit seine Softwarearchitektur um. Welche Auswirkungen wird die Enterprise Services Architecture (ESA) auf die Qualität haben?

Heinrich: ESA bietet die Chancen für einen Quantensprung in Sachen Softwarequalität. Mit ESA lassen sich gekapselte Services auf der Plattform, im Kern der Applikationslandschaft, definieren. Die Plattform steht unter Kontrolle der SAP, sie wird von uns gewartet und weiter entwickelt. Für uns ist es von größter Bedeutung, dass dieser Kern von höchster Qualität ist. So läuft dieser Kern immer stabil, darauf können sich die Kunden verlassen.

Hier kommt uns die größere Modularisierung, die mit ESA einhergeht, entgegen. Die Softwaremodule, die auf der Plattform aufsetzen, dienen als Brückenglieder zwischen den einzelnen Services. Da auch diese gekapselt sind, erreichen wir eine deutlich verbesserte Qualität unserer Software. Die kleineren Module lassen sich einfacher und effizienter testen. In den großen monolithischen Softwareblöcken der Vergangenheit war die Fehlersuche wesentlich mühsamer. Das funktioniert im Grunde ähnlich wie im Automobilbau. Durch die Plattformstruktur und den darauf aufbauenden Komponenten lassen sich Fehler exakter und schneller lokalisieren und beheben.

CW: Wird es durch die modulare Struktur von ESA möglich sein, Software aus verschiedenen Komponenten ohne große Programmierkenntnisse zu modellieren?

Heinrich: Es wird sicher einfacher. Ein Lego-Prinzip, wonach sich einfach mit ein paar Services eine neue geschäftskritische Anwendung zusammenstecken lässt, wird es aber nicht geben.

CW: In SAPs neuer Softwarewelt werden viele Module von Partnern und Drittanbietern kommen. Wie lässt sich garantieren, dass diese den gleichen Qualitätsansprüchen genügen?

Heinrich: Was die Business Process Platform (BPP) als kritischstem Teil der Architektur betrifft, entscheidet nach wie vor SAP, was implementiert wird. Außerdem wird der überwiegende Anteil dieser Basis von uns entwickelt. Natürlich kann es sein, dass andere Softwarehersteller Module entwickeln, die unserer Einschätzung nach dort hinein gehören. Letztendlich unterliegt die Plattform aber unseren Qualitätsnormen. Für Softwaremodule, die unsere Kunden oder Partner auf ESA basierend entwickeln, wird es Richtlinien geben, was sich SAP unter Qualität vorstellt. Denkbar ist beispielsweise, dass SAP eine Art Qualitätswesen mit Validierung und anderen Services als Dienstleistung für andere Softwarelieferanten anbietet.

CW: Quasi eine Art Zertifizierung mit SAP-Qualitätssiegel?

Heinrich: Diese Überlegungen sind noch nicht spruchreif, aber wir denken in diese Richtung. Unsere Kunden haben den Anspruch, dass dort, wo SAP draufsteht, auch Qualität drin steckt. Unser vorrangigstes Ziel ist, den Nutzern Qualität zu liefern. Alles, was dazu beitragen kann, gilt es zu überlegen.

CW: Viele Kunden geben sich mit 80-prozentigen Lösungen zufrieden, weil die letzten 20 Prozent zu einer 100 Prozent passenden Lösung zu teuer werden. Wie schafft SAP diesen Spagat zwischen günstigem Preis und Qualität?

Heinrich: Die 80 Prozent beziehen sich auf den funktionalen Abdeckungsgrad. Wir können mit unserer Softwarefunktionalität nicht alle Bedürfnisse unserer Anwender und der verschiedenen Industrien abdecken. Deswegen stecken wir einen gewissen Freiraum ab, die restlichen zehn bis 20 Prozent der Funktionen durch die Kunden beziehungsweise die Partner entwickeln zu lassen. Daher gilt es, die Anforderungen der Nutzer klar zu klassifizieren. Es gibt Basisprozesse, die müssen einfach funktionieren. Daneben gibt es jedoch Funktionen, die nett zu haben sind, aber nicht im unmittelbaren Fokus des Kunden liegen. Eine 80/20-Aussage jedoch in Bezug auf Qualität zu treffen, halte ich für komplett falsch.

CW: Heute wird rund um die Uhr global verteilt an Software gearbeitet. Hat dies Einfluss auf die Qualität?

Heinrich: Keinesfalls, aber es muss organisiert sein. Natürlich gibt es einen gewissen Overhead an Kommunikation. SAP arbeitet rund um die Welt. Wir haben zehn Haupt-Entwicklungsstandorte weltweit, unter anderem in Walldorf, Bangalore, Shanghai und Palo Alto. Die Kunst dabei ist, die Arbeit sinnvoll zu verteilen. Wenn alle gleichzeitig am selben Stück Software arbeiten, und das Coding würde rund um die Welt weitergereicht, funktioniert das nicht. Es gibt Fokusthemen für die verschiedenen Labs und damit Spezialisierungen. Das erhöht insgesamt die Entwicklungsgeschwindigkeit und wir können schneller reagieren.

CW: Also fragmentieren die Prozesse rund um Software immer stärker?

Heinrich: Es ist richtig, dass mehr unterteilt wird. So gibt es verschiedene Gruppen, die weltweit verteilt an einzelnen Elementen arbeiten. Genauso wird auch der Lebenszyklus einer Software separiert. Früher haben wir das Design entwickelt, die Software programmiert und zum Schluss auch gewartet. Das funktioniert heute nicht mehr. Es gibt Entwickler, die innovativ arbeiten, Entwickler, die Standards erledigen, und Entwickler, die sich um die Instandhaltung und Pflege einer Software kümmern. Das ist ein eindeutiger Trend hin zur Spezialisierung, der aber wiederum zur Qualität beiträgt.

CW: Schwankt denn die Qualität zwischen den verschiedenen Standorten der SAP?

Heinrich: Die Frage nach dem "besser" stellt sich in dem Sinne nicht. Weil wir weltweit einheitliche Kriterien haben, ist es letztendlich weniger eine Frage der Qualität als vielmehr der Effizienz.

CW: Wird es langfristig eine Verlagerung der Entwicklung in Billiglohnländer geben?

Heinrich: Wir haben in der Vergangenheit immer einen starken Fokus auf Walldorf gehabt. SAP betreibt kein Offshoring. Wir stellen nach wie vor Entwickler in Walldorf ein. Sicher ist es aber richtig, dass wir zunehmend mehr Leute an den anderen Standorten beschäftigen. Die Gewichte verlagern sich etwas. Offshoring in dem Sinne, dass wir hier etwas wegnehmen und woanders aufbauen, gibt es aber nicht. Wir wachsen an den verschiedenen Standorten mit unterschiedlichen Geschwindigkeiten.

CW: Wie wichtig ist ein weltumspannendes Entwicklernetz für SAP?

Heinrich: Wir verkaufen unsere Software weltweit, also müssen wir auch weltweit präsent sein. Kunden brauchen das Gefühl, dass wir nahe bei ihnen sind, auch mit der Entwicklung. Zudem gibt es einen harten Kampf um die Talente. SAP sucht die besten Entwickler in den verschiedenen Regionen.

CW: Sind Sie nicht zufrieden mit den Absolventen hier in Deutschland?

Heinrich: Doch, im Großen und Ganzen schon.

CW: Reicht denn die Zahl?

Heinrich: Hier ist vieles besser geworden. Wir sollten aber nach wie vor für Studienfächer wie Informatik oder Wirtschaftsingenieurwesen werben. Ich kann wirklich nur jedem raten, diesen Karriereweg einzuschlagen.