流程分析與模型建立(塑模 )

55
流流流流流流流流流 流流 流流流流流流流流流 流流 ) ) Process Analysis and Process Analysis and Model Development Model Development

description

流程分析與模型建立(塑模 ). Process Analysis and Model Development. 大綱. 基本概念 結構化分析與流程塑模 流程塑模的類型 資料流程圖 (Data Flow Diagram, DFD) DFD 的繪圖與分解 (Decomposing) 原則 差異分析 (gap analysis) 與流程再造 (BPR) 應用 DFD 實例 以事件 (Event) 來協助建立 DFD 流程塑模與資料塑模之整合 邏輯塑模之意義與方法( ch7). 流程分析基本概念. 系統分析階段兩個重要工作: 需求訂定 需求建構 - PowerPoint PPT Presentation

Transcript of 流程分析與模型建立(塑模 )

Page 1: 流程分析與模型建立(塑模 )

流程分析與模型建立(塑模流程分析與模型建立(塑模 ))

Process Analysis and Model Process Analysis and Model DevelopmentDevelopment

Page 2: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 22

大綱大綱•基本概念

– 結構化分析與流程塑模– 流程塑模的類型

•資料流程圖 (Data Flow Diagram, DFD)– DFD的繪圖與分解 (Decomposing) 原則 – 差異分析 (gap analysis) 與流程再造 (BPR)應用– DFD實例– 以事件 (Event)來協助建立 DFD

•流程塑模與資料塑模之整合• 邏輯塑模之意義與方法( ch7)

Page 3: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 33

• 系統分析階段兩個重要工作:– 需求訂定– 需求建構

• 瞭解流程、邏輯、與資料模型,才可提供完整的資訊系統規格。

• 結構化分析設計主要考量結構化分析設計主要考量流程與資料方面之需求流程與資料方面之需求

流程分析基本概念流程分析基本概念

Page 4: 流程分析與模型建立(塑模 )

4

是任何一個組織活動的基礎,在資訊系統開發過程係扮演一個相當重要的角色。

對於進入系統之資料流或狀況,進行處理的一系列過程 每一個流程有輸入與輸出,輸出的結果,經由訊息的回饋與目標值互相比較的差異值,進行調整與控制的活動。

流程( Process ,又常譯為程序、過程或處理)

流程 ( 系統 )流程 ( 系統 )

輸入 輸出

回饋與控制迴圈

Page 5: 流程分析與模型建立(塑模 )

開設系所主任

學生完成請假流程

達 (1)10 時 (2)25 時 (3)46 時者名冊

課外活動組

學務處生輔組收件登錄

關懷約談

導師工作紀錄表

導師 達 25 時曠課通知 ( 雙掛號 )

逾 46 時曠課退學 ( 公告、除籍 )

教務處曠課學生之系所主任

(1) 教學參考(2) 課輔參考

學務長 ( 逾 25 時送請專業輔導 )

任課教師填寫曠課通知單

生輔組建檔

( 請假、曠課時數互相抵銷 )

Page 6: 流程分析與模型建立(塑模 )

流程塑模• 針對系統的流程、邏輯、政策與步驟等以系統化、文件化、

圖形化的方式進行規範的活動。• 主要工作項目

(1)了解作業彼此間的關係並且簡化作業流程。(2)將作業流程予以公開化、合理化與透明化。(3)建立一個標準作業流程。(4)表示部門與作業的關係。(5)實施流程自動化。

• 流程塑模工具– 作業流程圖– 事件列– 資料流程圖– IDEF0– 事件驅動流程圖( Event-driven Process Chain, EPC)

Page 7: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 77

邏輯邏輯 vs.vs. 實體與現況實體與現況 vs.vs. 未來模型未來模型

Logical model 邏輯模型– 偏向概念、業務面

現況 (As-is)

未來系統 (To-be)

Physical model 實體模型 – 偏向技術及建置面

現況 (As-is)

未來系統 (To-be)

Model – 「一圖勝千語」,模型就是以圖形來呈現事實的方法

Page 8: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 88

