Softwarewartung: Arten, Wartbarkeit und Lebenszyklus
Was ist Softwarewartung? Definition
Softwarewartung umfasst alle Tätigkeiten, die eine Anwendung nach ihrer Auslieferung funktionsfähig, sicher und nutzbar halten. Dazu gehören die Behebung von Fehlern, das Einspielen von Sicherheitsupdates, die Anpassung an neue technische und rechtliche Rahmenbedingungen sowie die Verbesserung von Leistung und Codequalität. Innerhalb der IT-Wartung, die als Oberbegriff auch Hardware, Netzwerke und Clients einschließt, bildet die Softwarewartung das Teilgebiet, das sich ausschließlich mit Anwendungen und ihrem Lebenszyklus befasst.
Software nutzt sich nicht mechanisch ab, veraltet aber trotzdem. Frameworks und Bibliotheken erhalten laufend Updates, Sicherheitslücken werden bekannt, Schnittstellen von Drittanbietern ändern sich und fachliche Anforderungen entwickeln sich weiter. Ohne kontinuierliche Wartung verliert eine Anwendung deshalb schleichend an Sicherheit, Kompatibilität und Wert. In vielen Projekten entfällt über die Jahre ein erheblicher Teil der Gesamtkosten auf die Wartungsphase, was ihre Bedeutung im Lebenszyklus unterstreicht.
Softwarewartung, Softwarepflege und Software-Instandhaltung
Die drei Begriffe werden weitgehend synonym verwendet. Wenn unterschieden wird, meint Softwarepflege eher die kontinuierlichen, vorbeugenden Tätigkeiten wie regelmäßige Updates und kleinere Anpassungen, während Software-Instandhaltung stärker die Reaktion auf Störungen und Ausfälle betont. Ein Software-Pflegevertrag schließt darüber hinaus oft die inhaltliche Weiterentwicklung mit ein. Entscheidend ist im Zweifel nicht die Bezeichnung, sondern die konkrete Leistungsbeschreibung im Vertrag.
Die vier Arten der Softwarewartung nach ISO/IEC 14764
Die internationale Norm ISO/IEC 14764 beschreibt den Wartungsprozess im Software-Lebenszyklus und unterscheidet vier Wartungskategorien, die sich in der Praxis als Standard etabliert haben:
- Korrektive Wartung
Behebt Fehler, die im laufenden Betrieb auftreten und die Funktion beeinträchtigen. Ein strukturierter Ablauf aus Fehleranalyse, Behebung und Test stellt sicher, dass die Funktionsfähigkeit schnell wiederhergestellt wird und keine Folgeprobleme entstehen. - Adaptive Wartung
Passt die Software an eine veränderte Umgebung an, etwa neue Betriebssystem- und Framework-Versionen, geänderte Schnittstellen oder neue gesetzliche Vorgaben. Die Anwendung selbst ist dabei nicht fehlerhaft, würde ohne Anpassung aber den Anschluss an ihre Umgebung verlieren. - Perfektive Wartung
Verbessert die Software über den reinen Erhalt hinaus, zum Beispiel durch Performance-Optimierung, bessere Benutzbarkeit oder Refactoring für eine sauberere Codestruktur. Sie steigert den Nutzwert und senkt zugleich den Aufwand künftiger Wartung. - Präventive Wartung
Setzt an, bevor Probleme wirksam werden. Dazu gehören das Aufspüren und Beheben latenter Fehler, das Aktualisieren veralteter Abhängigkeiten und der Abbau riskanter Altlasten im Code. Dieser Ansatz ist wirtschaftlich besonders effizient, weil er teure Ausfälle vermeidet.
In der Praxis greifen die vier Arten ineinander. Ein Wartungsteam spielt in einem Release häufig Sicherheitsupdates ein (präventiv), hebt eine Bibliothek auf eine neue Version (adaptiv), behebt gemeldete Fehler (korrektiv) und verbessert nebenbei die Struktur der betroffenen Module (perfektiv).
Wartbarkeit: Wie leicht lässt sich Software warten?
Wie viel Aufwand die Wartung verursacht, hängt maßgeblich von der Wartbarkeit der Software ab. Das Qualitätsmodell der ISO/IEC 25010 führt Wartbarkeit als eigenes Qualitätsmerkmal und beschreibt sie über Eigenschaften wie Modularität, Analysierbarkeit, Modifizierbarkeit und Testbarkeit. Vereinfacht gesagt ist Software gut wartbar, wenn sich Änderungen mit begrenztem Aufwand und ohne unerwartete Nebenwirkungen durchführen lassen. Eine saubere Architektur, automatisierte Tests, aktuelle Dokumentation und konsequente Versionsverwaltung zahlen direkt auf dieses Merkmal ein.
Das Gegenstück zur Wartbarkeit sind technische Schulden. Sie entstehen, wenn Abkürzungen im Code, veraltete Abhängigkeiten oder fehlende Tests über Jahre nicht abgebaut werden. Jede weitere Änderung wird dadurch langsamer, riskanter und teurer. Perfektive und präventive Wartung sind das wichtigste Instrument, um diese Schulden kontrolliert abzutragen, bevor eine Anwendung nur noch mit hohem Risiko angefasst werden kann.
Wartung und Weiterentwicklung im Lebenszyklus
Wartung und Weiterentwicklung lassen sich in der Praxis nicht strikt trennen. Wer eine Fachanwendung betreut, spielt nicht nur Patches ein, sondern setzt laufend auch neue Anforderungen um. Sinnvoll ist deshalb ein gemeinsamer Prozess, in dem Fehlerbehebung, Aktualisierungen und neue Features über ein Backlog priorisiert und in regelmäßigen Releases ausgeliefert werden. So bleibt die technische Basis aktuell, während die Software fachlich mit dem Unternehmen wächst. Vernachlässigt eine Organisation die Wartung zugunsten neuer Features, wachsen die technischen Schulden, bis irgendwann eine teure Modernisierung oder Ablösung ansteht.
Organisatorisch wird die laufende Wartung meist über einen Wartungsvertrag geregelt, der Leistungsumfang, Reaktionszeiten und Vergütung festlegt. Die Grundlagen erklärt der Glossar-Eintrag Wartungsvertrag Software, konkrete Vertragsmodelle und eine Checkliste bietet der Leitfaden Wartungsvertrag Software: Inhalte, Modelle und Checkliste. Für Eigenentwicklungen ohne Hersteller-Support behandelt die Seite Wartungsvertrag für Individualsoftware die Besonderheiten. Messbar wird die Servicequalität über ein Service-Level-Agreement (SLA). Wie Wartung, Support und Weiterentwicklung als Gesamtprozess organisiert werden, zeigt die Kompetenzseite IT Service Management.
Warum ist Softwarewartung wichtig?
Die wichtigsten Gründe für eine systematische Softwarewartung im Überblick:
- Sicherheit: Regelmäßige Updates schließen bekannte Schwachstellen und senken das Risiko von Angriffen und Datenverlusten
- Verfügbarkeit: Proaktive Wartung und Monitoring reduzieren ungeplante Ausfälle des Geschäftsbetriebs
- Kompatibilität: Anpassungen an neue Betriebssysteme, Browser und Schnittstellen halten die Anwendung anschlussfähig
- Compliance: Gesetzliche Vorgaben, etwa aus DSGVO oder NIS-2, erfordern nachweisbar gepflegte und aktuelle Systeme
- Werterhalt: Gut gewartete Software bleibt länger nutzbar und schützt die Investition in die Entwicklung
- Planbare Kosten: Kontinuierliche Wartung verteilt den Aufwand, statt ihn in einer späten Modernisierung zu bündeln
Softwarewartung bei TenMedia
TenMedia entwickelt seit 2011 individuelle Software in Berlin und übernimmt die laufende Wartung von Anwendungen, Datenbanken und Servern, auch für Systeme, die nicht im eigenen Haus entstanden sind. Zum Leistungsumfang gehören regelmäßige Sicherheitsupdates, Monitoring aller Dienste, Fehlerbehebung mit kurzen Reaktionszeiten und die kontinuierliche Weiterentwicklung im selben Prozess. Die Abrechnung erfolgt über eine monatliche Festpreispauschale mit festem Stundenkontingent.
Einen Überblick über Leistungen und Ablauf bietet die Seite Maintenance, Wartung und Support-Service. Details zur Wartung PHP-basierter Anwendungen enthält der Leitfaden PHP-Wartung und Support. Fragen zu einem konkreten System beantworten wir gern telefonisch oder via E-Mail.
FAQs
Aktuelle Themen