歡迎來到系統生命週期 (System Life Cycle, SLC)!

你有沒有想過,那些大型的 IT 系統——比如你最喜歡的網上商店或學校的成績查詢系統——究竟是如何構建出來的?它們絕對不是一夜之間冒出來的!它們遵循一套嚴格的步驟,這就是所謂的系統生命週期 (System Life Cycle, SLC)

你可以把 SLC 想成蓋房子。你不可能一開始就直接砌磚,對吧?你會先與屋主溝通、繪製藍圖、進行施工,最後還要檢查屋頂會不會漏水。在這些筆記中,我們將逐步探討每一個階段,幫助你掌握考試所需的流程。如果一開始覺得步驟很多也不用擔心——我們會把它拆解開來,一點一點地學!


1. 分析 (Analysis):偵探階段

在開始構建任何東西之前,我們必須先了解當前的問題。在這個階段,系統分析師 (Systems Analyst) 會審視現有的系統(即使它只是一個紙本系統),看看哪些地方運作良好,哪些地方需要改進。

事實收集方法 (Fact-Finding Methods)

為了獲得完整的資訊,分析師會使用多種方法來收集資料:

  • 訪談 (Interviews): 與經理或員工進行一對一的交談。例子:詢問商店經理,為什麼他們覺得目前的結帳流程很慢。
  • 問卷調查 (Questionnaires): 同時向多人發放問卷。這對於快速從大量用戶中獲取資訊非常有效。
  • 觀察法 (Observation): 觀察現有系統在現實生活中是如何被使用的。有時人們在訪談時會遺漏細節,而這些細節往往只能透過觀察他們工作來發現!
  • 文件收集 (Document Collection): 檢視現有的書面文件、發票或電子檔案,以了解數據目前的流動方式。

需求規格說明書 (Requirement Specification)

偵探工作完成後,分析師會撰寫一份需求規格說明書。這是一份清單,明確列出新系統「必須」具備的功能。
類比:這就像是你去超市前列的購物清單。如果清單上沒有,就不會被買回家!

快速回顧:

分析階段的重點在於透過訪談、問卷、觀察和文件審查,找出問題所在以及系統的需求


2. 設計 (Design):建築師階段

既然我們知道了需求,接下來就必須規劃系統的外觀與運作方式。這就是設計階段。我們在這裡繪製「藍圖」。

需要設計什麼?

包括用戶看到的所有介面,以及電腦在幕後處理的所有事務:

  • 輸入畫面 (Input Screens): 資料輸入表單看起來如何?是否易於使用?
  • 輸出格式 (Output Formats): 報告或收據看起來會是什麼樣子?
  • 資料結構 (Data Structures): 資料庫中需要哪些資料表 (tables) 和欄位 (fields)?
  • 驗證規則 (Validation Rules): 什麼樣的規則可以防止「垃圾」資料進入系統?(例如:確保「出生日期」不是未來的日期)。
  • 硬體與軟體 (Hardware and Software): 需要什麼特定的電腦規格或作業系統?
你知道嗎?

如果你在設計階段出錯,整個專案可能會失敗。在草圖上修正錯誤,遠比在完成的軟體中修復錯誤要便宜得多!


3. 開發與測試 (Development and Testing):建築工階段

這是實際編寫程式碼的階段。當系統建好後,我們必須試圖「破壞」它,以確保其可靠性。這就是測試 (Testing)

測試資料的類型

為了確保測試全面,我們會使用三種特定的資料類型:

  • 正常資料 (Normal Data): 系統「應該」接受的資料。例子:如果系統接受 1 到 100 歲的年齡輸入,輸入 '25' 就是正常資料。
  • 極端資料 (Extreme Data): 位於允許範圍邊緣的資料。例子:輸入 '1' 或 '100'。
  • 異常/錯誤資料 (Abnormal/Erroneous Data): 明顯錯誤且應該被拒絕的資料。例子:在年齡欄位中輸入 '-5'、'150',或是輸入文字 'Banana'。

測試方法

測試通常分為兩個主要階段:

  1. Alpha 測試: 由開發人員親自進行,旨在找出重大錯誤 (bugs)。
  2. Beta 測試: 在正式發佈前,將系統交給一小群「真實用戶」進行試用。
重點總結:

永遠不要假設系統一定沒問題!務必使用正常極端異常資料進行測試,以確保系統堅固耐用。


4. 實施 (Implementation):進駐階段

這可是大日子!我們將關閉舊系統並啟用新系統。實施方法主要有四種,你需要了解每一種的優點和缺點。

1. 直接轉換 (Direct Changeover)

舊系統完全停止,新系統立即啟用。
優點: 速度快,成本最低。
缺點: 如果新系統故障,你就沒有退路了!風險非常高。

2. 並行運作 (Parallel Running)

舊系統和新系統同時運作一段時間。
優點: 非常安全。如果新系統崩潰,你還有舊系統可用。
缺點: 員工的工作負擔會加重,因為他們必須輸入兩次資料!

3. 分階段實施 (Phased Implementation)

新系統分批次、分階段引入。例子:超級市場可能先在「烘焙」部門使用新系統,下週再擴展到「冷凍食品」部門。
優點: 如果出錯,只會影響企業的一小部分。

4. 試點運行 (Pilot Running)

新系統先安裝在一個分店或辦公室試用。
優點: 如果在那裡運作良好,再推廣到所有人。如果失敗了,也只會影響那一家分店。

記憶小撇步:

試點運行 (Pilot) 想成電視節目的「試播集 (Pilot episode)」。他們先拍一集;如果觀眾喜歡,才會接著拍完整季!


5. 文件編製 (Documentation):使用手冊

沒有說明書的系統是不完整的。文件編製分為兩類:

  • 用戶文件 (User Documentation): 為每天使用系統的人員所編寫。包含「如何操作」指南、常見問題 (FAQs) 以及針對常見錯誤的故障排除。
  • 技術文件 (Technical Documentation): 為日後可能需要維修或升級系統的 IT 專業人員所編寫。包含資料字典 (Data Dictionaries)流程圖 (Flowcharts)程式註解 (Annotated Code) 等。
常見誤區:

千萬別搞混了!用戶文件是用來幫助人們「操作」系統的;技術文件則是用來「維護」或「修復」系統的。


6. 評估與維護 (Evaluation and Maintenance):健康檢查

在實施幾週後,我們會進行評估。我們要問:「它真的達到了我們在第一階段制定的需求嗎?」

維護的類型

系統完成後通常需要調整,這就是維護

  • 糾正性維護 (Corrective Maintenance): 修復測試期間未發現的錯誤。
  • 適應性維護 (Adaptive Maintenance): 因應外在環境變化(例如政府新的稅務法規或 Windows 的新版本)而修改系統。
  • 完善性維護 (Perfective Maintenance): 提升系統性能,即使它並沒有壞掉,也可以讓它運作得更好或更快。
最後快速回顧:

SLC 是一個循環:分析 -> 設計 -> 開發 -> 實施 -> 文件編製 -> 評估。評估完成後,這個循環通常會重新開始,以便讓系統變得更加完美!