- Softwarewartung
-
In der Softwaretechnik bezeichnet der Begriff Softwarewartung „die Veränderung eines Softwareprodukts nach dessen Auslieferung, um Fehler zu beheben, Performanz oder andere Attribute zu verbessern oder Anpassungen an die veränderte Umgebung vorzunehmen.“ (Definition gemäß IEEE 610.12-1990)
Im weiteren Sinne darf man auch Dienstleistungen und Maßnahmen, die die von der Norm beschriebenen Veränderungen begleiten oder unterstützen, zur Softwarewartung rechnen. Die Softwarewartung dient in der Regel dazu, die Verwendbarkeit und Betriebssicherheit von Software zu erhalten.
Inhaltsverzeichnis
Arten der Softwarewartung
Man unterscheidet zwischen korrektiver, perfektionierender und adaptiver Wartung:
- korrektive Wartung: die Beseitigung von Fehlern
- perfektionierende Wartung: Verbesserung von Attributen wie etwa der Performanz oder der Wartbarkeit. Darunter fällt insbesondere die Bereinigung des Entwurfs oder der Implementierung durch Reengineering (Software), Refactoring usw.
- adaptive Wartung: Anpassung der Software an veränderte technische Bedingungen der Umgebung (vgl. IEEE 610.12-1990 und ISO/IEC 12207)
Bei der Beseitigung von Fehlern differenzieren manche Quellen noch zwischen korrektiver und präventiver Wartung, wobei unter präventiver Wartung dann die Behebung von solchen Fehlern verstanden wird, die bekannt, aber beim Anwender noch nicht in Erscheinung getreten sind (vgl. IEEE 610.12-1990).
Wartungsaufwand
Ob und mit wie viel Aufwand Software gewartet werden muss, hängt stark ab von der betreffenden Software (Fehlerdichte, Wartbarkeit), ihrem Einsatz (Fehleroffenbarung durch unterschiedliche Anwendungsszenarien; dem Wunsch, bestimmte Attribute zu verbessern) und der Einsatzdauer (änderndes Umfeld). Bei unternehmenskritischer Software leistet die Softwarewartung in der Regel einen erheblichen Beitrag zur Investitionssicherheit, stellt andererseits aber auch einen erheblichen Kostenfaktor dar. Daher sind Wartungsvereinbarungen bei unternehmenskritischer Software häufig zu finden. Je nach vereinbartem Service Level (vgl. Service Level Agreement) liegen die jährlichen Kosten dabei üblicherweise in der Größenordnung von 10 % bis 30 % der Investitionssumme der Software.
Wenn bereits beim Systementwurf das notwendige Augenmerk auf eine angemessene Wartbarkeit gelegt wird, kann unnötig hohen Aufwänden für die Softwarewartung vorgebeugt werden. Bei hohen Wartungsaufwänden wird die Softwarewartung in der Regel von einer fest organisierten Gruppe von Mitarbeitern (Wartungsorganisation) in einem geordneten Wartungsprozess betrieben (vgl. Bommer/Spindler/Barr).
Siehe auch
Literatur
- Ch. Bommer, M. Spindler, V. Barr: Softwarewartung - Grundlagen, Management und Wartungstechniken, dpunkt.verlag, Heidelberg 2008, ISBN 3-89864-482-0
- H.M. Sneed, M. Hasitschka, M.T. Teichmann: Software-Produktmanagement: Wartung und Weiterentwicklung bestehender Anwendungssysteme, dpunkt.verlag, Heidelberg 2005, ISBN 3-89864-274-7
- A. April, S3m-Model to Evaluate and Improve the Quality of Software Maintenance Process, Shaker Verlag, 2005, ISBN 3-8322-4592-8
- M.A. Curth, M.L. Giebel: Management der Software-Wartung, Vieweg+Teubner, Wiesbaden 1989, ISBN 3-519-02492-6
Wikimedia Foundation.