第七章 結構化企業流程塑模個案
內容大綱 學習目標 第一節 導論 第二節 需求分析 第三節 系統分析與設計 企業流程塑模 第四節 處理規格描述與程式範例 第三節 系統分析與設計 企業流程塑模 第四節 處理規格描述與程式範例 第五節 資料流程圖轉結構圖或HIPO圖 第六節 結論
學習目標 詳讀本章,你至少能瞭解: 如何實作需求分析之流程圖、處理描述、藍圖與資料詞彙等。 如何以資料流程圖實作企業流程塑模,並進行資料流程圖之分解。 如何將資料流程圖轉成HIPO圖及進行處理規格描述。
導論 本章以夢幻公司之管理資訊系統(以下簡稱夢幻系統)為例,首先應用第3章之需求表達工具描述夢幻系統之需求,再應用第5章之流程塑模的概念與工具,將夢幻系統需求分析之結果進行結構化系統分析與設計。 夢幻公司是一家經營汽機車零件買賣之貿易公司,該公司亦擁有工廠,自行生產部分之零件。本系統之範圍包括銷售、生產管理與採購等三部分,其中銷售包括訂單、送貨、銷退、請款與登帳等作業;生產管理包括領料、退料、繳庫與盤點等作業,而採購包括訂貨、進貨與退貨等作業。
導論(續) 在分析與設計過程中,因有許多部分之步驟與原則相似,為避免重複故本章僅表達其中之一部分,例如需求分析僅表達銷售管理,但整個分析與設計過程及資料之展示仍是連貫的。
需求分析 根據對使用者之需求訪談結果,得知夢幻公司之銷售管理作業如下: 業務部負責接訂貨單,接到客戶訂貨通知時,須先進行訂貨資料登錄,並作成品庫存檢核,若成品庫存充足,則直接進行送貨處理;若成品庫存不足,則送生產需求通知給生產部,以便進行產品之生產計畫。 業務部亦負責送貨與進行送貨資料處理,如計算金額、送成品等,並產出送貨單給客戶確認。
需求分析(續) 業務部收到客戶欲退回已銷售之成品通知(銷退單),須記錄客戶編號及銷退之成品數量、單價,並計算銷退單銷退總金額等。 業務部向客戶請款 每月請款一次,請款日期為每月25日。 針對各客戶之本期送貨資料,計算出本期應收帳款。 合計上期未收款項及本期應收帳款列印請款單,請客戶付款。 業務部收到客戶之付款單,登錄客戶編號及付款資料。
需求分析(續1) 流程圖 1 從上述之描述及訪談得知,前兩項作業可連續發生,也就是客戶訂貨,若有足夠庫存,則可馬上送貨,其餘三項作業均各自獨立。 在前兩項作業中,有三個外部實體參與:客戶、業務部與生產部。此外,前兩項作業中有訂貨與送貨兩個基本作業處理、一個庫存檢核控制及產出三張基本表單: 訂單、送貨單與生產需求。 前兩項作業之流程圖可表示如圖7-1。
圖7-1 訂單送貨流程圖 訂 單 送貨單 生產需求 訂單處理 送貨處理 成品庫存是 否足夠? 客 戶 業務部 生產部 是 否
需求分析(續2) 處理描述 1-1 以上述夢幻公司訂單送貨流程圖上之訂單處理為例(參考圖7-1),其資料來源為客戶之訂單,且產出為生產部之生產需求或通知出貨。 訂單處理之處理描述名稱可命名為訂單處理描述,該處理描述與庫存判斷之執行程序與規則,可從上述需求擷取之結果摘述如表7-1。
表7-1 訂單處理描述 處理名稱 訂單處理與庫存判斷 執行程序與規則 1.業務部收到客戶訂單之後,須做客戶資料登 錄與檢核。 1.業務部收到客戶訂單之後,須做客戶資料登 錄與檢核。 2.業務部檢查訂貨之成品庫存,若成品庫存充 足,則進行送貨處理;若成品庫存不足,則 通知生產部進行生產計畫。 資料輸入/來源 訂單/客戶 資料輸出/目的地 送貨訊息/業務部或生產需求/生產部 限制與備註
需求分析(續3) 藍圖 1-1 以上述夢幻公司之訂單處理為例(參考圖7-1),其訂單之藍圖可以該公司目前之訂單報表為基礎,再進一步對訂單上之每一欄位,以由左至右與由上而下之原則編號,例如客戶編號為A、地址為B,依序至總金額為O等,詳如表7-2。
表7-2 訂單藍圖 夢幻企業股份有限公司 訂 單 客戶: A 地址: B 電話: C 編號: D 日期: E 成品編號 品名 顏色 規格 夢幻企業股份有限公司 訂 單 客戶: A 地址: B 電話: C 編號: D 日期: E 成品編號 品名 顏色 規格 尺寸 數量 單位 單價 金額 F G H I J K L M N 10000006 太空梭模型 綠 25kg S 3 個 417.60 1,252.80 10000005 鐵釘 紅 1 支 200.00 200.00 10000002 坐墊 50kg 粒 6,000.00 6,000.00 10000003 方向盤 黑 2 600.00 1,200.00 10000004 鐵蛋 100kg 客戶簽章 : 總金額: 9,052 O 註:套色區域表示須套印表單之部分。
需求分析(續4) 資料詞彙 1-1 如上所述,一張藍圖就應有一份資料詞彙,且藍圖中之每一欄位在資料詞彙中應有一記錄描述之,因此以夢幻公司之訂單藍圖為例(參考表7-2),且採用第3章之資料詞彙樣板(參考表 3-3),再經由訪談整理,其訂單藍圖之資料詞彙可整理如表7-3。 流程圖2、3與4之分析步驟與原則均與流程圖1相同,因此不再贅述,結果請參考課本內容。
表7-3 訂單資料詞彙 編號 欄位名稱 長度/型態 鍵 規則/格式/範圍/公式 範例 A 客戶名稱 20C 王大明 B 地址 40C 高雄市鼓山區蓮海路70號 C 電話 10C 07-5252000 D 8N 年+月+日+流水號 YYMMDD99 98090101 E 送貨日期 8D YYYY年MM月DD日 1999年9月1日 F 成品編號 8C 99999999 10000003 G 品名 方向盤 H 顏色 5C 黑 I 規格 14C 50kg J 尺寸 4C M K 數量 10N 2 L 單位 個 單價 99,999,999.99 600.00 N 金額 數量×單價; 9,999,999,999 1,200 O 總計 金額總和; 999,999,999 9,052
系統分析與設計— 企業流程塑模 完成了需求分析之工作,接下來是如何從分析結果進行企業流程塑模,以分析與設計該系統之各子系統。 本章以資料流程圖為工具,並採用第5章所述由中間往外策略,進行夢幻公司之企業流程塑模。進行步驟如下: 步驟一:找出初步資料流程圖元素 找出外部實體 找出處理 找出資料儲存 找出資料流
系統分析與設計— 企業流程塑模(續) 步驟二:向上整合以建立資料流程圖 本個案之向上整合依管理功能之原則,將步驟一之處理分成五群:(1.0)銷售管理、(2.0)生產管理、(3.0)採購管理、(4.0)基礎項目管理與(5.0)綜合報表管理等。 訂貨、送貨、銷退、請款與登帳等處理可整合成一企業程序,以完成該公司銷售管理之功能,其餘詳如表7-11。
表7-11 處理分群 1.0 銷售管理 1.1 訂單處理 1.2 送貨處理 1.3 銷退處理 1.4 請款處理 1.5 登帳處理 1.0 銷售管理 1.1 訂單處理 1.2 送貨處理 1.3 銷退處理 1.4 請款處理 1.5 登帳處理 2.0 生產管理 2.1 領料處理 2.2 退料處理 2.3 繳庫處理 2.4 盤點處理 3.0 採購管理 3.1 訂 貨 3.2 進 貨 3.3 退 貨 4.0 基礎項目管理 4.1 基本資料處理 5.0 綜合報表處理 5.1 主管報表處理
表7-12 銷售管理之處理、資料儲存與資料流 第一階 DFD(銷售管理) 訂單 資料 送貨單 資料 銷退單 資料 請款單 資料 付款單 資料 客戶基 本資料 成品 資料 稅率 資料 客戶 業務部 訂單處理 ↓↑ ↓ 送貨處理 ↑ 銷退處理 請款處理 登帳處理 註:↓表示由資料檔(實體)至系統;↑表示由系統至資料檔(實體);↓↑表 示系統與資料檔(實體)間雙向交流。
圖7-5 銷售管理子系統第一階DFD 1.1 下訂單 訂單處理 客 戶 1.2 送貨處理 業務部 1.3 付 款 請款單 銷退處理 1.4 登帳處理 1.5 銷退處理 1.3 請款處理 1.4 D8 成品資料 D2 訂單資料 D1 客戶基本資料 D5 稅率資料 D3 送貨單資料 D4 銷退單資料 D6 請款單資料 D7 付款單資料 客 戶 業務部 下訂單 請款單 付 款
表7-13 第一階至第零階的處理與資料流之整合 整合 處理 訂單 資料 送貨單 資料 銷退單 資料 請款單 資料 付款單 資料 客戶基 本資料 成品 資料 稅率 資料 客戶 業務部 訂單處理 ↓↑ ↓ 送貨處理 ↑ 銷退處理 請款處理 登帳處理 整合 處理 訂單 資料 送貨單 資料 銷退單 資料 請款單 資料 付款單 資料 客戶基 本資料 成品 資料 稅率 資料 客戶 業務部 銷售管理 ↓↑ ↓
圖7-6 銷售管理之第零階DFD 第零階 DFD 部分範例 客 戶 1.0 銷售管理 業 務 部 D5 稅率資料 D1 客戶基本資料 D2 客 戶 D5 稅率資料 D1 客戶基本資料 D2 訂單資料 D3 送貨單資料 D4 銷退單資料 D6 請款單資料 D7 付款單資料 D8 成品資料 業 務 部 銷售管理 1.0
圖7-7夢幻系統第零階DFD 完整之第零階範例 客 戶 生 產 部 1.0 銷售管理 倉 庫 業 務 部 2.0 生產管理 廠 商 3.0 請款單資料 客 戶 D7 付款單資料 D8 成品資料 D1 客戶基本資料 D2 訂單資料 D3 送貨單資料 D4 銷退單資料 D5 稅率資料 業 務 部 採購管理 3.0 廠 商 業務部 D10 廠商基本資料 D11 訂貨單資料 D13 退貨單資料 基礎項目 管理 4.0 報表管理 5.0 主 管 D9 原物料資料 D14 生產計畫資料 D15 領料單資料 D16 退料單資料 生產管理 2.0 生 產 部 D17 繳庫單資料 D18 盤點單資料 倉 庫 綜合 原料物資料 D12 進貨單資料
系統分析與設計— 企業流程塑模(續1) 步驟三:向下分解以建立低層資料流程圖 向下分解之原則可依內聚力或程式碼之多寡(例如不要超過200行)來判定。 以銷售管理子系統之送貨處理為例,送貨處理為步驟一產生之處理,從巨觀的角度來看,送貨處理僅做一件訂單相關之事情,已符合所謂的功能內聚力,可不必再分解,但若該處理中還包括新增、修改、刪除、查詢與列印等操作處理,則建議將送貨處理再依操作向下分解至第二階。
圖7-8 銷售管理子系統第二階DFD(1.2送貨處理) 訂單資料 D1 客戶基本資料 D5 稅率資料 D3 送貨單資料 業 務 部 客 戶 新增送貨單 1.2.1 修改送貨單 1.2.2 刪除送貨單 1.2.3 列印送貨單 1.2.5 查詢送貨單 1.2.4 D8 成品資料
圖7-9 銷售管理子系統第三階DFD(1.2.1新增送貨單)
處理規格描述與程式 範例 本節將介紹如何以 PDL 來描述處理規格,並以 Delphi 程式語言完成其中一子處理之程式編輯,以說明 PDL 與程式碼間之關係及寫法。
處理規格描述與程式範例(續) 處理規格描述 以送貨金額處理為例
處理規格描述與程式範例(續1) 處理規格描述與程式 PDL 是程式碼的註解 Procedure 1.2.1.4 送貨金額處理 Begin {11. 計算送貨明細加總金額 } ComputeSummary; {7. 計算稅前總金額 ComputeTotal; {9. 設定稅金額 SetTaxMoney; {8. 計算稅後金額 ComputeMoney; End;
處理規格描述與程式範例(續2)
資料流程圖轉結構圖或HIPO圖 圖7-10a 夢幻系統 1.0 銷 售 管 理 2.0 生 產 3.0 採 購 4.0 基 礎 項 目 5.0 綜 合 報 表 銷售相關資料 生產相關資料 採購相關資料 基礎項目資料 處理結果 處理結束 綜合報表相關資料
資料流程圖轉結構圖或HIPO圖(續) 圖7-10b 1.0 銷售管理 1.1 訂 單 處 理 1.2 送 貨 1.3 銷 退 1.4 請 款 1.5 登 帳 1 2 3 4 5 處理結果 處理結束
資料流程圖轉結構圖或HIPO圖(續1) 圖7-10c 1.2 送貨處理 1.2.1 新 增 送 貨 單 1.2.2 修 改 1.2.3 刪 除 1.2.4 資 料 查 詢 1.2.5 列 印 2 新增過的送貨單資料 新增完成 修改過的送貨單資料 修改完成 刪除過的送貨單資料 刪除完成 查詢出的送貨單資料 列印完成 列印過的送貨單資料 查詢完成 圖7-10c
資料流程圖轉結構圖或HIPO圖(續2) 圖7-10d 1.2.1 新增送貨單 稅 率 處 理 送 貨 單 成 品 明 細 金 額 資 料 偵 1.2.1.2 稅 率 處 理 1.2.1.3 送 貨 單 成 品 明 細 1.2.1.4 金 額 1.2.1.5 資 料 偵 錯 1.2.1.6 儲 存 1.2.1.1 基 本 3 2 1 4 5 6 處理結果 處理結束
結論 需求分析之結果是SA&D的主要輸入,因此需求分析之表達是否完整,對SA&D之成敗有關鍵性影響。 本章以夢幻系統之範例,從需求分析至流程塑模,以幫助讀者瞭解整個方法論之應用。