home
Der Recherchekompass
  [ home | anleitungen | recherchen | hilfe | sitemap | index | suchen ] 
home » recherchen » y2k Diese Seite entspricht einer bestimmten Zeit im Internet, sie wird daher nicht mehr verändert!

Y2K   Das Jahr 2000 Problem

Erstaunlicher Weise findet das Problem im deutschen Internet so gut wie keine Beachtung, außer den Aktivitäten um Prof. Knolmeyer an der ETH-Zürich (www.ie.iwi.unibe.ch/zeit) sind nur wenige Quellen auszumachen, wie ein Blick in den Suchbaum von Yahoo! (www.yahoo.de) für das Jahr 2000 schnell verdeutlicht. Im amerikanischen Raum tut sich da erheblich mehr, wie in der Newsgroup comp.software.year-2000 zu beobachten ist. Auch auf dem Server www.year2000.com finden sich vielfältige Informationen und Verweise auf weitere Quellen.
Anmerkung am 1. September 1999:
Im Laufe der vergangenen Zeit hat sich auch in Deutschland ganz erheblich etwas getan im Zusammenhang mit dem Jahr 2000 Problem. Und das nicht nur im Hinblick auf die Sylvesterparties. Aktuelle Infos gibt es bei der Initiative 2000 (www.initiative2000.de (t)).
Anmerkung am 10. April 2000:
Allem Anschein nach hatte sich Deutschland wie auch der Rest der Welt hinreichend vorbereitet und der Fehler hat nicht die Auswirkungen erreicht, die viele erwartet (erwünscht?) hatten.
In vielen Informationssystemen - Anwendungen wie Datenbeständen - wird das Jahr nur durch die beiden letzten Ziffern YY der vierstelligen Jahreszahl CCYY repräsentiert. Dies ist auf mehrere Gründe zurückzuführen (vgl. /Knolmeyer97/):

  • Eine zweistellige Jahresrepräsentation erfordert gegenüber vierstelligen Angaben weniger Platz und verursacht daher kurz- bis mittelfristig weniger Kosten. Dies war früher wichtiger als heute. So ist eine Darstellung vierstelliger Jahreszahlen in COBOL75 gar nicht möglich gewesen.
  • Die so entstandenen Datenbestände sollten zur Vermeidung von Redundanzen wiederverwendet werden, daher benutzen auch jüngere Anwendungen zweistellige Jahreszahlen.
  • Standardisierungsorganisationen stellen zweistellige Jahresangaben als zulässige Variante dar (z.B. in ISO 8601).
  • Viele Entwickler ahnten nicht, dass die von ihnen entwickelten Programme noch im Jahr 2000 im Einsatz sein würden.
  • Benutzer ziehen kürzere Dateneingaben längeren vor. Sind bei der Erfassung großer Datenvolumina zahlreiche Jahreszahlen einzugeben, so ist die zweistellige Eingabe wesentlich bequemer. Auf Berichten und Bildschirmen wurde auf die Angabe des Jahrhunderts aus Platzgründen auch häufig verzichtet, welches dazu führt zweistellige Jahreszahlen weiterzuverwenden oder - häufig gar fix programmiert: ADD 1900 TO Eingabe-Jahr - dass das Jahrhundert vom Programm gesetzt wird.

Einige der Gründe lassen sich auch auf das Internet anwenden. So war Bandbreite von jeher ein knappes Gut und es kann daher nicht verwundern, wenn das Jahrhundert eingespart wurde. Technisch wurde die meisten der älteren Knoten ausgetauscht, so dass es auf der Protokollebene kein Problem geben sollte. Und selbst wenn, es wird sich vermutlich auf ein recht kleines Zeitfenster beschränken, nämlich wenn genau zum Jahreswechsel kommuniziert wird, können sich aufgrund von Reihenfolgeprobleme (falsche Sortierung) verstümmelte Nachrichten ergeben. Es empfiehlt sich also für den Nutzer zu dieser Zeit keine kritische Kommunikation durchzuführen. Anders sieht es bei Internetapplikationen aus. Erstens leben Anwendungen in der Regel länger als die zugrundeliegenden technischen Systeme und zudem sind sie wegen unzureichender Standardisierung nicht so leicht auszuwechseln oder reparieren wie die Hardware.

Die Verwendung zweistelliger Jahreszahlen unterstellt, dass das Jahrhundert gleich 19 ist. Dies stimmt 2000 natürlich nicht mehr. Durch das programmgesteuerte Setzen des Jahrhunderts, können auch vierstellige Jahreszahlen betroffen sein.

Des weiteren kann es vorkommen, dass die Jahreszahlen 99 und 00 als herausgehobene Werte interpretiert werden. Wir müssen also darauf gefaßt sein, dass dieses Problem tatsächlich bereits vor dem 1. Januar 2000 auftritt.

Die folgenden Fehler und Fehlverhalten der Anwendungen sind durch falsch interpretierte Datumsfelder sind zu erwarten:

  • Die zweistellige Jahreszahl wird zu Vergleichs-, Sortier- und Rechenfehler führen (00 ist kleiner als 99).
  • Viele Schaltjahralgorithmen werden das Jahr 2000 nicht als Schaltjahr erkennen (es ist durch 400 teilbar) und somit keinen 29. Februar ausweisen.
  • Dort wo das Jahrhundert mit 19 fest vorgegeben ist, kommt es zu den gleichen Problemen wie mit zweistelliger Zahlenangabe.
  • Bei Assemblerprogrammen und anderen Betriebssystemnahen Programmiersprachen, kann es zu Registerüberläufen oder Allokierungsfehlern kommen.
  • Alte Systemroutinen werden falsche Datumsangaben liefern.

