從內政部移民署入出境管制電腦系統當機事件談起
林泰龍【經濟部標準檢驗局國家標準技術委員會資訊與通訊分組 委員】

上篇記要:由事件經過談到系統維運既有作法所衍生的各種問題,系統維運是設計出來的重要概念與認知,有關維運的活動、程序、方法等,都是使系統達成其目標或完成其任務的重要部份,應列入系統需求中。當系統進入生命週期的維運階段後,即應根據該等維運設計,實踐系統維運的各項活動。

維運服務之獲取與責任交接

在具有經過設計之有效維運機制的系統建置後,其有效之維運服務仍應透過制度化的獲取過程。對於政府部門而言,應遵循政府採購法的相關規定辦理。獲取者應將欲獲取之維運服務需求與維運服務之供應者溝通[3],並向可能的供應者,經由簽署保密協定,並且擔保不會外流的情況下,提供完整的系統構型(System Configuration)資料、操作手冊、技術人員素質要求、維運相關作業程序等。由供應商之相關人員先行了解維運服務範圍與責任,使供應商能夠精算出維運案的工作量(effort)與成本,以產生適當的維運建議書。當然,在決標之後,未得標廠商應繳回該等文件。

由於既有系統的維運存在許多的風險,尤其是在系統服務等級的維持上。因此,對於系統維運服務之獲取者而言,特別是任務關鍵系統,應確實掌握獲取過程的時程。系統維運服務獲取案,若以年度為單位重新招標方式執行,則最好能於年度結束一個月前即予決標,使得標的廠商能有充分時間議約與簽約、承接原維運服務廠商的維運經驗、完成系統維運的責任交接。而獲取者亦有充分時間,對得標商派用的人員實施素質驗證。

在新舊維運服務提供者交接的一個月內(即決標至原合約結束),獲取者應指派人員監督新舊維運服務提供者人員,對產品、服務與文件間一致性的審查與列冊點交,由舊維運服務提供者人員對接任之維運服務提供者人員實施教育訓練。之後,以系統建置及維護時所使用之測試情境與個案,由接任之維運服務提供者人員,實施運作測試(包括資料庫備份與災害復原等程序的實作),以確認系統與文件一致,能於運作環境中執行其任務,並能維持應有的服務水準[4]。

系統運維之執行與控管

獲取者在完成維運服務供應者評選,開始新一輪的維運服務活動前,除了先前所提到之維運責任、技術、經驗交接,運作服務人員教育訓練與簽證、文件、產品與服務間一致性審查與移交外。尚應依據ISO/IEC 27001處理在維運服務提供期間,資訊安全管理有關之問題,例如人力資源安全、資產管理、實體與環境安全、事故管理、營運持續管理、存取控制等等議題,若系統維運服務使用者的環境,已經導入資訊安全管理系統(Information Security Management System, ISMS),則應要求系統維運服務提供者配合使用者單位的規定辦理。若未導入ISMS,則在該系統維運服務的全景(context)中,建立與系統運作與維護相稱之資訊安全管理系統,尤其當維運的系統屬於任務關鍵性時,應特別注意。

在維運開始之前,獲取者應要求系統維運服務提供者,依據ISO/IEC 15289:2006[5]與系統文件中的服務水準需求,提出系統維運計畫。其內容應涵蓋系統運作構想,包括實作使用者支援及操作、資料備份的策略,以及如何進行系統維護(後勤)活動的計畫;對系統或軟體問題解決、系統更新及版本測試等的目標、策略及作法;維護過程如何實作(例如,維護要求提出的程序);問題與修改分析的程序;修改實作程序;維護更新、審查及驗收的程序等等。同時表列出履行各項維護所需要的資源(例如,設施、軟體、硬體、工具以及人員),及資源之間的關聯性;軟、硬體維護與保養的時程與準則,以及維護期間的特殊程序需求(例如,安全性、存取權限及文件控制)。

為確保系統服務水準,系統應安排固定的停機保養時間。例如,以季為單位,系統主機輪流停機保養。若系統主機無任何備援,則應設法建立系統的備援。根據筆者的經驗,即使採取HA架構的系統,亦有系統服務完全中斷的可能,這些問題可能不是來自於硬體,而是軟體或其他服務所造成。而配合停機保養時,可實施主機內部之主機板檢測及清潔(以防範因堆積的塵埃,影響散熱,而使硬體提早老化,或造成軟體運作不正常)、硬碟檢測、系統與資料庫調校、作業系統設定檢查、備份資料復原測試等。及使用資安檢查軟體,諸如Fortify 程式碼分析器,對於主機中的應用程式實施程式碼檢查,以防止其受到竄改,而危及系統安全性。另外,亦可實施維運人員之教育訓練。維運服務提供者於每次停機保養與維護後,應提出工作報告。

對於服務壽期將屆滿之系統,維運服務提供者應適時向獲取者/使用者反映,以便獲取者根據其內部的系統獲取、換裝或提升的相關作業規定,儘早採取適當的行動。另外,對於可能危及系統維持其服務水準之議題,諸如,因系統各分部規格不一致,而無法達到相互備援,維運服務提供者亦應適時提出解決建議。

因此,為了督導系統維運服務提供廠商能有效維持系統的服務水準,並使維運預算發揮應有的成本效益,獲取者應有一套維運服務成本效益的評鑑辦法。獲取者可遵循ISO/IEC 15939量測過程(Measurement Process)所提供的方法論,律定維運服務提供者的績效評鑑量度(metrics)、分析過程與準則,並納入維運計畫中。獲取者在律定的期程上,根據此績效評鑑準則,對維運服務提供者實施績效評鑑,評鑑的範圍應包括服務水準的達成或維持的情況、系統維運服務契約履行情況的稽核,其實施可採月或季度方式。

為使維運服務績效評鑑可行,較理想的方式乃是,獲取者將績效評鑑測量列於維運服務獲取RFP中,事先告知潛在的系統維運服務供應者,以便提出適當的維運服務建議與成本需求。

組織內的組態管理機制

對於組織而言,不論採取的是自行實施或委外辦理的策略,系統維運要能展現績效,組態管理(Configuration Management)機制是不可或缺的一環。

在許多資訊服務委外的供應者或獲取者的刻板印象中,組態管理機制只是軟體系統發展生命週期中的一項活動或過程而已,開發工作結束時,組態管理機制亦隨之解除。因此,在許多擁有應用系統的組織中,並不存在所謂組態管理機制或組態管理系統。然而,有趣的是,在ISO/IEC 12207:2008中述及:在驗收完成後,獲取者宜負起已交付軟體產品之組態管理的責任[6]。之所以在ISO/IEC 12207中建議獲取者負起已交付軟體產品之組態管理責任,主要是因為組態管理掌控了軟體產品的全般資訊,且組態管理應是與其所掌握之資訊所描述的系統並存的,亦即,只要應用系統存在,與其有關的組態管理機制就應存在。

有助於維運服務水準維持的組態管理系統,其所掌握的資料應包含應用系統的全部,這些資料除了應用系統的需求文件、設計文件、程式碼清單、使用者手冊、運作與維護程序、計畫、應用系統的程式碼之外,尚需要包括系統的全盤架構、伺服器主機的作業系統、資料庫系統、使用者端之作業系統等的廠牌型式,作業系統與資料庫的設定(例如,哪些服務應開啟,哪些服務應關閉)、應用系統開發環境(例如,整合式開發環境、程式語言、使用之程式館或元件館的廠牌與版本)、主機的硬體架構(例如,主機板、中央處理器的型號、記憶體數量、硬碟規格等)、相關的網路架構、使用者權限定義、測試環境、測試規格、測試情境與測試個案、系統維運的履歷資訊(系統何時維修、處理的問題型式、原因、處理的經過、是否有無法克服的限制條件)扔央C由於我們無法期望任何一個服務提供者的人員,能夠記住與系統有關的所有資訊,但是為了能夠在最短的時間內分析問題,找到問題的解答,以正確的對策解決問題,這些資料應盡可能完整、豐富。如此,可以避免類似在測試、維護、保養及問題處理時,拿到錯誤版本的軟體與文件,或取用錯誤的零組件,而延誤了服務水準恢復之時間要求。

由於組態管理系統攸關維運服務的績效,對於組織中尚未具有完整組態管理機制之系統,獲取者應規定維運服務提供者,在維運服務供應期間,結合系統的各項維運活動,逐步為系統建立起完整的組態管理機制,同時應盡一切能力,維持組態管理機制控管的資訊與實際的產品及服務的一致性。而對於新建系統,亦能夠著眼於系統未來的有效維運,在系統獲取與開發期間,即能配合系統發展的生命週期活動,建立適當的組態管理機制,並且持續累積與維護有效的應用系統資訊。

結語

如上篇所云:「系統維運單靠維運服務提供廠商能力與容量(capacity),並不足以確保其成功。既有系統要能有效維運,獲取者應在系統生命週期的初期,即有全面而周全之規劃與考慮。」

儘管許多軟體廠商及系統整合商認為相關的標準太高,此乃肇因於維護預算不足所致。但國家標準與國際標準均認為,該等標準只是基本的要求,可以在此基礎上增加額外、更為嚴謹的要求。

獲取者應要求維運服務的提供者,做好資料文件移交與經驗傳承的工作。同時,在正式開始維運服務前,應依據服務水準相關要求,提供合理的維運預算,完成合理且可行的維運計畫。此維運計畫的內容,不僅是針對問題發生時的緊急應對與修復而已,還應包含更為主動的維運活動,利用定期的停機保養、系統檢查、備份資料的復原演練、系統重啟央A以確保系統能有效維持服務水準,並降低系統故障之機會。

獲取者應了解維運服務提供者的績效,以充分掌握維運的成本效益,並作為後續年度維運規劃的基礎。為達成此一目的,獲取者應根據國際標準ISO/IEC 15939,所提供的方法論,建立有效的維運績效量度,並透過這些量度蒐集相關的數據資料,以評鑑維運服務提供者的績效與成本效益,並作為後續維運工作改善的依據。

另外,為能有效支持系統之維運,在組織內應具有能控管完整描述相關應用系統資訊之組態管理系統。總之,資料愈完整且與實際一致,愈有助於維運服務水準目標的達成。