第3章 需求分析
本章大綱 學習目標 3.1 導論 3.2 需求擷取方式 3.3 需求表達工具與方法 3.4 需求分析結果與文件樣版 3.5 需求分析個案 3.1 導論 3.2 需求擷取方式 3.3 需求表達工具與方法 3.4 需求分析結果與文件樣版 3.5 需求分析個案 3.6 結論
學習目標 詳讀本章,你至少能瞭解: 需求分析步驟與應注意事項。 常見的六種需求擷取方式及執行要點。 何謂環境圖、流程圖、處理描述、藍圖與資料詞彙。 如何以環境圖、流程圖、處理描述、藍圖與資料詞彙進行需求塑模。 需求分析之重要工作與文件樣板為何。
3.1 導論(1/5) 使用者需求,係指使用者期待系統解決的問題與希望從系統獲得之資訊。 使用者需求是資訊系統開發過程中最關鍵、最重要且最容易發生錯誤的部分,亦是資訊系統失敗的主因之一。 需求分析是使用者與分析師均必須重視之議題。 該階段之主要工作是應用已通過驗證之原理(Principles)、技術(Techniques)、語言(Languages)與工具(Tools),幫助分析師瞭解問題或描述與新系統互動之外部行為。
3.1 導論(2/5) 系統開發過程中的需求分析階段主要包括三個活動: 需求判斷 強調如何判斷真正的需求及需求的正確性。 需求分析 重視在分析已有的需求下,所產生的不一致、不完整或矛盾等問題。 需求溝通 重視以最佳的方式組織及描述需求,使需求令人容易瞭解,並經由相互溝通達到需求確認的目的。
3.1 導論(3/5) 需求分析階段可分為兩大步驟: 需求擷取 主要是對系統範圍內之各種事物與相關現象,加以瞭解、判斷及選擇,並設計成描述性綱目。 需求轉換 主要將描述性綱目以系統模式語法轉換成概念性綱目。
圖3-1 需求分析之重要步驟
3.1 導論(4/5) 需求分析階段之重要工作包括: 建立組織資訊處理需求 發展資訊系統目標 設計及評估資訊系統發展方案 整理系統分析師、其他分析師、使用者和其管理者溝通分析的結果 從事系統審核
3.1 導論(5/5) 使用者需求可分為: 巨觀需求 包括欲電腦化之環境、作業程序與範圍、輸出與輸入所需之資訊或表單及系統目標、限制和主要功能等,這些需求應盡可能地在需求分析階段釐清與確定。 微觀需求 指的是電腦化之微觀範圍,包括使用者介面要求、例外狀況處理與錯誤及輔助訊息顯示等需求,這些需求通常需到設計階段才較容易處理,在此之前這些細部需求不易被掌握。
3.2 需求擷取方式 在擷取使用者需求之前,必須先瞭解系統之潛在使用者及可能之人機互動。 接著蒐集欲電腦化之作業處理程序及其輸出入資料內容、數量、格式、目標、規則與限制等。 常用的需求擷取方式有查閱文件、觀察、問卷、訪談、開會討論與聯合開發六種,這些方式可單獨應用亦可互相搭配使用。
3.3 需求表達工具與方法(1/3) 需求分析階段之重點工作是先擷取使用者(或企業)的巨觀需求,並以使用者觀點應用具有完整定義的(Well-Defined)工具、圖形或語言將需求表達出來,再進一步對需求進行合理化,最後由使用者確認,以作為系統分析與設計的基礎。 以結構化之系統分析與設計而言,主要是考量企業流程塑模與資料塑模。
圖3-2 需求塑模
3.3 需求表達工具與方法(2/3) 流程塑模與資料塑模的工具包括: 環境圖 主要表達系統與所在環境之關係。 流程圖 主要表達實體之作業程序及所需資訊。 事件 表示外部實體所啟動且系統必須回應之刺激 處理描述 表示流程圖中作業處理之執行程序與規則、相關之資料輸出入資訊以及處理之限制與備註。
3.3 需求表達工具與方法(3/3) 藍圖 主要表示流程圖中資訊之展示格式與內容。 資料詞彙 主要描述藍圖內資訊之詳細內容與規則。
表3-1 環境圖之元件
表3-2 流程圖之元件
3.4 需求分析結果與文件樣板 完成需求分析與確認後,需求分析結果之文件應包括該階段中重要工作結果之摘述。 需求分析結果之文件樣板如下:
3.5 需求分析個案 需求分析依3.1節概念分為需求擷取與需求轉換兩大步驟,其中,需求轉換主要以流程圖配合藍圖、資料詞彙與環境圖等進行需求塑模。 本節將以一「夢幻公司之管理資訊系統(以下簡稱夢幻系統)」為例,針對其使用者與企業巨觀需求,介紹如何以環境圖、流程圖、處理描述、藍圖與資料詞彙表達其欲電腦化的環境、作業程序與範圍、輸入與輸出所需資訊或表單及系統目標、限制和主要功能。
圖3-3 夢幻資訊系統環境圖 A01.客戶+新增+訂單 A03.客戶+新增+銷退單 A05.客戶+新增+付款證明 …
圖3-4 訂單送貨流程圖
3.5.3 需求塑模—建構流程圖(4/6) 處理描述1-1 以訂單送貨流程之訂單處理為例(參考圖3-4),其資料來源為客戶之訂單,且產出為生產部之生產需求或進行送貨處理。 訂單處理之處理描述名稱可命名為訂單處理與庫存判斷,該處理描述與庫存判斷之執行程序與規則,可從上述需求描述摘述如表3-8。 流程圖中,每一處理應有一處理描述,每一處理描述應有一致的表達格式。
表3- 8 訂單處理描述
表3-10 訂單資料詞彙
3.6 結論(1/2) 需求分析的過程主要是擷取與表達使用者之巨觀需求,這包括欲電腦化之環境、作業處理、輸出與輸入所需之資訊或表單與系統主要功能等。 需求分析階段對問題領域之瞭解範圍應盡可能地廣泛,到了分析與設計階段再縮小到專案範圍,如此有助於對新系統之瞭解與規劃。
3.6 結論(1/2) 以目前之開發工具來說,需求分析工作約占整個專案時間的25%左右,且需求分析往往無法在一個階段內完全做完,常在分析與設計階段仍有需求分析工作之進行。 系統分析師之專業知識與經驗,對需求分析之成效有密切之影響。