Softwarewartung: Typen, Techniken & Management

Classified in Informatik

Written at on Deutsch with a size of 4,9 KB.

Arten der Softwarewartung

Perfektive Wartung

Maßnahmen zur Verbesserung der internen Aspekte der Softwarequalität, wie z.B.:

  • Code-Umstrukturierung
  • Klarere Systemdefinition
  • Optimierung von Leistung und Effizienz

Evolutionäre Wartung

Ergänzungen, Änderungen und Löschungen, die in einem Softwareprodukt notwendig sind, um es an veränderte Benutzeranforderungen anzupassen.

Adaptive Wartung

Anpassungen an Veränderungen in der Systemumgebung, z.B.:

  • Hardware-Konfiguration
  • Softwarebasis
  • Datenbank-Manager
  • Kommunikation

Korrektive Wartung

Behebung von Fehlern im Softwareprodukt.

Technische Unterstützung in der Softwarewartung

Innerhalb des Software-Engineerings gibt es Techniken, um die Wartung zu optimieren und die Lebenszykluskosten zu senken.

1. Reverse Engineering

Analyse eines Systems, um seine Bestandteile und deren Beziehungen zu erkennen und Systemdarstellungen in anderer Form oder auf höherer Abstraktionsebene zu erstellen.

2. Reengineering

Modifikation eines Softwareprodukts oder bestimmter Komponenten durch Analyse des bestehenden Systems und Reverse Engineering. Direkte Engineering-Tools werden für den Wiederaufbau verwendet, um die Wartbarkeit, Wiederverwendbarkeit, Verständlichkeit und Evolution zu verbessern.

3. Restrukturierung

Änderung der Darstellung eines Softwareprodukts auf der gleichen Abstraktionsebene.

Ziele der Wartungstechniken

Bereitstellung von Verfahren zum Wiederaufbau der Software, entweder durch Neuprogrammierung, Neugestaltung oder Überarbeitung einiger Produktfunktionen.

  • Direktes Engineering: Traditionelle Softwareentwicklung.
  • Reverse Engineering: Analyse eines Systems, um Zusammenhänge und Komponenten zu erkennen und Darstellungen in anderer Form oder höherer Abstraktionsebene zu erstellen.
  • Reengineering: Untersuchung und Veränderung eines Systems zur Rekonstruktion in neuer Form und anschließende Implementierung.
  • Restrukturierung: Änderung der Software, um sie verständlicher und änderbarer zu machen.
  • Remodularisierung: Änderung des modularen Aufbaus eines Systems nach den Prinzipien des strukturierten Designs.
  • Analyse der Wartbarkeit: Konzentration auf relativ wenige Systemmodule.
  • Anzeige: Längster Prozess zum Verständnis der Software.
  • Messung und Analyse: Untersuchung bestimmter Eigenschaften von Programmen.

Analyse der Wartungsfälle

Bei der Wahl der Wartungsart sollten folgende Punkte berücksichtigt werden:

  1. Wartungskosten
  2. Verlorene Entwicklungsmöglichkeiten
  3. Kundenunzufriedenheit bei nicht zeitnaher Bearbeitung von Anfragen
  4. Versteckte Fehler, die durch Änderungen während der Wartung die Produktqualität mindern
  5. Auswirkungen auf andere Projekte, wenn Ressourcen für Wartungsanfragen abgezogen werden

Schwierigkeiten bei der Wartung

Technische und praktische Vorschläge für EV-Metriken

  • Kosten-Nutzen-Analyse
  • Use Case
  • Katalogisierung
  • Klassendiagramm, Funktionale Dekomposition
  • Datenflussdiagramm
  • Objektinteraktionsdiagramm
  • Diagrammdarstellung
  • Auswirkungsmatrix
  • Erweitertes Entity-Relationship-Modell
  • Planung
  • Präsentations-Workshops

Managementprozesse und Change Management

Schlüsselprozesse für die Entstehung und Entwicklung des Systems. Sie ermöglichen die Steuerung verschiedener Versionen und Änderungen während des Lebenszyklus.

Wichtige Aktivitäten im Change Management

  • Einführung von Änderungsanträgen
  • Registrierung der Anträge und Berichterstattung über deren Status
  • Bereitstellung eines Audit-Logs der Änderungen
  • Bereitstellung von Input für das Projektmanagement
  • Auswirkungsanalyse zur Bestimmung des Umfangs der Änderungen

Wichtige Aktivitäten der Folgenabschätzung

  • Bewertung von Änderungsanträgen in Bezug auf bestehende Systeme, andere Systeme, Hardware, Datenstrukturen usw.
  • Entwicklung einer vorläufigen Ressourcenschätzung
  • Dokumentation des Umfangs der Änderungen und Aktualisierung der Anträge

Wartungsmanagement

Softwarewartung

Alle Aktivitäten, die erforderlich sind, um finanzielle Unterstützung für das System zu leisten. Diese Aktivitäten werden sowohl vor als auch nach der Auslieferung durchgeführt.

Aktivitäten vor der Auslieferung

Planung für Aktivitäten nach der Auslieferung, Support und Logistik.

Aktivitäten nach der Auslieferung

Softwaremodifikation, Benutzerschulung und Betrieb eines Helpdesks.

Entradas relacionadas: