第 五 章 流程塑模(DFD) 課程名稱:系統分析與設計 各位同學大家好,我是李春雄老師,本學期所開設的課程名稱為「資料結構」,

Slides:



Advertisements
Similar presentations
第一章 Android App導論 課程名稱:程式設計 授課老師:李春雄 博士
Advertisements

第 五 章 教材內容標準化SCORM 課程名稱:數位學習 授課老師:李春雄 博士
第 三 章 ER Model實體關係圖 課程名稱:資料庫系統 各位同學大家好,我是李春雄老師,本學期所開設的課程名稱為「資料結構」,
MATLAB 程式設計 時間量測 清大資工系 多媒體資訊檢索實驗室.
第十五章 SQLite資料庫 課程名稱:程式設計 授課老師:李春雄 博士
行銷研究 單元三 次級資料的蒐集.
第 九 章 學習管理系統(LMS) 課程名稱:數位學習 授課老師:李春雄 博士
第 七 章 系統設計 課程名稱:系統分析與設計 各位同學大家好,我是李春雄老師,本學期所開設的課程名稱為「資料結構」,
LiveABC學習系統 103年英語自學說明會 校內學習資源LiveABC.
題庫解析:MTA資料庫檢定 授課老師:李春雄 博士
第 三 章 ER Model實體關係圖 課程名稱:資料庫系統 各位同學大家好,我是李春雄老師,本學期所開設的課程名稱為「資料結構」,
第二章 App Inventor程式的開發環境
第 二 章 關聯式資料庫.
陳維魁 博士 儒林圖書公司 第九章 資料抽象化 陳維魁 博士 儒林圖書公司.
TQC+ JAVA全國教師研習會 PLWeb 程式設計練習平台 簡介.
主題五 CPU Learning Lab.
題目:十六對一多工器 姓名:李國豪 學號:B
程式語言的基礎 Input Output Program 世代 程式語言 第一世代 Machine language 第二世代
課程名稱:資料庫系統 授課老師:李春雄 博士
第一篇 Unix/Linux 操作介面 第 1 章 Unix/Linux 系統概論 第 2 章 開始使用 Unix/Linux
電子商務 電子商務 授課老師:范錚強 教授 課程助教:王嘉珍
2-3 基本數位邏輯處理※.
JAVA 程式設計與資料結構 第六章 輸出與輸入.
使用VHDL設計—4位元位移器 通訊一甲 B 楊穎穆.
在NS-2上模擬多個FTP連線,觀察頻寬的變化
類別(class) 類別class與物件object.
ASP.NET基本設計與操作 建國科技大學 資管系 饒瑞佶 2007年.
數位教材設計與製作 課程名稱:數位學習 授課老師:李春雄 博士 各位同學大家好,我是李春雄老師,本學期所開設的課程名稱為「資料結構」,
檔案與磁碟的基本介紹.
第二章 SPSS的使用 2.1 啟動SPSS系統 2.2 結束SPSS系統 2.3 資料分析之相關檔案 2.4 如何使用SPSS軟體.
Tense Buster 操作手冊 畹禾有限公司.
管理資訊系統導論 資訊系統的定義與概念.
Java 程式設計 講師:FrankLin.
第六章 迴 圈 結 構 課程名稱:程式設計 授課老師:李春雄 博士 各位同學大家好,我是李春雄老師,本學期所開設的課程名稱為「資料結構」,
Chap3 Linked List 鏈結串列.
課程名稱:資料庫系統 授課老師:李春雄 博士
網路安全技術 OSI七層 學生:A 郭瀝婷 指導教授:梁明章.
指導老師: 王思文 行銷二A 第二組 黃新強 黃秀菁 楊麗馨
Topic Introduction—RMI
第 19 章 XML記憶體執行模式.
本章學習目標 學習極座標繪圖與對數繪圖 學習雙y軸繪圖 學習向量場繪圖 學習統計繪圖 在Matlab的環境裡製作動畫
使用VHDL設計 七段顯示器 通訊工程系 一年甲班 姓名 : 蘇建宇 學號 : B
第一次Labview就上手 參考書籍: LabVIEW for Everyone (Jeffrey Travis/Jim Kring)
其他 ER 相關觀念 以及OO模型 國立中央大學 資訊管理系 范錚強 2002 中央大學。范錚強.
智慧型手機程式設計 建國科技大學資管系 饒瑞佶 2011年(992).
課程名稱:資料庫系統 授課老師:李春雄 博士
DRC with Calibre 課程名稱:VLSI 報告人:黃家洋 日期: 改版(蔡秉均) 1.
MicroSim pspice.
(Mobile User music–Sharing Innovation Center)
電腦概論考題分析 佛學資訊組 碩一 張榮顯.
專題E組 選課教學輔助系統 指導教授:林娟娟 教授 組員: 許韶玲 詹博為 賴育潔
流程控制:Switch-Case 94學年度第一學期‧資訊教育 東海大學物理系.
MiRanda Java Interface v1.0的使用方法
黃影雯副教授講授 E_Mail Address:
資訊隱藏概論 (Introduction to Data Hiding)
Chapter 15 檔案存取 LabVIEW中的檔案存取函數也可將程式中的資料儲存成Excel或Word檔。只要將欲存取的檔案路徑位址透過LabVIEW中的路徑元件告訴檔案存取函數後,LabVIEW便可將資料存成Excel或Word檔;當然也可以將Excel或Word檔的資料讀入LabVIEW的程式中。
課程時間:星期二下午2:20-5:20 -> 1:20-4:10 ? 授課教師 逄愛君, 辦公室: 資訊系館 417室 先修課程
使用VHDL設計-8x3編碼電路 通訊一甲 B 楊穎穆.
國立台灣大學 關懷弱勢族群電腦課程 By 資訊工程 黃振修
班級:博碩子一甲 授課老師:鐘國家 助教:陳國政
資料表示方法 資料儲存單位.
資料擷取與監控應用實務.
資料結構與C++程式設計進階 期末考 講師:林業峻 CSIE, NTU 7/ 15, 2010.
Cloud Training Material- 事件 Sherman Wang
多站台網路預約系統之 AJAX即時資料更新機制
使用VHDL設計-七段顯示 通訊一甲 B 楊穎穆.
Chapter 4 Multi-Threads (多執行緒).
Develop and Build Drives by Visual C++ IDE
JUDGE GIRL 使用介紹 & 常見問題 TAs :
InputStreamReader Console Scanner
Presentation transcript:

