Tölvumál - 01.10.1997, Side 13
TÖLVUMÁL
forrit sem meðhöndla dagsetning-
ar. I sumum tilfellum þarf að
breyta gagnasvæðum, skjámynd-
um og listum. Huga þarf enn-
fremur að öllum dagsetningar-
gögnum sem fara á milli hugbún-
aðarkerfa og yfirfara allar kerfis-
dagsetningar („system date“).
Yfirfara þarf ennfremur allar rað-
anir þar sem dagsetningar koma
við sögu. Endurskoðunarfyrir-
tækið Coopers & Lybrand hefur
sagt að í tölvukerfi sem telur 8000
óleiðrétt forrit sem hvert er upp á
u.þ.b. 1500 forritslínur eða 12
milljónir forritslína alls þá þurfi að
meðaltali að breyta dagsetningu í
fimmtugustu hverri forritslínu eða
á 240.000 mismunandi stöðum.
Síðan þarf í raun að prófa öll
forritin eftir breytinguna og að
lokum allt kerfið í heild sinni.
Það er ómaksins vert að velta
því fyrir sér hvers vegna menn
glíma nú við vandamál vegna kom-
andi aldamóta. Mörg stórtölvu-
hugbúnaðarkerfi hafa lifað mun
lengur en menn gerðu ráð fyrir í
upphafi. Það er ekki óalgengt að
kerfi sem voru hönnuð á árunum í
kringum 1985 séu enn í fullu gildi
og er það fyrst og fremst að þakka
vel hönnuðum kerfum og stöðug-
leika stórtölvuumhverfis. A níunda
áratugnum fannst mönnum langt
til aldamóta og almennt var talið
að líftími kerfa væri á bilinu 7-10
ár að hámarki. Dagsetningarsvæði
voru því einungis skilgreind sem
6 stafir og upplýsingar um öldina
þar með undanskildar. Diskar og
diskarými voru líka hlutfallslega
miklu dýrari en þeir eru í dag sem
olli því að menn leituðu ávallt leiða
til að minnka gagnaskrárnar m.a.
með því að sleppa því að geyma
öldina í dagsetningarsvæðum.
Vandamál vegna ársins 2000
eru að sjálfsögðu ekki eingöngu
bundin við stórtölvu-hugbúnaðar-
kerfi því allt bendir til þess að
einkatölvuheimurinn muni glíma
við stórfelld vandamál samfara
aldamótunum en nánar urn það á
eftir.
Skilgreining
- aldamótin og vandamál
tengd þeim ítölvukerfum
• 1 mörgum tölvukerfum hefur
öldin ekki verið geymd sem
hluti af dagsetningu sem veldur
því að villur koma upp í út-
reikningum, samanburði, röð-
unum og allri meðhöndlun dag-
setningarsvæða.
• Tölvukerfin gera ráð fyrir að
hæsta gildi árs geti orðið 99 og
árið 00 verður í mörgum til-
fellum túlkað sem árið 1900 en
ekki árið 2000.
• Rangar hlaupárs stefjur munu
gera ráð fyrir því að árið 2000
sé ekki hlaupár og þannig
reikna með 365 dögum í árinu
í stað 366.
• í mörgum forritum hefur öldin
(19) verið skráð beint inn í for-
ritið (,,hardcoded“) og þannig
koma fram villur.
• Hin ýmsu hugbúnaðarkerfi
skila svokölluðum kerfisdag-
setningum („system date“) og
valda þar með villum.
• Þar sem röðun gagna byggir á
ártali er ljóst að röðunarforrit
munu ekki raða gögnunum í þá
röð sem til er ætlast.
Leiðirtil úrlausnar
- helstu leiðir við að gera
forrit aldamótahæf
Miklar deilur eru meðal þein'a
sem fjalla um vandann vegna
ársins 2000 þegar kemur að því
að velja leið til að gera forrit og
þar með hugbúnaðarverkefni alda-
mótahæf. Aðallega eru tvær að-
ferðir nefndar til sögunnar þ.e.
gagnaleiðin („data approach“) og
gluggaleiðin („logic approach“).
Ég mun í stuttu máli reyna að
skýra út hér fyrir neðan mismuninn
á þessum tveimur aðferðum og
síðan kostum og göllum við hvora
fyrir sig.
Gagnaleiðin: Umbreyta öllum
dagsetningarsvæðum á gagna-
skrám sem ekki innihalda öldina í
8 stafa svæði með öld.
Kostir:
• Auðskilin.
• Leysir vandamálið til ársins
9999.
• Ekki þörf á að breyta „lógík“ í
forritum.
• Sama aðferð notuð til að breyta
öllum forritum.
Gallar:
• Breytingar á gagnasvæðum og
forritum þurfa að framkvæm-
ast á sama tíma sem getur
valdið vandræðum, sérstaklega
þegar um er að ræða stærri
kerfi.
• Erfitt að „frysta“ kerfi til langs
tíma vegna breytinga.
• Kostai' yfirleitt meira geymslu-
rými fyrir skrár.
• Það þarf að breyta öllum for-
ritum sem meðhöndla dagsetn-
ingar á einn eða annan hátt
hvort sem þessi forrit tengjast
vandamálum vegna ársins 2000
eða ekki.
• Annaðhvort þarf að umbreyta
söguski'ám eða skrifa sérstök
forrit sem umbreyta dagsetn-
ingum þegar eldri söguskrár
eru meðhöndlaðar.
Röklægaleiðin/gluggaleiðin:
Gagnasvæðum á skrám er ekki
breytt, en í stað þess eru forritin
látin sjá um að umbreyta dagsetn-
ingunum þar sem notaðir eru svo-
kallaðir tímagluggar til að ákvarða
öldina. Tímaglugginn stendur fyrir
100 ára tímabil sem kerfin geta
unnið innan. Þessi leið krefst þess
að ákveðið ár er valið sem viðrnið-
unarár („pivot year“) og eru þá
menn að ákveða að gögn fyrir til-
tekinn tíma eru annað hvort ekki
til staðar eða skipta ekki máli. Við
getum tekið dæmi um að ef árið
56 væri valið sem viðmiðunarár þá
værum við með tímaglugga frá
01.01.1956 til 31.12.2055 þar sem
OKTÓBER 1997 - 13