Softwaretechnik-Blog

Dienstag, September 13, 2005

 

Wartung und Pflege - Definitionsvorschlag für die Softwaretechnik

Die Verwendung der Begriffe Wartung und Pflege erfolgt in der Softwaretechnik nicht immer in einheitlicher Weise. Dies liegt wohl auch darin begründet, dass der im Allgemeinen dominierende englische Sprachgebrauch beide Begriffe unter „Maintenance“ zusammenfasst.

Unter Wartung im engeren Sinne werden in der Softwaretechnik die Lokalisierung und Behebung von Restfehlern verstanden, also die Beseitigung von solchen Fehlern, die vor Einführung des Softwareproduktes nicht mehr gefunden und/oder nicht mehr behoben wurden. Somit ist die Wartung als eine „Restarbeit“ der Entwicklung anzusehen (vgl. Balzert, H.: Lehrbuch der Softwaretechnik, Band I, 1996, Spektrum-Verlag, S. 967). Da während der Wartung Fehler entstehen können, sind auch die Beseitigung dieser „Second Level Defects“ und sonstige Maßnahmen zur technischen Stabilisierung des Softwareproduktes Teil der Wartung.

Im allgemeinen wird die Software ausgeliefert, ohne dass alle möglichen und sinnvollen Maßnahmen zur Leistungsverbesserung durchgeführt wurden. Man beschränkt sich in der Regel auf die zwingend notwendigen Maßnahmen, um das Softwareprodukt möglichst schnell in Produktion übernehmen zu können. Dies führt dazu, dass die Wartung im weiteren Sinne auch Maßnahmen zur technischen Optimierung des Systems umfasst.