Wie Harry M. Sneed jüngst in seinem Newsletter schreibt, ist das Datumsproblem nicht neu. Bereits Ende 1969 sind alle IBM-360 Rechner in Europa abgeschaltet worden, weil sie über das Jahr 1969 nicht hinwegkommen konnten. Das heutige Problem ist von der gleichen Art, aber durch die gestiegene Quantität und Komplexität der Anwendungen ungleich größer.

Um diese Fehler zu vermeiden bzw. zu beheben muss in die Anwendungen eingegriffen werden. Nach Robert Martin von der MITRE-Corporation gibt es die folgenden Ansätze zur Lösung des Datumswechsels:

  • Erweiterung des Datumsformates von 6 (tt.mm.jj) auf 8 Stellen (tt.mm.jjjj).
    Dies dürfte die sauberste Lösung sein, enthält aber auch die größten Auswirkungen, weil alle Programme und Datenbestände angefaßt werden müssen.
  • Verpackungs des Datums in 6 oder 4 Bytes (Neojulian).
    Hierbei werden die bestehenden Datenelemente dazu genutzt, das Datum in anderer Form zu speichern. Es müßte vor der Präsentation allerdings umgesetzt werden. Dies erfordert zudem die Überarbeitung aller bisher gespeicherten Daten.
  • Verwendung eines Zeitfensters.
    Beispielsweise 50 bis 99 entspricht 19JJ, 00 bis 49 ist 20JJ. Wenn das Zeitfenster größer als 100 Jahre sein muss funktioniert dies allerdings nicht mehr.
  • Benutzung von Datumskonvertierungsroutinen (Bridging Technik).
    Es handelt sich dabei um Standardroutinen, zumeist nach Zeitfenster-Prinzip, die zwischen Datenhaltung und Anwendungsprogramme oder Benutzerschnittstelle und Programm geschaltet werden und das Datum umsetzen.
  • Rückstellung der Systemuhr mit einer 28-jährigen Zeitbrücke.
    Das dargestelltes Datum entspricht dann dem Systemdatum plus 28 Jahre. Dies ist wohl die einzige Lösung, falls der Sourcecode einer Anwendung nicht mehr änderbar/vorhanden ist. 28 Jahre deshalb, weil dann die Tage und Wochen dem jeweils aktuellen Jahr entsprechen.
  • Ablösung der Software.
    Wahrscheinlich der Königsweg, aber nur selten machbar, da hierfür Geld und Kapazitäten vorhanden sein müssen. Außerdem werden Fachbereiche nur dann mitziehen, wenn die vorhandene Lösung ohnehin nicht erhaltenswert ist.
  • Nichts.
    Dies läßt sich sicherlich machen, wenn die Auswirkungen des Jahrtausendwechsels nicht so gravierend sind und vom Anwender hingenommen bzw. ausgeglichen werden. Dies muss als Übergangslösung in Betracht gezogen werden, wenn eine baldige Ablösung vorgesehen ist.

Keine Lösung ist sicherlich in manchen Fällen auch eine Lösung. Bevor aber eine Lösung auch angegangen werden kann, muss klar sein, welchen Umfang das Problem in den Anwendungen hat und welche Auswirkungen durch fehlerhafte Datumsbehandlungen der einzelnen Anwendungen in den Fachbereichen entstehen.

Zunächst muss untersucht werden, wie groß das Umstellungsproblem für das Unternehmen überhaupt ist und für welche Anwendungen auch ein Umstellungsbedarf existiert. Anwendungen, die rechtzeitig durch neue ersetzt werden bedürfen keiner Umstellung, aber auch für die verbleibenden ist der jeweilige Umstellungsbedarf erst durch eine Untersuchung der Datenbestände und Programme zu erkennen.

Im ersten Schritt sind alle Anwendungen aufzunehmen und es muss festgestellt werden, ob sie im gegebenen Zeitrahmen überhaupt relevant sind, d.h. sie werden über das Jahr 2000 hinaus genutzt. Da die Bearbeitung der Anwendungen viel Aufwand verbunden ist, müssen die Kräfte konzentriert werden und es müssen gegebenenfalls Werkzeuge oder zusätzliches Personal zur Verstärkung eingekauft werden. Daher muss auf die Analyse der Anwendungen die Planung der Umstellung folgen.

 

Literatur:
Knolmeyer 97
Gerhard Knolmeyer; Das Jahr 2000 Problem: Medien-Spektakel oder Gefährdung der Funktionsfähigkeit des Wirtschaftssystem?; in Wirtschaftsinformatik Bd. 39 (Wiesbaden: Gabler, 1997) S. 7 - 18.
Sneed 97
Harry M. Sneed; Das ewige Problem mit der Zeit; in Software Engineering Newsletter, Heft 47 (München: SES, 1997) S. 7ff.

 

Verweise
 
Unser Kalender
Ständig verfügbar und unersätzlich, zur Vereinbarung eines Termines: Unser Kalender. Aber das war nicht immer so, früher hatte nicht jeder einen vorgefertigten Kalender zur Hand, Datümer mussten errechnet werden. Die richtigen Termine für Aussaat und Ernte, aber auch für religiöse Feiern, waren wichtig für ein ganzes Volk. Schon immer war das Kalenderwesen ein besonderes Anliegen für Staatsoberhäupter und religiöse Führer.
(Ich bin nicht verantwortlich für Inhalte externer Internetseiten.)
 


[Seitenanfang] geändert: 30.08.2009 by hgm © 1998, Hans-G. Mekelburg, all rights reserved.
[ impressum |; datenschutz | haftungsausschluss ]