第 五 章 流程塑模(DFD) 課程名稱:系統分析與設計 各位同學大家好,我是李春雄老師,本學期所開設的課程名稱為「資料結構」, 今天所要為各位介紹的是第一章「資料結構導論」

本章學習目標 1.讓讀者了解資料流程圖定義、基本符號及繪製 功能分解之方法。 2.讓讀者了解資料流程圖之繪製原則及實務的專 題製作。 開始: 本章學習目標 有二項:

本章內容 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 演算法的效率評估 指用來計算某些演算法所撰寫的程式,在經過編譯之後,實際執行所需要的時間。

5-1 資料流程圖 【定義】 資料流程圖(Data Flow Diagram , DFD)它是一種圖形化工具,專門用來表達「資料」在「資訊系統」內的移轉過程,其中包括外部實體透過處理來匯出資料到資料儲存檔等程序。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-1 資料流程圖(續…) 【功用】 1.提供或接收系統資料的外界實體 (外界實體) 。 2.系統與外界實體之間的資料流動過程 (資料流) 。 3.系統如何將資料進行轉換處理 (處理功能) 。 4.系統如何把轉換後的結果儲存到資料檔中 (資料儲存檔) 。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-2 資料流程圖的基本符號 資料流程圖的基本符號的表示方式,各家學說並非一致,較常見的表示有DeMarco & Yourdon 與Gane & Sarson兩種。如表5-1所示。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-2.1 外界實體(External Entity ) 【定義】是指用來識別外在的個體,可能是資料流的來源與去處。 【命名】常使用「名詞」來命名。 【例如】學生、課程、老師、人員、組織及部門。 【表示圖形】以「矩形」表示。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-2.2. 處理(Process) 【定義】是指系統所提供的功能,又稱為功能或轉換。 【功能】負責將輸入資料流轉換成輸出資料流。 【分類】人工處理與電腦化處理。 【命名】使用「編號與動詞」或「編號與動詞+(子)系統」 【例如】成績處理系統、選課系統及薪資計算系統等。 【表示圖形】以「圓圈」或「圓滑邊長方形」表示。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-2.3.資料流(Data Flow) 【定義】是指用來描述資料如何在系統中流動。 【主要來源】外部實體、其他處理或檔案。 【命名】在箭頭上方或下方允許存在名稱。以「名詞」命名。 【分類】輸入資料流與輸出資料流 其中: 「輸入資料流」可以是表單,例如:原始成績、訂單資料、客戶資料等。 「輸出資料流」可以是報表或查詢結果。例如:成績單、週報表或績效表。 【表示圖形】以「箭頭」表示。帶有箭頭的一端,表示資料流動方向。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-2.4. 資料儲存檔(Data Files) 【定義】是指用來記錄系統處理時所需的輸入及輸出的資料。 【型態】檔案或資料庫。 【命名】平行線內必須存在名稱。以「名詞」命名。 【例如】課程檔、學生檔及選課檔。 【表示圖形】以「平行線」或「便利貼標籤」表示 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-3 資料流程圖的功能分解 基本上,資料流程圖可分為「高層次圖」與「低層次圖」兩種。其中,「高層次圖」又可區分為兩種: 5-3 資料流程圖的功能分解 基本上,資料流程圖可分為「高層次圖」與「低層次圖」兩種。其中,「高層次圖」又可區分為兩種: 1.「系統環境圖」:第零階(Level-0 Diagram),又稱為「概圖」。 2.「主要功能圖」:第1階(Level-1 Diagram)。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

功能分解【說明】 從「系統環境圖」到「主要功能圖」,甚至繪製到「低層次圖」時,其最主要觀念就是「分解」(Decomposing),也就是將一個較高層次的複雜圖,必須要進行細部分解的過程,直到每一個子功能都可以清楚的表示出來。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

【建構與分解步驟】 1.先建構「系統環境圖」 2.再由「系統環境圖」經過向下階層化,分解為「主要功能圖」。 3.最後,再針對「主要功能圖」中的每一個「處理」,進行向下階層化,來產生「低層次」資料流程圖。相同的步驟,重複進行之,直到所有「處理」無法再向下階層化為止。 【註】「向下階層化」,在下一單元會詳細介紹。 【註】分解主要是針對「處理程序」,因此又稱為「功能分解」。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-4 系統環境圖(概圖)的繪製 【定義】描述系統與外部實體之間的資料流動的關係。 5-4 系統環境圖(概圖)的繪製 【定義】描述系統與外部實體之間的資料流動的關係。 【別名】它又稱為「概圖」或第零階資料流程圖(Level-0 DFD) 【命名】以「系統名稱」來命名之,並且處理編號設為「0」。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

【概圖繪製的步驟】 以學生「成績處理系統」為例。 1.先繪製一個「圓圈」或「圓滑邊長方形」(代表轉換處理符號), 並在圓圈中填入系統名稱。將該處理編號設為「0」 2.繪製提供或接收系統資料的外界實體。 3.繪製系統與外界實體間的資料流。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

【概圖繪製】【說明與注意事項】 以學生「成績處理系統」為例。 【說明】 我們可以從「概圖」來了解,系統與外部實體的關係。 在概圖中的「轉換處理符號」上的名稱應當是該資訊系統的名稱。 【注意】 在「概圖」中,不會顯示任何「資料儲存檔」,因為「資料儲存檔」位在系統的內部。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

