Download presentation
Presentation is loading. Please wait.
1
第 五 章 流程塑模(DFD) 課程名稱:系統分析與設計 各位同學大家好,我是李春雄老師,本學期所開設的課程名稱為「資料結構」,
今天所要為各位介紹的是第一章「資料結構導論」
2
本章學習目標 1.讓讀者了解資料流程圖定義、基本符號及繪製 功能分解之方法。 2.讓讀者了解資料流程圖之繪製原則及實務的專 題製作。 開始:
本章學習目標 有二項:
3
本章內容 5-1 資料流程圖 5-2 資料流程圖的基本符號 5-3 資料流程圖的功能分解 5-4 系統環境圖(概圖)的繪製
5-5 主要功能圖 5-6 向下階層化 5-7 向上階層化 5-8 資料流程圖之繪製原則 5-9 建構資料流程圖繪製原則 5-10 實務專題製作 1-1 認識資料與資訊的關係: 其中,「資料」轉換成「資訊」必須要經過一連串處理過程,而這一連串的處理過程就是透過「程式」來處理。 1-2 何謂資料結構? 「資料結構」(Data Structures)主要是探討如何將資料更有組織地存放到電腦記憶體中,以提昇程式之執行效率的一 門學問。 1-3 何謂演算法?演算法就是「解決問題的方法」 1-4 程式設計概念: 步驟1. 分析所要解決的問題 步驟2. 設計解題的步驟 步驟3. 編寫程式 步驟4. 上機測試、偵測錯誤 步驟5. 編寫程 式說明書 1-5 結構化程式設計 利用「由上而下」的技巧,將程式分解成許多個獨立功能的模組。並且每一個模組都是由三種結構所組成。分別為循序結構、選擇結構及重複結構。 1-6 演算法的效率評估 指用來計算某些演算法所撰寫的程式,在經過編譯之後,實際執行所需要的時間。
4
5-1 資料流程圖 【定義】 資料流程圖(Data Flow Diagram , DFD)它是一種圖形化工具,專門用來表達「資料」在「資訊系統」內的移轉過程,其中包括外部實體透過處理來匯出資料到資料儲存檔等程序。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
5
5-1 資料流程圖(續…) 【功用】 1.提供或接收系統資料的外界實體 (外界實體) 。
2.系統與外界實體之間的資料流動過程 (資料流) 。 3.系統如何將資料進行轉換處理 (處理功能) 。 4.系統如何把轉換後的結果儲存到資料檔中 (資料儲存檔) 。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
6
5-2 資料流程圖的基本符號 資料流程圖的基本符號的表示方式,各家學說並非一致,較常見的表示有DeMarco & Yourdon 與Gane & Sarson兩種。如表5-1所示。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
7
5-2.1 外界實體(External Entity )
【定義】是指用來識別外在的個體,可能是資料流的來源與去處。 【命名】常使用「名詞」來命名。 【例如】學生、課程、老師、人員、組織及部門。 【表示圖形】以「矩形」表示。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
8
5-2.2. 處理(Process) 【定義】是指系統所提供的功能,又稱為功能或轉換。 【功能】負責將輸入資料流轉換成輸出資料流。
【分類】人工處理與電腦化處理。 【命名】使用「編號與動詞」或「編號與動詞+(子)系統」 【例如】成績處理系統、選課系統及薪資計算系統等。 【表示圖形】以「圓圈」或「圓滑邊長方形」表示。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
9
5-2.3.資料流(Data Flow) 【定義】是指用來描述資料如何在系統中流動。 【主要來源】外部實體、其他處理或檔案。
【命名】在箭頭上方或下方允許存在名稱。以「名詞」命名。 【分類】輸入資料流與輸出資料流 其中: 「輸入資料流」可以是表單,例如:原始成績、訂單資料、客戶資料等。 「輸出資料流」可以是報表或查詢結果。例如:成績單、週報表或績效表。 【表示圖形】以「箭頭」表示。帶有箭頭的一端,表示資料流動方向。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
10
5-2.4. 資料儲存檔(Data Files) 【定義】是指用來記錄系統處理時所需的輸入及輸出的資料。 【型態】檔案或資料庫。
【命名】平行線內必須存在名稱。以「名詞」命名。 【例如】課程檔、學生檔及選課檔。 【表示圖形】以「平行線」或「便利貼標籤」表示 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
11
5-3 資料流程圖的功能分解 基本上,資料流程圖可分為「高層次圖」與「低層次圖」兩種。其中,「高層次圖」又可區分為兩種:
5-3 資料流程圖的功能分解 基本上,資料流程圖可分為「高層次圖」與「低層次圖」兩種。其中,「高層次圖」又可區分為兩種: 1.「系統環境圖」:第零階(Level-0 Diagram),又稱為「概圖」。 2.「主要功能圖」:第1階(Level-1 Diagram)。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
12
功能分解【說明】 從「系統環境圖」到「主要功能圖」,甚至繪製到「低層次圖」時,其最主要觀念就是「分解」(Decomposing),也就是將一個較高層次的複雜圖,必須要進行細部分解的過程,直到每一個子功能都可以清楚的表示出來。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
13
【建構與分解步驟】 1.先建構「系統環境圖」 2.再由「系統環境圖」經過向下階層化,分解為「主要功能圖」。
3.最後,再針對「主要功能圖」中的每一個「處理」,進行向下階層化,來產生「低層次」資料流程圖。相同的步驟,重複進行之,直到所有「處理」無法再向下階層化為止。 【註】「向下階層化」,在下一單元會詳細介紹。 【註】分解主要是針對「處理程序」,因此又稱為「功能分解」。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
14
5-4 系統環境圖(概圖)的繪製 【定義】描述系統與外部實體之間的資料流動的關係。
5-4 系統環境圖(概圖)的繪製 【定義】描述系統與外部實體之間的資料流動的關係。 【別名】它又稱為「概圖」或第零階資料流程圖(Level-0 DFD) 【命名】以「系統名稱」來命名之,並且處理編號設為「0」。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
15
【概圖繪製的步驟】 以學生「成績處理系統」為例。 1.先繪製一個「圓圈」或「圓滑邊長方形」(代表轉換處理符號),
並在圓圈中填入系統名稱。將該處理編號設為「0」 2.繪製提供或接收系統資料的外界實體。 3.繪製系統與外界實體間的資料流。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
16
【概圖繪製】【說明與注意事項】 以學生「成績處理系統」為例。 【說明】 我們可以從「概圖」來了解,系統與外部實體的關係。
在概圖中的「轉換處理符號」上的名稱應當是該資訊系統的名稱。 【注意】 在「概圖」中,不會顯示任何「資料儲存檔」,因為「資料儲存檔」位在系統的內部。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
17
【概圖繪製】【組成元件】 以學生「成績處理系統」為例。 【組成元件】 1.外界實體
是指可以與系統交換訊息或資料的人或組織、甚至其他已存在的系統。 例如:學生、老師、課程、學校等實體。 2.處理功能 是指利用「單一處理」來表示整個系統,並包含系統的名稱。 例如:成績處理系統、選課系統。 3.外部資料流 (1)輸入資料流:是指來自系統外部的資料。例如:輸入原始成績、選課作業。 (2)輸出資料流:是指從系統流向外面的資料。例如:成績單、選課記錄表。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
18
5-5 主要功能圖 【引言】 由於系統環境圖(概圖)無法讓使用者清楚了解系統所提供的系統功能,因此,必須要再往下分解,才能讓使用者容易閱讀。
【定義】是指將系統環境圖(概圖)分解成數個處理功能的資料流程圖。 【編號的命名】「主要功能圖」中的每一個功能會有獨一無二的編號,並且採用流水號1.0 ,2.0 ,3.0 ,4.0 ,…, N.0。 【注意】 在「概圖」中,如果有「資料儲存檔」時會隱藏在系統中;但是,在「主要功能圖」中,則必須將「資料儲存檔」顯示出來,並賦予名稱。例如:學籍資料檔、成績檔。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
19
【實例】 學生的成績處理系統之「概圖」轉換成「主要功能圖」之過程。 【參考解答】 【說明】
主要功能圖的作用是將「概圖」中的主要功能分解出來,所以,又稱為 第一階DFD,其處理符號之編號順序為:1.0,2.0,3.0,…N.0。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
20
5-6 向下階層化 【引言】 由於「概圖」中的「處理功能」所包含的「處理和檔案的個數可能太多」或「過於模糊或抽象」,導致系統分析師及使用者不易閱讀。 【定義】是指將「處理功能」往下分解成更低層次的資料流程圖。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
21
5-6 向下階層化(續…) 【使用時機】 1.當資料流程圖中,「處理功能」所包含的處理和檔案的個數可能太多。
5-6 向下階層化(續…) 【使用時機】 1.當資料流程圖中,「處理功能」所包含的處理和檔案的個數可能太多。 2.當資料流程圖中,「處理功能」過於模糊或抽象。 【處理技巧】利用「分解、分割或細化」技巧。 【處理原則】 1.平衡原則 2.加註編號 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
22
5-6.1 平衡原則 【定義】 當「資料流程圖」被分解時,則上一階層的資料流程圖之「輸入資料流」與「輸出資料流」必須要與下一階層相同,此時稱為「平衡原則」。 【圖解說明】 在右圖中,有一個輸入「資料流(A)」 及二個輸出「資料流(B,C)」,所以, 在分解之後也必須要有「一入及二出」 的情況。否則就是不正確。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
23
不平衡狀況( 二入及一出) 在下圖中,有一個輸入「資料流(A)」及二個輸出「資料流(B,C)」 圖:
接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
24
【平衡之例外情況】 一、上層的DFD中的流程圖,在較低層次的DFD圖中,允許被分解 成「數個小資料流」。
【例如】學生成績是由「期中成績」與「期末成績」的加總。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
25
二、在較低層次的DFD圖中,允許額外增加「錯誤顯示」資料流。 【例如】額外增加「重複學號」或「重複課號」等資料流。 【圖解說明】
【注意】 為了避免「概圖」太複雜,大部份「錯誤顯示」的資料流,只允許在較低層次的DFD中。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
26
5-6.2 加註編號 【引言】 從「概圖」被分解成「主要功能圖」或更低層次的DFD時,必須要針對每一個「功能圖」加註編號。
加註編號 【引言】 從「概圖」被分解成「主要功能圖」或更低層次的DFD時,必須要針對每一個「功能圖」加註編號。 【編號的規則】父處理編號+‧+流水號 1.系統環境圖:概圖或第零階(Level-0 DFD 或Figure-0 DFD) 2.主要功能圖:第1階(Level-1 DFD 或Figure-1 DFD) 3.低層次圖:第N-1階經過功能分解後所獲得的DFD,稱為Level-N DFD (或Figure-N DFD);其中N≧2。 【階層關係】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
27
【圖解說明】 【額外的檔案】低層次DFD中,允許增加額外的檔案。 【註】
圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法 【額外的檔案】低層次DFD中,允許增加額外的檔案。 【註】 儘可能向下分割,直到每個處理無法再分割為止。這種無法再分割的處理,稱為功能元素,必須於處理規範書中,詳述它的內部處理邏輯。
28
5-7 向上階層化 【引言】 從「概圖」被分解成「主要功能圖」,甚至到低層次的DFD時,如果發現「檔案數+處理個數」≧7時,則必須要適時的「向上階層化」,否則會使得DFD太複雜。 【使用時機】 1.「檔案數+處理個數」≧7 2.無法放在一張A4的紙張中。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
29
5-7 向上階層化(續…) 【處理原則】 當許多「處理功能」共同存取某一資料檔時,則可以將所有處理與資料檔向上合併成單一處理來表示。
5-7 向上階層化(續…) 【處理原則】 當許多「處理功能」共同存取某一資料檔時,則可以將所有處理與資料檔向上合併成單一處理來表示。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
30
5-8 資料流程圖之繪製原則 基本上,在繪製資料流程圖時,必須要遵守以下原則: 一、一次只能分解一個處理 二、保持父子層的平衡性
三、在資料流程圖予以編號 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
31
一、一次只能分解一個處理 【定義】 一次只能針對一個「處理」進行分解,是為了保持圖形的「層次性」與「易讀性」。 圖:
接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
32
二、保持父子層的平衡性 在下圖中,「父階層」編號1.0之子系統有一個輸入資料流(來自外界實體)和一個輸出資料流(輸出到檔案),那麼在分解之後,一樣可以找到相同的輸入流、輸出流以及檔案,而其流向必須與「父階層」標示的方向相同。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
33
三、在資料流程圖予以編號 在上圖的分解圖中,我們可以清楚的得知:
(一)主要功能圖(第1階):採用1.0、2.0、3.0、… ,以此類推的順序安排處理編號。 (二)第2階:採用1.1、1.2、1.3、… ,以此類推的順序安排處理編號。 (三)第3階:採用1.3.1、1.3.2、1.3.3、… ,以此類推的順序安排處理編號。 《對於較模糊之作業進行再分解》 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
34
5-9 建構資料流程圖繪製原則 基本上,我們在建構資料流程圖時,必須要注意以下十項原則: 一、有入必有出 二、有出必有入
5-9 建構資料流程圖繪製原則 基本上,我們在建構資料流程圖時,必須要注意以下十項原則: 一、有入必有出 二、有出必有入 三、檔案中的資料必須要由「處理程序」流入 四、檔案之間不可以直接匯入資料 五、檔案必須要透過「處理程序」傳送給外部實體 六、外部實體之間不可以直接匯入資料 七、兩個單向用來表示檔案做「讀取與更新」 八、一個流向多個時,資料流名稱要相同 九、多個流向一個,則資料流名稱要相同 十、資料流不可以流向同一個「處理程序」本身 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
35
一、有入必有出 【定義】 每一個處理程序,如果有「輸入資料流」,則必須要有「輸出資料流」。否則,會產生黑洞(Black hole)的情況。
【圖解說明】 【說明】 處理程序(Process)不可以只有「輸入資料流」而沒有「輸出資料流」,其原因就是處理後沒有產出資料,或產出的資料沒有被使用時,此「處理程序」就沒有存在的必要性了。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
36
二、有出必有入 【定義】 每一個處理程序,如果有「輸出資料流」,則必須要有「輸入資料流」。 【例外情況】產生時間或亂數。 【圖解說明】
【說明】 處理程序(Process)也不可以只有「輸出資料流」而沒有「輸入資料流」,其原因就好像是「沒有買菜,就無法炒菜」的道理。因此,此「處理程序」也就沒有存在的必要性了。但是,產生系統時間或隨機亂數是例外情況。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
37
三、檔案中的資料必須要由「處理程序」流入
【定義】 每一個檔案中的資料,必須要經由「處理程序」之後流入,不可以直接經由外部實體來產生。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
38
四、檔案之間不可以直接匯入資料 【定義】 每一個檔案中的資料,必須要經由「處理程序」之後流入,不可以直接經由其他檔案匯入。 【圖解說明】
圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
39
五、檔案必須要透過「處理程序」傳送給外部實體
【定義】 每一個檔案中的資料,必須要經由「處理程序」之後才能流向「外部實體」,不可以直接匯入。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
40
六、外部實體之間不可以直接匯入資料 【定義】 每一個外部實體中的資料,必須要經由「處理程序」之後流入,不可以直接經由其他外部實體匯入。
【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
41
七、兩個單向用來表示檔案做「讀取與更新」
【定義】 當「處理程序」在進行檔案的「讀取」與「更新」時,資料流是兩個單向的。不可以使用「雙向箭頭表示」,而必須要使用「兩個單向箭頭表示」。 【原因】兩個處理事件的發生時間點不同,並且資料也不一定相同。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
42
【注意】 「外部實體」也不可以與「處理程序」進行雙向互動 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」
當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
43
八、一個流向多個時,資料流名稱要相同 【定義】 當第一個「處理程序」以「分叉流向」其他兩個或多個「處理程序」時,其資料流名稱應該是相同的。
【注意】資料流「分叉」表示完全相同之資料。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
44
【注意】以下兩種不同的情況: 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」
當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
45
九、多個流向一個,則資料流名稱要相同 【定義】
當兩個或多個「處理程序」以「匯合流向」到另一個「處理程序」時,則應該用相同名稱,而不應另外命名。 【注意】資料流「匯合」表示完全相同之資料。 【圖解說明】資料流內容都是相同時,則應該用相同名稱 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
46
【注意】 資料流內容如果不相同時,則名稱就會不一樣。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」
當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
47
十、資料流不可以流向同一個「處理程序」本身
【定義】 是指一個「處理程序」資料流不可以流向同一個「處理程序」本身, 必須要透過其他「處理程序」才能回到本身。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
48
5-10 實務專題製作 【引言】 隨著資訊科技的進步,及網路通訊的普及,使用目前各級學校都會有資訊化的要求,亦即開發一套「校務電腦化行政系統」,其中,關係到每一位學生每一學期的選課及成績處理的系統,最為被重視。因此,在本單元中,筆者就針對這兩個子系統來分析其DFD的建構步驟。 【實作系統】 1. 學生選課系統 2. 學生成績處理系統 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
49
5-10.1 學生選課系統 問題描述: 假設有某一所大學,欲建置一套「學生選課系統」,以讓學生來進行
學生選課系統 問題描述: 假設有某一所大學,欲建置一套「學生選課系統」,以讓學生來進行 選課作業。因此,教學組、註冊組及人事室,分別匯入「本學期開課資料、學生基本資料及老師資料」到選課系統中。而學生可以線上加退選課,並且授課老師可以查詢開課選修情況。 1.選課系統(概圖) <第0階> 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
50
2.選課系統(主要功能圖<第1階>)
1.外界個體:學生、老師、人事室、註冊組及教學組。 2.處理:學生基本資料處理、課程資料處理、選課作業處理及 老師資料處理。 3.資料儲存體:課程檔、學生檔、老師檔及選課記錄檔 系統主要功能圖,假設編號4.0選課作業處理程序十分複雜,必須再予以分解,則其分解後之低層次圖,如下一 頁所示: 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
51
3.選課作業處理4.0之分解圖<Level-2 DFD>
圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
52
4.選課作業處理4.1之分解圖<Level-3 DFD>
圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
53
5.選課作業處理4.1.1之分解圖<Level-4 DFD>
圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
54
學生成績處理系統 問題描述: 假設有某一所大學,欲建置一套「成績處理系統」。首先,「註冊組」必須要匯學生的「學籍資料」;並且,「教學組」也要匯入授課老師本學期的「開課資料」到成績處理系統中,以便讓每一位授課老師線上填入學生的「平時考、期中考及期末考」成績,並且學生也可以隨時查詢他個人的成績單,而班導師也可以查詢該班的成績總表;以便了解全班學生的學習成效。 一、成績處理(概圖)Level-0 DFD 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
55
二、成績處理(主要功能圖) Level-1 DFD
1.外界個體:學生、授課老師、導師、註冊組及教學組。 2.處理:學籍管理子系統、課程管理子系統、成績處理子系統及 成績查詢子系統。 3.資料儲存體:學生檔、課程檔及成績檔 在系統主要功能圖中,作業處理程序十分複雜,必須再予以分解,則其分解後之低層次圖。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
56
三、成績處理(向下階層化) Level-2 DFD
(一)學籍管理子系統 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
57
(二)課程管理子系統 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」
當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
58
(三)成績管理子系統 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」
當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
59
(四)成績查詢子系統 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」
當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法
Similar presentations