Beide Aspekte zusammenfassend wird der Begriff Softwarewartung, in der Wikipedia wie folgt definiert: „In der Softwaretechnik bezeichnet der Begriff Wartung Maßnahmen und Dienstleistungen zum Erhalt der Verwendbarkeit und Betriebssicherheit einer Software. Wartung für Software leistet damit einen erheblichen Beitrag zur Investitionssicherheit“ (Wikipedia.org, besucht am: 13.09.2005; Online unter: http://de.wikipedia.org/wiki/Softwarewartung).

Diese Begriffsbestimmung impliziert, dass es einen Zustand gibt, in dem die Verwendbarkeit und Betriebssicherheit der Software und der damit verbundenen Investitionen sichergestellt ist. Dieser Zustand wird zwar in der Regel in Definitionen der Softwaretechnik vernachlässigt, bildet aber den Kern in der für den industriellen Bereich lt. DIN 31051 vorgesehenen Definition der Wartung: „Maßnahmen zur Bewahrung des Sollzustandes von technischen Mitteln eines Systems“ (DIN 31051, Blatt 1/12.74). Hierbei scheint es wichtig zu sein, dass es sich bei dem Sollzustand von dem die DIN ausgeht, um einen einmal definierten, festgeschriebenen Sollzustand handelt.

Durch Veränderungen in der Umwelt des Systems (z.B. durch neue Systemsoftware) kann sich einer neuer Sollzustand, relativ zum ursprünglichen definierten Sollzustand ergeben. Um sich daraus ergebenen Handlungsbedarf erkennen zu können, ist es notwendig, diese Abweichungen festzustellen. Hierzu dient (nach DIN) die Inspektion, in deren Rahmen der Ist-Zustand eines Systems festgestellt und beurteilt wird.

Mit dem Begriff der Instandsetzung werde von der DIN „Maßnahmen zur Wiederherstellung des Sollzustandes von technischen Mitteln eines Systems“ (ebenda) bezeichnet.

Den Begriff der Instandsetzung nach DIN sollte man im Hinterkopf haben, wenn man den in der Softwaretechnik etablierten Begriff der „Pflege“ näher betrachtet. Balzert zählt die Anpassung und Änderung des Softwaresystems an gewandelte Umweltbedingungen, sowie die Erweiterung (d.h. funktionale Ergänzung aus fachlichen oder technischen Gründen) als Aufgaben der Pflege (vgl. Balzert, H.: Lehrbuch der Softwaretechnik, Band I, 1996, Spektrum-Verlag, S. 967f. und S. 969). Gleichzeitig warnt er davor, in der Wartungs- und Pflegephase eines Softwaresystems dessen Weiterentwicklung zu betreiben. Hierfür sei (z.B. in evolutionären Vorgehensmodellen) für die nächste Version des Produktes ein weiterer Durchlauf durch den Softwarelebenszyklus vielmehr sinnvoll und die Pflegephase sollte sich auf minimale Änderungen konzentrieren.

Wenn man von einer Pflegephase ausgeht, die sich auf minimale Änderungen konzentriert, könnte man die Anpassung und Änderung des Softwaresystems an gewandelte Umweltbedingungen, als Pflege bezeichnen. Die Erweiterung und Ergänzung zählt dann nicht mehr zur Pflege. Dadurch würde der Begriff der Pflege dem Begriff der Instandsetzung lt. DIN entsprechen, so dass man definieren kann: Softwarepflege umfasst alle Maßnahmen zur Wiederherstellung des Sollzustandes eines Softwaresystems aufgrund veränderter Umweltbedingungen.

In Zusammenhang mit Softwarewartung werden auch von der ISO 12207 verschiedene Arten der Softwarewartung eingeführt:
Darüber hinaus wird teilweise noch in die präventive, Fehler vorbeugende Wartung unterschieden (nach Wikipedia.org, besucht am: 13.09.2005; Online unter: http://de.wikipedia.org/wiki/Softwarewartung).

Korrektive Wartung würde dem Wartungs-Begriff entsprechen, wie er oben bereits definiert wurde. Adaptive Wartung entspricht dem Begriff der Pflege, der hier in Anlehnung an die Instandsetzung definiert wurde. Die Weiterentwicklung des Systems ist als perfektionierende Wartung anzusehen. Ohne Bezug bleibt die präventive, Fehler vorbeugende Wartung.

Zusammenfassend fügen sich die hier gegeben Begriffsdefinition für Wartung und Pflege die etablierten Normen der ISO und des DIN ein und kollidieren nicht mit der bisher weichen Begriffswelt der Softwaretechnik. Daher wird folgender Definitions-Vorschlag für die Begriffe „Wartung“ (syn. „Softwarewartung“) und „Pflege“ (syn. „Softwarepflege“) gegeben:

Wartung: Alle Maßnahmen zur Bewahrung des definierten Sollzustandes eines Softwaresystems durch Fehlerbeseitigung, technische Stabilisierung und Leistungsverbesserung zum Erhalt der Verwendbarkeit, Betriebssicherheit und zum Investitionsschutz.

Pflege: Alle Maßnahmen zur Wiederherstellung des definierten Sollzustandes eines Softwaresystems aufgrund veränderter Umweltbedingungen durch geringfügige Anpassung bereits implementierter Funktionen zum Erhalt der Verwendbarkeit, Betriebssicherheit und zum Investitionsschutz.

Comments: Kommentar veröffentlichen

<< Home

Archives

This page is powered by Blogger. Isn't yours?

Haftungsausschluss:
Alle Ausführungen und Inhalte auf dieser Website sind gewissenhaft erarbeitet worden. Dennoch kann weder die inhaltliche Richtigkeit, noch die Übereinstimmung mit den tatsächlichen Bedürfnissen des Nutzers der hier dargestellten Ausführungen und Inhalte garantiert werden. Der Nutzer der hier dargestellten Ausführungen und Inhalte verpflichtet sich, sie vor ihrer Verwendung inhaltlich auf Richtigkeit und auf Eignung für den konkreten Einsatzzweck zu prüfen. Es kann keine Gewährleistung für die rechtliche oder technische Wirksamkeit der Ausführungen und Inhalte übernommen werden - insbesondere können hieraus auch keine haftungsrelevanten Ansprüche hergeleitet werden.