【概圖繪製】【組成元件】 以學生「成績處理系統」為例。 【組成元件】 1.外界實體 是指可以與系統交換訊息或資料的人或組織、甚至其他已存在的系統。 例如:學生、老師、課程、學校等實體。 2.處理功能 是指利用「單一處理」來表示整個系統,並包含系統的名稱。 例如:成績處理系統、選課系統。 3.外部資料流 (1)輸入資料流:是指來自系統外部的資料。例如:輸入原始成績、選課作業。 (2)輸出資料流:是指從系統流向外面的資料。例如:成績單、選課記錄表。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-5 主要功能圖 【引言】 由於系統環境圖(概圖)無法讓使用者清楚了解系統所提供的系統功能,因此,必須要再往下分解,才能讓使用者容易閱讀。 【定義】是指將系統環境圖(概圖)分解成數個處理功能的資料流程圖。 【編號的命名】「主要功能圖」中的每一個功能會有獨一無二的編號,並且採用流水號1.0 ,2.0 ,3.0 ,4.0 ,…, N.0。 【注意】 在「概圖」中,如果有「資料儲存檔」時會隱藏在系統中;但是,在「主要功能圖」中,則必須將「資料儲存檔」顯示出來,並賦予名稱。例如:學籍資料檔、成績檔。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

【實例】 學生的成績處理系統之「概圖」轉換成「主要功能圖」之過程。 【參考解答】 【說明】 主要功能圖的作用是將「概圖」中的主要功能分解出來,所以,又稱為 第一階DFD,其處理符號之編號順序為:1.0,2.0,3.0,…N.0。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-6 向下階層化 【引言】 由於「概圖」中的「處理功能」所包含的「處理和檔案的個數可能太多」或「過於模糊或抽象」,導致系統分析師及使用者不易閱讀。 【定義】是指將「處理功能」往下分解成更低層次的資料流程圖。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-6 向下階層化(續…) 【使用時機】 1.當資料流程圖中,「處理功能」所包含的處理和檔案的個數可能太多。 5-6 向下階層化(續…) 【使用時機】 1.當資料流程圖中,「處理功能」所包含的處理和檔案的個數可能太多。 2.當資料流程圖中,「處理功能」過於模糊或抽象。 【處理技巧】利用「分解、分割或細化」技巧。 【處理原則】 1.平衡原則 2.加註編號 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-6.1 平衡原則 【定義】 當「資料流程圖」被分解時,則上一階層的資料流程圖之「輸入資料流」與「輸出資料流」必須要與下一階層相同,此時稱為「平衡原則」。 【圖解說明】 在右圖中,有一個輸入「資料流(A)」 及二個輸出「資料流(B,C)」,所以, 在分解之後也必須要有「一入及二出」 的情況。否則就是不正確。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

不平衡狀況( 二入及一出) 在下圖中,有一個輸入「資料流(A)」及二個輸出「資料流(B,C)」 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

【平衡之例外情況】 一、上層的DFD中的流程圖,在較低層次的DFD圖中,允許被分解 成「數個小資料流」。 【例如】學生成績是由「期中成績」與「期末成績」的加總。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

二、在較低層次的DFD圖中,允許額外增加「錯誤顯示」資料流。 【例如】額外增加「重複學號」或「重複課號」等資料流。 【圖解說明】 【注意】 為了避免「概圖」太複雜,大部份「錯誤顯示」的資料流,只允許在較低層次的DFD中。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-6.2 加註編號 【引言】 從「概圖」被分解成「主要功能圖」或更低層次的DFD時,必須要針對每一個「功能圖」加註編號。 5-6.2 加註編號 【引言】 從「概圖」被分解成「主要功能圖」或更低層次的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來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

【圖解說明】 【額外的檔案】低層次DFD中,允許增加額外的檔案。 【註】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法 【額外的檔案】低層次DFD中,允許增加額外的檔案。 【註】 儘可能向下分割,直到每個處理無法再分割為止。這種無法再分割的處理,稱為功能元素,必須於處理規範書中,詳述它的內部處理邏輯。

