Information Systems Audit and Control Association Standardisierte Kontrolle von Softwareentwicklung

Ordnungsmerkmale

erschienen in: <kes> 2005#1, Seite 87

Rubrik: ISACA informiert

Zusammenfassung: Software stellt in der Informationsgesellschaft einen wesentlichen Eckpfeiler in Wirtschaftskreisläufen dar. Umso erstaunlicher ist, dass die Prozesse zur Entwicklung dieses Erfolgsfaktors häufig über keinen ausreichenden Reifegrad verfügen.

Ohne effiziente IT-Unterstützung ist dauerhafter wirtschaftlicher Erfolg heute nicht mehr denkbar. Der Anspruch, zielorientiert Prozesse und Werkzeuge für die arbeitsteilige ingenieurmäßige Herstellung und Anwendung umfangreicher Software-Systeme bereitzustellen, wird in der Praxis jedoch meist nur bedingt erfüllt. Die Prozessreife der jahrzehntelangen Weiterentwicklung klassischer ingenieurmäßiger Methoden (z. B. aus der Automobilindustrie bekannt), konnte in der Softwaretechnik noch nicht erreicht werden.

Positiv ist jedoch zu erwähnen, dass seit geraumer Zeit erste Ansätze zur Adaption erfolgreicher Methoden aus der industriellen Fertigung erkennbar sind. Exemplarisch sind hier modulare Systeme mit überschaubaren und wiederverwendbaren Komponenten aus der objektorientierten Entwicklung zu nennen. Vor dem Hintergrund heterogener Anwendungslandschaften, ständiger technischer Weiterentwicklungen und immer kürzeren Halbwertszeiten von Prozesswissen ist die Frage berechtigt, ob die aus der Industrie bekannten Reifegrade bei diesen Prozessen überhaupt möglich sind. Trotz der genannten Hintergründe und der hohen Komplexität lassen sich zwei wesentliche Erfolgsfaktoren unabhängig von Entwicklungsmodellen und -verfahren übernehmen: Standardisierung und Qualitätssicherung durch zielgerichtete Kontrollen.

Der Begriff der Qualitätssicherung unterliegt verschiedensten Interpretationen. Unerlässlich ist dabei, unabhängig von der jeweiligen Ausprägung, die Praxisnähe: Maßnahmen müssen praktikabel und zielorientiert sein. Zunächst sind die Qualitätsziele festzulegen und dann in einer ersten Umsetzungsstufe wenige, aber effektive Maßnahmen zu ihrer Umsetzung festzulegen. Erst wenn diese Maßnahmen durchgängig implementiert wurden, sind Schritte zu einer weiteren Verbesserung der Qualitätssicherung in Erwägung zu ziehen.

Entscheidend für Erfolg oder Misserfolg der Qualitätssicherungsmaßnahmen ist die umfassende Etablierung in den Entwicklungsprozessen. Hierzu ist die Durchführung der verbindlich vorgegebenen Maßnahmen prozessimmanent zu kontrollieren. Dies bedarf klarer Richtlinien und Anweisungen für die Entwicklungsvorgaben und ihre Kontrollen; eine durchgängige Dokumentation sowohl der Ergebnisse als auch der durchgeführten Kontrollen ist ebenfalls zu berücksichtigen.

Der Schlüssel zum Erfolg liegt in der frühzeitigen Festlegung und flächendeckenden Durchführung weniger zielorientierter Kontrollen. Beispielsweise ist eine stichprobenhafte Prüfung einzelner Programmmodule zur Kontrolle der Einhaltung von Entwicklungsrichtlinien denkbar. Es empfiehlt sich, eine Auswahl von Stichproben basierend auf mathematisch-statistischen Verfahren vorzunehmen. Vor allem bei sicherheitsrelevanten Modulen stellen Code-Reviews eine angemessene Qualitätssicherungsmaßnahme dar. Jede durchgeführte Kontrolle sollte einschließlich der ausführenden Person dokumentiert werden, um hierdurch die Übernahme von Verantwortung zu fördern sowie die Überwachung dieser Prozesse zu ermöglichen.

Eine Standardisierung der Entwicklungsprozesse, der eingesetzten Werkzeuge und Schnittstellen schreitet im Bereich der Softwaretechnik weiter voran. Wesentliches Ziel ist hierbei eine Verbesserung der Effektivität und Effizienz sowie eine Reduktion der Entwicklungs-, Produktions- und Wartungskosten von Software. Nach Einschätzung des Autors wird insbesondere die Bereitstellung von Software zur Generierung standardisierter Komponenten künftig an Bedeutung gewinnen. Damit fände eine Verschiebung von der Programmierung hin zur Generierung statt, was die Fehleranfälligkeit reduziert und die Wartbarkeit verbessert. Kontrollen verlagern sich dann teilweise von der Implementierung auf die Generierungsebene, Software ließe sich durch die vermehrte Generierung sicherer und effizienter entwickeln. Eine Qualitätssicherung durch standardisierte Kontrollen kann jedoch schon heute wesentlich zur Sicherheit und Wirtschaftlichkeit von Softwareentwicklung beitragen. (Rainer-Michael Horlacher)

Weitere Informationen

ISACA German Chapter e. V.
Eichenstrasse 7
46535 Dinslaken
[externer Link] www.isaca.de

Bernd Wojtyna
Vorstand Facharbeit
Tel.: +49 251 288-4253
E-Mail: Bernd.Wojtyna@extern.Sparkassen-Informatik.de

Rainer-Michael Horlacher
Dipl.-Betriebswirt (FH), CIA
E-Mail: rainer-michael.horlacher@t-online.de