傳統流程塑模之產出傳統流程塑模之產出• 環境圖 (context DFD)

– 呈現系統範圍。• 現有實體系統的資料流程圖

– 供分析師瞭解現有系統。• 處理作業的標示包含了人物的姓名、職稱或是可以處理作業的電腦系

統名稱。• 資料流與資料儲存可用實際的儲存媒介名稱來標示它

• 現有邏輯系統的資料流程圖– 與資訊技術無關。呈現新系統的資料流程、結構和功能需求。

• 盡量移除現有實體的觀點。• 將現有系統回歸到資料與資料處理的本質上。

• 新的邏輯系統的資料流程圖– 較現有邏輯增加額外功能。 – 移除沒有效率的資訊流與不需使用的功能。

• 新實體– 表現新系統的實體建置狀況。– 可反映出系統分析師對於系統功能是自動化或是人工運作的最終決定。

• 每一個資料流程圖元件的完整說明

Page 9: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 99

資料流程圖資料流程圖 (data flow diagram, DFD)(data flow diagram, DFD)

• 描述一個系統的資料流、作業與處理的工具。以程序為導向 (Process-oriented) 的模式,經常使用在管理資訊系統的流程分析過程,也是一種企業流程再造的流程分析工具。

• 適用於描述純邏輯資訊流程,不使用符號呈現實體電腦設備,但也可呈現實體資訊系統。

• 優點:將大型資訊系統經由塑模的過程,使塑模作業簡單化、標準化、圖型化與自動化,

• 缺點:初學者學習的時間較長、不能用來描述流程時間的先後順序,細部流程的流向以及資料的儲存結構等。

Page 10: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 1010

DFDDFD的符號與意義的符號與意義 符 號名 稱 DeMarco &

Yourdon Gane & Sarson 意 義

處理 / 作業 / 流程

系統中負責資料處理的部分

資 料 流指資料流動的路徑

資料儲存存放資料的地方

外部實體流進系統的資料的來源或經系統處理後的資料的去處

Page 11: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 1111

DFDDFD 符號與定義符號與定義 (cont’d)(cont’d)• 處理作業:系統內部資料的處理。可以是人工作業或電腦

化作業,例如薪資計算、訂單審核、客戶抱怨處理等等。處理的圖形符號內要有一個編號與名稱。命名應該要以能夠清楚的描述”做什麼事情”為原則。

• 資料流:描述資料的移動,可以是一群資料的集合。如實際作業上的表單 ( 訂單 ) 、報表 ( 生產日報表 ) 、查詢回覆 ( 對於客戶查詢事項的回覆 ) 等。要以名詞來命名

• 資料儲存:系統內靜止的資料。代表各種可能的儲存資料的實體。可能是檔案夾 ( 客戶資料 ) 、簿本 ( 帳冊 ) 、表單 ( 會計傳票 ) 、報表 ( 原料耗用表 ) 或電子儲存媒體( 磁片 ) 等。須以名詞命名。

• 外部實體:指流進系統的資料來源 (resource)或系統處理後的資料去處 (sink)。可能是企業內員工或其他單位或系統也可能是企業外的個人或組織 ( 供應商 ) 。須以名詞命名。

Page 12: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 1212

資料流程繪圖規則

Page 13: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 1313

資料流程繪圖規則資料流程繪圖規則• 每一處理作業皆有唯一的名稱,不可重複。• 處理作業的目的是將輸入轉換成輸出,因此,資料流輸入與輸出不宜同名。

• 在資料流程圖中,同樣的資料流名稱是可以重複出現。

• 資料流應該避免發生交叉的現象,為了達到這個目的,資料儲存與外部實體是可以重複出現的。

Page 14: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 1414

DFDDFD 繪製準則繪製準則• 處理不可有輸出而無輸入或有輸入而無輸出。• 注意邏輯問題

Page 15: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 1515

DFDDFD 繪製準則繪製準則 (( 續續 ))• 資料流不可在資料儲存、實體本身或兩者間直接移

動,必須經由處理過程移動。