5-7 向上階層化 【引言】 從「概圖」被分解成「主要功能圖」,甚至到低層次的DFD時,如果發現「檔案數+處理個數」≧7時,則必須要適時的「向上階層化」,否則會使得DFD太複雜。 【使用時機】 1.「檔案數+處理個數」≧7 2.無法放在一張A4的紙張中。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-7 向上階層化(續…) 【處理原則】 當許多「處理功能」共同存取某一資料檔時,則可以將所有處理與資料檔向上合併成單一處理來表示。 5-7 向上階層化(續…) 【處理原則】 當許多「處理功能」共同存取某一資料檔時,則可以將所有處理與資料檔向上合併成單一處理來表示。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-8 資料流程圖之繪製原則 基本上,在繪製資料流程圖時,必須要遵守以下原則: 一、一次只能分解一個處理 二、保持父子層的平衡性 三、在資料流程圖予以編號 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

一、一次只能分解一個處理 【定義】 一次只能針對一個「處理」進行分解,是為了保持圖形的「層次性」與「易讀性」。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

二、保持父子層的平衡性 在下圖中,「父階層」編號1.0之子系統有一個輸入資料流(來自外界實體)和一個輸出資料流(輸出到檔案),那麼在分解之後,一樣可以找到相同的輸入流、輸出流以及檔案,而其流向必須與「父階層」標示的方向相同。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

