Aufwand perfektionierender und adaptiver Wartung

Aufwand perfektionierender Wartung (Verbesserung von Attributen)
Dabei handelt es sich um alle nicht-funktionalen Anforderungen wie beispielsweise Performanz, Usability und Wartbarkeit der Software. Dazu gehört beispielsweise auch sämtliche in der ISO/IEC 25000 Normenreihe beschriebenen Qualitätsanforderungen.
In der Praxis sind einige der geforderten Attribute (insbesondere die Wartbarkeit der Software) zum Einsatzzeitpunkt oft nicht erfüllt. Deren Erreichung (bzw. die Erreichung des diesbezüglichen Standes der Technik, wenn diesbezügliche Vereinbarungen fehlen) fällt demgemäß unter Mängelbeseitigung z.B. im Rahmen der Gewährleistung. Dasselbe gilt für Verschlechterungen der Merkmale im Rahmen von Funktionalitätserweiterungen - bei deren Umsetzung muss die Software, wenn nicht anders vereinbart, weiterhin die geforderten Merkmale erfüllen. Wünscht der Auftraggeber aber eine Änderung der geforderten Merkmale, fällt dies gemäß ISO/IEC/IEEE 14764 nicht unter Wartung, sondern unter "Enhancement".
→ Bei Software, die allen geforderten bzw. dem Stand der Technik entsprechenden Attributen genügt, fallen keine Aufwände für die perfektionierende Wartung an. Das ist in der Praxis selten der Fall, da Software meiner Erfahrung nach selten dem Stand der Technik entspricht, und demgemäß die Attribute nicht erreicht. Diese Aufwände lassen sich aber nicht generell abschätzen und liegen meiner Erfahrung nach bzw. gemäß Literatur bei in Summe bis zu 105% der gesamten Entwicklungsaufwände.
Aufwand adaptiver Wartung (Anpassung an veränderte Bedingungen der Umgebung)
Unter Bedingungen der Umgebung fällt alles, was nicht vertraglich festgelegt wurde bzw. im Detail nicht vorhersehbar war, aber dennoch einen Einfluss auf die Software hat. Das sind insbesondere gesetzliche Änderungen und Änderungen am Stand der Technik, aber auch branchenspezifische Änderungen.
Bei Standardsoftware kann man darauf vertrauen, dass diese im Rahmen der Wartung sämtliche gesetzliche Anforderungen einhält, am Stand der Technik gehalten wird und auch branchenspezifischen Änderungen nachkommt. Dasselbe gilt auch für Individualsoftware - es sei denn es gibt diesbezüglich explizite, vertraglich festgelegte Anforderungen liegt: Gibt es beispielsweise spezifische Anforderungen für die technische Umsetzung der Anonymisierung personenbezogener Daten, so fällt eine auf Grund einer diesbezüglichen Gesetzesänderung nötige Änderung nicht unter Wartung, sondern Weiterentwicklung. Wurde nichts oder nur allgemein die Einhaltung der DSGVO vereinbart, kann der Auftraggeber darauf vertrauen, dass im Rahmen der Wartung sämtliche Gesetze weiter eingehalten werden. Dasselbe gilt auch analog dazu für Änderungen am Stand der Technik bzw. branchenspezifischen Änderungen.
Änderungen auf Grund gesetzlicher oder branchenspezifischer Bedingungen sind erfahrungsgemäß eher selten, der Stand der Technik ändert sich hingegen deutlich schneller:
- Kaum ein Monat vergeht, dass eine der verwendeten Libraries auf Grund eines Sicherheitspatches aktualisiert oder, falls es keine Patches gibt, ausgetauscht werden muss
- Mehrmals pro Jahr muss eine Release gemacht werden, die die verbesserten Möglichkeiten von Major Releases der verwendeten Frameworks berücksichtigt und auf neuere, weiterhin unterstützte Versionen der Laufzeitumgebung wie z.B. der verwendeten Datenbanken aktualisiert
- Alle paar Jahre muss die Benutzerschnittstelle technisch und visuell auf den Stand der Technik gebracht werden
- Zumindest alle 10 Jahre muss die gesamte Architektur bis hin zu den verwendeten Frameworks, Libraries und Programmiersprachen in Frage gestellt und gegebenenfalls angepasst werden
1. IEEE 610 Standard Computer Dictionary, ISBN 1-55937-079-3, Seite 127↩
2. Macario Polo, Mario Piattini, Francisco Ruiz: A Methodology for Software Maintenance. In: Advances in Software Maintenance Management. Technologies and Solutions, ISBN 1-59140-047-3, S. 228–229↩
Kommentare
Kommentar veröffentlichen
Wenn du auf meinem Blog kommentierst, werden die von dir eingegebenen Formulardaten (und unter Umständen auch weitere personenbezogene Daten, wie z. B. deine IP-Adresse) an Google-Server übermittelt. Mehr Infos dazu findest du in der Datenschutzerklärung von Google (https://policies.google.com/privacy).