Page 16: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 1616

– 資料流僅以單方向之箭頭符號表示,因兩事件發生之時間不同且資料亦不同。

– 資料流分叉表示完全相同之資料從同一地點流出,並流入不同的地方。

DFDDFD 繪製準則繪製準則 (( 續續 ))

Page 17: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 1717

– 資料流不可由一處理流出再直接流入該處理。

– 兩個或兩個以上之資料流可出現在單一箭頭上,只要這些資料流結合成一包裝並一起移動。

DFDDFD 繪製準則繪製準則 (( 續續 ))

Page 18: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 1818

• 資料流至一資料儲存意謂資料之更新,即刪除或修改;而流出意謂著讀取或使用。

新增/更新/刪除/讀取

DFDDFD 繪製準則繪製準則 (( 續續 ))

Page 19: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 1919

環境圖環境圖 (Context Diagram)─(Context Diagram)─漢堡點餐系統

Page 20: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 2020

第零階第零階資料流程圖流程圖

Page 21: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 2121

處理作業 1.0 的一階 DFD

Page 22: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 2222

處理作業 4.0 的一階及二階 DFD

Page 23: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 2323

基礎基礎 DFDs (primitive DFDs)DFDs (primitive DFDs)

• 分解後的最低階流程圖。• 需判斷何時停止分解資料流程圖。判斷規則:

– 將每個處理作業拆解成單一的決定、計算或是可對資料庫進行操作。

– 當不需要看到更詳細的處理作業。– 確認系統的所有最低階選單功能都已有獨立的處理作業。– 當每個資料儲存代表單一的資料實體時。– 已瞭解不同資料下的資料處理方式,已不需要更進一步地拆解資料流。

– 確認已經將每一個商業表格、交易、電腦畫面呈現與報表都用一個單一資料流來表示時。

Page 24: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 2424

發展資料流程圖歩驟發展資料流程圖歩驟• 決定環境圖的系統包含哪些作業流程,發展出第零階 (level 0) 流程圖,代表了系統內最高階的主要處理作業。– 功能分解 (Top-down) :透過不斷分解系統描述,使系

統描述更加完善的反覆過程。可產生相互關聯的階層圖,一個處理作業可以用其他的圖更詳細的說明。

• 分解的動作進行到沒有任何子處理作業可以再細分為止。最低階者稱為基本流程圖 (primitive DFD) 。

• 第一階流程圖是由第零階流程圖分解而來。– 考量系統之事件 (Event) ,分析繪製 DFD 再整合而成

(Bottom-up)

Page 25: 流程分析與模型建立(塑模 )

功能分解功能分解 (Functional Decomposition)(Functional Decomposition) 方方式式

系統分析設計─流程塑模系統分析設計─流程塑模 2525

處理工單

建立工單 更改工單 審核工單 刪除工單 釋除工單

目標導向功能樹

建立物件

建立工單 建立訂單 建立製程 建立主檔 建立薪資

執行導向功能樹

處理訂單

檢查顧客訂單

輸入顧客資料 審核信用 檢查庫存 通知交期

流程導向功能樹

Page 26: 流程分析與模型建立(塑模 )

2626

EventsEvents 事件事件

•事件是定義流程並回應事件的一系列程序,以事件的發生型態而言,有下列三種類型 :–外部外部 External 事件 事件 由外部代理(實體)來啟由外部代理(實體)來啟動。動。

–時間時間 Temporal 事件 事件 以時間或是一些偶發事情以時間或是一些偶發事情來觸發流程。來觸發流程。

–狀態狀態 State 事件 事件 根據系統狀態或條件的轉變根據系統狀態或條件的轉變來觸發流程。來觸發流程。

Page 27: 流程分析與模型建立(塑模 )

事件列事件列 (( 一例) 一例) 觸發因素(當… .) 外部實體 事件 回應

當學生有請假需求 學生 提出請假申請 授理申請並檢查資料是否完整

當某社團要申辦活動

社團會會 提出活動申請 授理申請並檢查資料是否完整

