Montag, 5. November 2012

Update, der Stand der Dinge

Wenn ich eine Software geschrieben habe und ich irgendwann zu dem Schluss gelangt bin, dass diese Software bereit ist für den produktiven Einsatz, dann veröffentliche ich sie. Immer stellt sich im Nachhinein heraus, dass diese Software noch Fehler enthält. Meistens zu Problematiken, die erst zu einem späteren Zeitpunkt geklärt werden konnten, da sie vorher gar nicht als solche wahrgenommen wurden. Dieser Umstand liegt in der Natur der Sache, da ich, wie schon einmal erwähnt, meine Software nicht auf unbekanntes Verhalten prüfen kann.
Um diese Problematik zu entschärfen, wird Software kontinuierlich aktualisiert, also mit einem Update versorgt. An diesem Vorgehen ist nichts verwerfliches. Es ist sogar ein ehrliches und löbliches Verhalten des Programmierers, welches sogar bei ganzen Betriebssystemen praktiziert wird.
Es liegt also in der Verantwortung des Programmierers, seine Software auf dem neusten Stand zu halten.

Immer öfters kommt es vor, dass bekannte Schwächen von Software solange verschleiert werden, um sie erst bei der nächsten, noch besseren, noch bunteren und noch teureren Version zu beheben.

Hier liegt die Verantwortung beim Anwender, seine Software auf dem neusten Stand zu halten.


...$$$...

Es gibt demnach zwei Parteien, die für die Aktualität eines Systems verantwortlich sind und dieser Umstand kann zu Verwechselungen der Verantwortlichkeiten führen. Oder zu absurden Systemkonstellationen, wenn ein Hersteller eine statische Systemumgebung, für die Lauffähigkeit seiner Produkte, verlangt. Dadurch wird eine Aktualisierung des ganzen Systems kategorisch ausgeschlossen.

Der Zwang in der Automatisierunggilde ist eklatant. Nicht nur die Entwicklungswerkzeuge zwingen zu definierten Umständen, wie z.b. das Betriebssystem, sondern auch die Ausführungsumgebungen (Runtime) sind nur lauffähig, wenn sie eine vom Hersteller definierte Umgebung vorfinden.

Worin liegt nun das Problem?
Im Anlagenbau wird gerne mit den Prädikaten "Innovationssicherheit" und "mehr als 20 Jahre Verfügbarkeit" geworben, welches den Kunden suggeriert, das sie für einen langen Zeitraum von der Pflege ihrer Produkte befreit wären. Eine Update-Strategie würde dieses idealisierte Bild zerstören.

...$$$...

Wie ideal wäre es, wenn die Steuerung von Apollo 12 noch heute ihren Dienst erledigen würde, wie ein Gusseisenventil, welches nach 40 Jahren nicht leckt. Das ist in der Informationstechnologie aber so nicht zu leisten.

Die vorgeschriebenen Umgebungen sind undynamische Gebilde und dürfen nicht auf den neusten Stand gebracht werden. Wenn man sich vergegenwärtigt, dass jegliche Software Sicherheitsschwächen aufweisen können, ist das ein gefährliches Unterfangen.
Eine konkrete Umgebung wäre: Windows XP mit Service Pack 2, aber ohne Hotfix KB319740 (o.ä.), um eine Entwicklungsumgebung zur Erstellung von Visualisierungen für Steuerungen zu betreiben.

Eine solche Grundlage verbietet das Einspielen von wichtigen Aktualisierungen, da die Software sonst nicht korrekt funktioniert.

Meines Erachtens dürfen aus diesem Grund Schlagworte, wie "Sicher" nicht verwendet werden. Weiterhin sollte eine andere Update-Politik der Hersteller betrieben werden.

Keine Kommentare:

Kommentar veröffentlichen