三、在資料流程圖予以編號 在上圖的分解圖中,我們可以清楚的得知: (一)主要功能圖(第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來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-9 建構資料流程圖繪製原則 基本上,我們在建構資料流程圖時,必須要注意以下十項原則: 一、有入必有出 二、有出必有入 5-9 建構資料流程圖繪製原則 基本上,我們在建構資料流程圖時,必須要注意以下十項原則: 一、有入必有出 二、有出必有入 三、檔案中的資料必須要由「處理程序」流入 四、檔案之間不可以直接匯入資料 五、檔案必須要透過「處理程序」傳送給外部實體 六、外部實體之間不可以直接匯入資料 七、兩個單向用來表示檔案做「讀取與更新」 八、一個流向多個時,資料流名稱要相同 九、多個流向一個,則資料流名稱要相同 十、資料流不可以流向同一個「處理程序」本身 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

一、有入必有出 【定義】 每一個處理程序,如果有「輸入資料流」,則必須要有「輸出資料流」。否則,會產生黑洞(Black hole)的情況。 【圖解說明】 【說明】 處理程序(Process)不可以只有「輸入資料流」而沒有「輸出資料流」,其原因就是處理後沒有產出資料,或產出的資料沒有被使用時,此「處理程序」就沒有存在的必要性了。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

二、有出必有入 【定義】 每一個處理程序,如果有「輸出資料流」,則必須要有「輸入資料流」。 【例外情況】產生時間或亂數。 【圖解說明】 【說明】 處理程序(Process)也不可以只有「輸出資料流」而沒有「輸入資料流」,其原因就好像是「沒有買菜,就無法炒菜」的道理。因此,此「處理程序」也就沒有存在的必要性了。但是,產生系統時間或隨機亂數是例外情況。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

三、檔案中的資料必須要由「處理程序」流入 【定義】 每一個檔案中的資料,必須要經由「處理程序」之後流入,不可以直接經由外部實體來產生。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

四、檔案之間不可以直接匯入資料 【定義】 每一個檔案中的資料,必須要經由「處理程序」之後流入,不可以直接經由其他檔案匯入。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

五、檔案必須要透過「處理程序」傳送給外部實體 【定義】 每一個檔案中的資料,必須要經由「處理程序」之後才能流向「外部實體」,不可以直接匯入。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

六、外部實體之間不可以直接匯入資料 【定義】 每一個外部實體中的資料,必須要經由「處理程序」之後流入,不可以直接經由其他外部實體匯入。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

七、兩個單向用來表示檔案做「讀取與更新」 【定義】 當「處理程序」在進行檔案的「讀取」與「更新」時,資料流是兩個單向的。不可以使用「雙向箭頭表示」,而必須要使用「兩個單向箭頭表示」。 【原因】兩個處理事件的發生時間點不同,並且資料也不一定相同。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

【注意】 「外部實體」也不可以與「處理程序」進行雙向互動 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

八、一個流向多個時,資料流名稱要相同 【定義】 當第一個「處理程序」以「分叉流向」其他兩個或多個「處理程序」時,其資料流名稱應該是相同的。 【注意】資料流「分叉」表示完全相同之資料。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

【注意】以下兩種不同的情況: 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

九、多個流向一個,則資料流名稱要相同 【定義】 當兩個或多個「處理程序」以「匯合流向」到另一個「處理程序」時,則應該用相同名稱,而不應另外命名。 【注意】資料流「匯合」表示完全相同之資料。 【圖解說明】資料流內容都是相同時,則應該用相同名稱 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

【注意】 資料流內容如果不相同時,則名稱就會不一樣。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

十、資料流不可以流向同一個「處理程序」本身 【定義】 是指一個「處理程序」資料流不可以流向同一個「處理程序」本身, 必須要透過其他「處理程序」才能回到本身。 【圖解說明】 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-10 實務專題製作 【引言】 隨著資訊科技的進步,及網路通訊的普及,使用目前各級學校都會有資訊化的要求,亦即開發一套「校務電腦化行政系統」,其中,關係到每一位學生每一學期的選課及成績處理的系統,最為被重視。因此,在本單元中,筆者就針對這兩個子系統來分析其DFD的建構步驟。 【實作系統】 1. 學生選課系統 2. 學生成績處理系統 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-10.1 學生選課系統 問題描述: 假設有某一所大學,欲建置一套「學生選課系統」,以讓學生來進行 5-10.1 學生選課系統 問題描述: 假設有某一所大學,欲建置一套「學生選課系統」,以讓學生來進行 選課作業。因此,教學組、註冊組及人事室,分別匯入「本學期開課資料、學生基本資料及老師資料」到選課系統中。而學生可以線上加退選課,並且授課老師可以查詢開課選修情況。 1.選課系統(概圖) <第0階> 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

2.選課系統(主要功能圖<第1階>) 1.外界個體:學生、老師、人事室、註冊組及教學組。 2.處理:學生基本資料處理、課程資料處理、選課作業處理及 老師資料處理。 3.資料儲存體:課程檔、學生檔、老師檔及選課記錄檔 系統主要功能圖,假設編號4.0選課作業處理程序十分複雜,必須再予以分解,則其分解後之低層次圖,如下一 頁所示: 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

3.選課作業處理4.0之分解圖<Level-2 DFD> 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

4.選課作業處理4.1之分解圖<Level-3 DFD> 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5.選課作業處理4.1.1之分解圖<Level-4 DFD> 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

5-10.2 學生成績處理系統 問題描述: 假設有某一所大學,欲建置一套「成績處理系統」。首先,「註冊組」必須要匯學生的「學籍資料」;並且,「教學組」也要匯入授課老師本學期的「開課資料」到成績處理系統中,以便讓每一位授課老師線上填入學生的「平時考、期中考及期末考」成績,並且學生也可以隨時查詢他個人的成績單,而班導師也可以查詢該班的成績總表;以便了解全班學生的學習成效。 一、成績處理(概圖)Level-0 DFD 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

二、成績處理(主要功能圖) Level-1 DFD 1.外界個體:學生、授課老師、導師、註冊組及教學組。 2.處理:學籍管理子系統、課程管理子系統、成績處理子系統及 成績查詢子系統。 3.資料儲存體:學生檔、課程檔及成績檔 在系統主要功能圖中,作業處理程序十分複雜,必須再予以分解,則其分解後之低層次圖。 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

三、成績處理(向下階層化) Level-2 DFD (一)學籍管理子系統 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

(二)課程管理子系統 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

(三)成績管理子系統 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法

(四)成績查詢子系統 圖: 接下來,我們可以從圖1-1來說明「資料與資訊的關係」 當我們「輸入原始成績」之後,如何輸出一張成績單呢?那就必須要透過「程式」來進行處理, 而在資料結構中,程式=資料結構+演算法