當餐位已滿 顯示不再接當天訂位

訂餐時間之前 24小時

通知訂餐者準時蒞臨

2727

Page 28: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 2828

資料流程圖繪圖指引資料流程圖繪圖指引• 完整性 (completeness)

– 必須包含系統所需所有元件。– 必須在專案字典與 CASE 儲存庫完整描述每一元件。

• 一致性 (consistency)– 在某一階層的資訊,仍會被包含在其他階層之中。

• 反覆性 (iterative development)– 持續反覆繪製與調整流程圖,才會逐步地接近所要建構的系統。

• 時效性 (timing)– 無法有效呈現時效性資訊。– 最好將系統視為沒有時間的起始點,也永遠不會結束。

Page 29: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 2929

DFDDFD的分解及編碼原則的分解及編碼原則

• 編號 (Numbering) 0   Level-0  

            

1.0 2.0 3.0 Level-1

1.1 1.2 1.3 2.1 2.2 2.3 3.1 3.2 3.3 Level-2

Page 30: 流程分析與模型建立(塑模 )

3030

訂單處理DF1 DF2

DF1 DF2

更新

新增

刪除

1.1

1.2 1.3

1.0< 上層DFD>

< 下層DFD>

1.0

資料流程圖之平衡原則

Page 31: 流程分析與模型建立(塑模 )

企業組織的流程上常存在問題

• 作業流程重複• 流程的閒置與浪費• 流程的處理缺乏彈性• 流程的結構過於僵化

Page 32: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 3232

差異分析差異分析 (gap analysis)(gap analysis)

• 分析兩組或兩組以上的 DFDs 間差異或者是分析單一組 DFDs內差異之過程。

• 仔細研讀 DFDs 將有助於瞭解作業過程是否重複,並能發現組織中沒有效率的作業。

Page 33: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 3333

使用使用 DFDDFD 於企業流程再造於企業流程再造 (BPR)(BPR)再造前的主要工作流程

Page 34: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 3434

再造後的主要工作流程使用使用 DFDDFD 於企業流程再造於企業流程再造 (BPR)(BPR)

Page 35: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 3535

DFDDFD 實例─存貨控制系統實例─存貨控制系統

Page 36: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 3636

DFDDFD 實例─存貨控制系統實例─存貨控制系統 (As-is)(As-is)

Page 37: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 3737

DFDDFD 實例─存貨控制系統實例─存貨控制系統

Page 38: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 3838

DFDDFD 實例─存貨控制系統實例─存貨控制系統

Page 39: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 3939

DFDDFD 實例─購物網站系統實例─購物網站系統

Page 40: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 4040

實例:行銷資訊系統的實例:行銷資訊系統的環境概圖環境概圖

0行銷管理資訊系統

0行銷管理資訊系統

客 戶客 戶

客戶抱怨處理小組客戶抱怨處理小組

庫存管理 IS庫存管理 IS

會計單位會計單位

業務經理業務經理

Page 41: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 4141

實例:行銷資訊系統的實例:行銷資訊系統的 DFD (level 0)DFD (level 0)

   客 戶   訂 單   產 品  

  客戶抱怨 業績獎金 業務員   出貨單

1.0客戶管理

1.0客戶管理

客 戶客 戶

4.0客戶抱怨管理

4.0客戶抱怨管理

客戶抱怨處理小組客戶抱怨處理小組

3.0訂單管理

3.0訂單管理

6.0業績計算

6.0業績計算

2.0售價調整

2.0售價調整

5.0銷售管理

5.0銷售管理 庫存管理 IS庫存管理 IS

客 戶客 戶

會計單位會計單位

業務經理業務經理

Page 42: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 4242

實例:行銷資訊系統─客戶報抱怨管理實例:行銷資訊系統─客戶報抱怨管理 DFD DFD (level 1)(level 1)

          客戶    客戶抱怨

1.1客戶基

本資料管

1.1客戶基

本資料管

1.2授信

 管理

1.2授信

 管理4.1客戶抱怨建立

4.1客戶抱怨建立

4.2解決方案建立

