作者:劉醇瑞

眼看民國一百年已逼近,老張對於百年蟲的擔憂全寫在臉上。今天一早他又直奔資訊室,向小戴詢問目前的處理進度。

老張 老張有些擔心:「小戴,眼看民國一百年越來越近,公司的資訊系統準備的如何了?」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
小戴 「我們在上個月已經完成所有系統的修改,目前正進入測試階段,電子商務部門那邊也沒什麼大問題。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
老張 「那我就放心了,百年蟲的問題涵蓋層面雖不及千禧蟲,但同樣不可輕忽。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
小戴 小戴想到:「話說回來,2000年那時我還沒進公司,不知道當時是如何加以應變的?」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
老張 老張想了想:「雖然千禧蟲讓全球如臨大敵,不過當時我們e化的程度不深,又尚未跨足電子商務領域,因此並未特別擔心Y2K的問題。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Judy Judy忍不住插嘴:「你們不說我還沒想到呢,原來蟲蟲危機又快要到了。不過這問題對我們影響有這麼大嗎,我還以為只有金融機構要緊張。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
老張 「金融機構固然是要最優先處理的單位,但並不代表其他產業就能置身事外,像是醫療及政府機構也都屬於重點單位。資訊風暴一旦發生,影響層面可大可小,漠視這類年序錯亂的問題,屆時將對組織營運產生衝擊。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
小戴 小戴舉例:「以銀行來說,如果因為欄位不足,定存日期由100年變為00年,影響自然非同小可。但這些金融機構在經歷Y2K的危機時,就已經體認到會面臨百年蟲問題,大多會儘早成立專案小組,進行程式的檢測和修改。實際上大部分的銀行在去年底之前就已修正完畢。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Judy 「這麼說來,受到影響越大的組織,通常也會及早做好準備。反而是拖到最後一刻的小單位,才令人擔憂囉?」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
老張 老張搖搖頭:「妳這樣解釋倒又有些似是而非了。關鍵還是在於,必須評估這個風險在組織內發生的機率和造成的損失。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Judy Judy抱怨:「話雖如此,很多人還是搞不太懂千禧蟲和百年蟲的差異吧。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
小戴 小戴解釋:「兩個問題的癥結並不相同,所需要修改的內容也有差異。千禧蟲的問題牽涉到電腦硬體、作業系統、開發工具及應用系統,影響層面廣泛而複雜。相較之下,百年蟲的問題較為單純,只和應用系統(程式和資料庫)有關。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Judy 「這麼說來,這次不需要勞師動眾,系統的設計者就可以自行處理嘛。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
小戴 小戴苦笑:「是囉,但這同時也表示,百年年序問題不可能像Y2K一樣,擁有來自全球的資源和解決方案。一來這個問題是台灣獨有的,再者硬體廠商無法藉此獲利。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
老張 老張摸摸鬍子:「好在我們也不全然是孤軍奮戰,對於不知如何進行的機關或企業,政府也提供了相關的資訊。需要的人可以進入行政院主計處的『民國百年年序問題服務網』,或經濟部的『民國百年年序企業服務資訊網』,透過網站了解百年蟲的原因及因應之道。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
小戴 「就實務上而言,要解決百年蟲的問題,主要是將原本日期欄位或定義擴增。除非是很小的程式,否則一般應採取『清查、修正、測試』三步驟進行。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Judy Judy嘟嘴:「說來簡單,不過有些系統的程式多達上百隻,想在清查階段找出需要修改的地方,恐怕沒那麼容易。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
小戴 「沒錯,實際上清查所花費的時間並不亞於其他階段。要找出所有與民國日期格式相關的定義和欄位,除了主程式和資料庫之外,同時也要考慮到報表、多層架構中的元件,甚至是資料庫中的程序(如:Stored Procedure)。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
老張 老張不解:「難道就只能逐行、逐欄人工檢閱,沒有比較快速的方法嗎?」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
小戴 「一般來說,除了人工檢閱外,我們也會搭配工具,透過搜尋關鍵字的方式,找出與日期相關的定義及函式。除此之外也可以反向操作,在清查階段就同步建立一個測試環境,將年份設定為民國一百年之後,藉由執行時出現的錯誤回頭找尋待修改點。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Judy Judy恍然大悟:「原來還有這種方式,那清查完後就要實際進行修正了吧。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
小戴 「就像剛剛所說的,修正階段即為進行欄位的擴增,將年度或日期長度增加。要擴充1或多位數可以自行決定,但整個系統應加以統一。除此之外,在修改前務必備份原始程式和資料,以避免發生不可預期的問題,同時在修改後予以記錄。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Judy Judy急忙詢問:「倘若程式是委外開發的呢?」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
小戴 小戴面有難色:「這種情形大多無法取得原始碼,因此還是只能尋求開發廠商的支援。倘若已無法聯繫對方,則可嘗試自行檢查及修改資料庫欄位(這個部分一般多為開放格式),並儘早進行測試。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
老張 「說到測試,必須要擬真但又不影響線上環境,這個階段所需的時間恐怕 也不會太短。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
小戴 小戴點點頭:「在測試階段中,必須針對顯示、運算、儲存、報表等進行完整的測試。在此階段中,往往會發現一些前面的疏漏。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
老張 老張嘆口氣:「嚴格來說,解決百年蟲問題談不上是技術層面的挑戰,真正的難處在於逐一清查測試所耗費的時間和人力。雖然這方面的問題不若Y2K般受到高度關注,但仍應及早做好準備,以免付出慘痛的代價。」
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 
重點整理:
千禧蟲、百年蟲這類年序問題,並非只有金融機關需要擔心,任何電腦化的系統都有可能受到影響,導致資料的儲存、計算及顯示異常
千禧蟲的問題牽涉到電腦硬體、作業系統、開發工具及應用系統,影響層面廣泛而複雜
百年蟲的問題較為單純,只和應用系統(程式和資料庫)有關
要解決百年蟲的問題,主要是將原本日期欄位或定義擴增,一般應採取『清查、修正、測試』三步驟進行
經濟部中小企業處 主辦 中華民國資訊軟體協會 執行

Copyright © 2008 Information Service Industry Association of R.O.C. All Rights Reserved.
版權所有,禁止侵害,違者必究