4.2解決方案建立

Page 43: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 4343

資料-處理資料-處理 (( 流程)對照矩陣流程)對照矩陣 (Data to Process CRUD Matrix)(Data to Process CRUD Matrix)

Page 44: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 4444

邏輯塑模邏輯塑模• 有時候,資料流程圖無法解釋某個流程的意義以

及該流程是如何完成的。• 邏輯塑模牽涉到資料流程圖的某些流程之內部結

構以及其功能性,或者指出此流程發生的時機。• 呈現方式(產出與成果)

– 結構化英文– 決策表呈現方式– 循序圖– 活動圖

Page 45: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 4545

結構化英語結構化英語

• 用來描述資訊系統流程邏輯的一種特殊的英語格式。

• 沒有統一的標準格式。• 通常由動詞和名詞片語組成,沒有副詞或形容詞。

Page 46: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 4646

漢堡存貨控制系統的資料流程圖

Page 47: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 4747

結構化英語實例結構化英語實例

Page 48: 流程分析與模型建立(塑模 )

結構化英文的執行結構之基本類型主要類型 基本結構

命令式執行步驟( Sequence of Step )

[Step 1][Step 2] …..[Step N]

單一狀況之執行步驟( Simple Condition Steps )

If [truth condition] then [sequence of steps or other conditional steps] else [sequence of steps or other conditional stepsEnd If

複雜狀況之執行步驟( Complex Condition Steps )

Do the following based on [condition]: Case 1: If [condition]=[value] then [sequence of steps or other conditional steps] Case 2: If [condition]=[value] then [sequence of steps or other conditional steps]……………………………… Case N: If [condition]=[value] then [sequence of steps or other conditional steps]End Case

Page 49: 流程分析與模型建立(塑模 )

4949

結構化英文的執行結構之基本類型多重狀況之執行步驟(Multiple Condition Steps )

一對多反覆之執行步驟( One to Many Iteration Steps )

Repeat the following until [true condition]:[sequence of steps or other conditional steps] End Repeat

零對多反覆之執行步驟( Zero to Many Iteration Steps )

Do While [true condition]:[sequence of steps or other conditional steps]End Do 或是For [true condition]:[sequence of steps or other conditional steps]End For

決策表 規則 1 規則 2 規則 3 規則4

[ 狀況 1] value value value value

[ 狀況 2] value value value value

[ 狀況 3] value value value value

[sequence of steps or other conditional steps]

X

[sequence of steps or other conditional steps]

X X

[sequence of steps or other conditional steps]

X

Page 50: 流程分析與模型建立(塑模 )

5050

IF Part # of input records exist in item master

IF issue quantity is less then stock quantity

or equal to stock quantity then subtract issue quantity from stock quantity ELSE display “Stock quantity is less then issue quantity”ELSEDisplay “part # is not found in item master”.

以結構化英文表示庫存檔更新的實例

Page 51: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 5151

決策表決策表• 牽涉複雜決策邏輯,使用結構化英文可能變得不易理解。此時使用決策表效果較佳

• 決策表表現決策邏輯的矩陣,列出所有可能的決策條件與行動結果。

• 決策表包含三部份:– 條件欄 (condition stubs) :列出與決策相關的情況– 動作欄 (Action stubs) :列出給定情況後的動作– 規則 (Rules) :在給定情況後,要採取什麼樣的動作

• 無差異的條件:在決策表中,一個條件的值不影響多個規則採取的動作。

Page 52: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 5252

建構決策表步驟建構決策表步驟• 決定條件以及其值的名稱 • 為所有可能發生的動作命名 • 列出所有的規則 • 定義每一個規則的動作 • 簡化決策表

Page 53: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 5353

使用決策表進行邏輯塑模使用決策表進行邏輯塑模

Page 54: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 5454

漢堡存貨控制決策表漢堡存貨控制決策表

Page 55: 流程分析與模型建立(塑模 )

系統分析設計─流程塑模系統分析設計─流程塑模 5555

結構化英語結構化英語 vs.vs. 決策表決策表