1、Chapter 3,系統分析與設計,1,大 綱,3-1 系統規劃3-2 系統分析與設計,前言,系統分析與設計是一系列有組織的處理程序,其目的是將需求轉換成有組織的資訊系統開發規格與文件,進而完成一套高品質的資訊系統。嚴格來說,系統分析與設計僅是系統開發過程中的一部分,當然它也是系統開發過程中最為重要的一關鍵環節。,系統開發流程,系統規劃,系統分析,系統設計,系統實作,系統整合,系統評估,本章節,為何要學SA/SD?,為何要學SA/SD?,專題製作若屬軟體製作類:軟體製作類的研究計劃書,應至少包含下列各項:1.題目, 2. 摘要(200500字), 3. 關鍵詞(35個), 4. 研究動機與目的
2、, 5. 文獻回顧, 6.系統功能架構7.系統規劃(包含系統分析與設計,以及資料庫設計規劃) 8.研究進度(甘特圖)及預期研究成果, 9研究限制(可能遭遇之困難及解決途徑), 10.參考文獻。,為何要學SA/SD?,專案結束交付客戶的項目之一未來專案修改的重要依據提昇專案品質提升自我未來的價值,3-1 系統規劃,系統規劃是整個系統開發專案的起始規劃內容問題分析擬定系統目標與系統架構制定出系統範圍訂定系統開發時程可行性與預期效益分析,1. 問題分析,問題分析的主要工作任務,包含從組織的管理實務或作業流程上,找出目前所面臨的問題或無法突破的困難之處,並從中歸納以確認問題的核心。,問題分析的實施步驟
3、對個案組織背景與主題起源進行了解,並進行基本描述。依據現行系統的狀況或作業上所遭遇之問題進行分析。歸納問題,以掌握專案的問題核心。對於已經存在既有系統的狀況,規劃人員在進行問題分析時,必須針對現行的資訊系統進行分析。,PIECES 架構是一個常見的分析方法,其主要是分別針對效能、資訊、經濟、控制或安全、效率與服務等六大構面進行問題的描述與分析。,PIECES 分析表,以資產盤點系統為例,?,2. 系統目標與架構,3. 系統範圍,訂定系統範圍之目的,在於釐清與掌握新系統所須完成的主要工作以及所需要的各項資源,以避免在開發過程中存在不確定性,甚至出現混亂的狀況。系統範圍描述常以正向表列的方式來羅列
4、出預期達成的工作。敘述的內容主要為系統功能的概述、系統主要的工作項目,以及系統所需要的各項資源項目等。,系統範圍說明文件,以資產盤點系統為例系統範圍說明文件,以資產盤點系統為例系統範圍說明文件,以資產盤點系統為例,4. 系統開發時程,系統開發時程的訂定,是依據專案開發階段的時程來進行工作安排、管理與查核。系統開發時程以條列式形式列出專案工作的重點項目,並預估各階段的工作項目的發展時程,以期對專案發展的順序與時程能有初步的規劃與掌握。一般使用甘特圖方式來表示。,開發時程甘特圖,5. 可行性與預期效益分析,專案規劃中所進行的各種可行性分析,其主要目的是依據系統目標、架構及範圍,從經濟成本的可行性、
5、技術能力的可行性、時效的可行性、系統運作的可行性,以及法規制度的可行性等角度,對專案計畫是否將付諸實行進行審慎的評估與分析作業。,可行行分析的結果一個無法順利通過可行性評估的專案而言,可行性的評估可以用來輔助說明專案被放棄的原因。一個被正面考量且可能持續發展的專案而言,可行性分析的結果則可能是一個達成未來成效的基礎。,一個通過分析且可行性較高的專案計畫,相對的在預期效益的達成率上也會有較高的機會。在效益分析作業中,一般亦可以 PIECES分析表針對新舊系統的差異進行比較,以作為效益分析工具。,以PIECES 分析表作為效益分析工具,練習/HW1,規劃上課點名系統或你專題的系統完成PIECES表
6、完成系統目標與架構表完成系統範圍文件完成甘特圖完成可行性與預期效益分析,3-2 系統分析與設計,系統分析與設計是在系統發展過程中,透過對現有作業的深入了解以發掘問題,並將所確認的需求轉換成分析與設計規格文件。資料流程圖與實體關係圖的繪製,是系統分析與設計活動中最常被使用的開發工具。,1. 環境圖 (Context Diagram),資料流程圖的前置圖:看到系統全貌環境圖是一種結合系統、外部實體,以及處理與資料流等三種元素所構成的圖型工具。在結構化的系統分析與設計活動中,可以透過環境圖來表達系統所在之環境,及其與環境之間的關係。在環境圖之中,除了系統主體外,必須清楚標示出與系統有關的外部實體,以
7、及存在於外部實體與系統之間的互動關係。,環境圖使用的元素表示方式,環境圖可以用來表示系統之概觀與範圍,因此在一個由上而下 (Top-Down) 發展的分析與設計作業中,環境圖的繪製通常是製作資料流程圖的前置工作。環境圖可以讓開發人員從一個巨觀的角度,來描述並掌握與系統互動之外部實體、系統從環境中所接受的資訊、系統所產生及輸出給環境之資訊,以及系統與環境之界限等,以協助開發人員瞭解系統所存在之環境及其間的互動關係。,財產盤點系統範例環境圖,外部實體?,系統?,資料/訊?,2. 資料流程圖 (DFD),資料流程圖是一種流程塑模的工具,它提供一種藉由圖形化的方式,來表達系統中的作業處理與資料流間之關
8、係。資料流程圖是以階層分解的概念,描述系統中資料之流動情形,以及分析資料是在那個部份進行轉換,以及資料儲存的檔案位置,以協助系統開發人員與使用者間的溝通、了解系統之概略輪廓,並作為日後進行系統設計的參考依據。,資料流程圖主要有四個基本元素:外部實體(Entity)資料流(Data Flow)處理(Process)資料儲存(Data Store)常見的資料流程圖元素表示符號有兩種方式DeMarco & YourdonGane & Sarson,資料流程圖表示方式,DFD的特性,資料流程圖的層次性是指資料流程圖可細分為數個階層,用以表達系統在不同層次的資料流程,而這些層次在縱向方面,彼此具有父子層
9、的關係。資料流程圖的可分解性是指分析師可以依資料流程圖的複雜度,逐層地予以分解,直到各項轉換處理成為更易了解的基本功能為止。資料流程圖的邏輯性則是指資料流程圖只表達資料在那裡進行轉換,而不描述資料的轉換過程。,範例:財產盤點資訊系統,外部實體: 系統管理員以及盤點人員處理:包含了組織管理、財產管理,以及盤點管理等三個主要的子系統。它們是原本存在於環境圖中財產盤點資訊系統的內容。資料存儲:包含了單位資料檔、盤點狀態資料檔、盤點位置資料檔、人員資料檔、財產資料檔,以及盤點記錄資料檔等六個。,第零階資料流程圖,外部實體?,資料流?,處理?,資料儲存?,組織管理子系統之第一階資料流程圖,哪來的?有什麼
10、特性?,財產管理子系統之第一階資料流程圖,盤點管理子系統之第一階資料流程圖,常見的錯誤DFD表示法,常見的錯誤DFD 表示法,3. 實體關係圖(ERD),實體關係圖(Entity-Relationship Diagram, 簡稱為E-R Diagram 或ERD)是一種作為資料塑模的重要工具,它被用來建構所有資料之間的關聯性,以建立系統的資料庫表格。實體關係圖的主要基本組成元素包含實體型態(Entity Type)、關係型態(Relationship Type)、屬性(Attribute),以及用來將屬性連結到實體型態或將實體型態連結到關係的直線等元素。,實體關係圖的主要元素,實體型態,實體型
11、態,有時稱為實體類別(Entity Class)或簡稱實體,是一些具有共同性質(Properties)或特徵(Characteristics)之實體案例(Entity Instance)或稱實例(Instance)的集合。每個實體型態有一個名稱為其辨別物(Identifier)且常以矩形表示,實體的名稱標示於矩形內。,關係型態,關係型態(Relationship Type)是用來代表實體型態與實體型態間之關係,它通常是一個表示交易或活動的事件,當這個事件發生的時候會與所連接的實體產生關係。換句話說,與某關係相連接的數個實體型態,它們的關係是建立在此關係(Relationship)的事件上。例如
12、一個用來連接學生實體型態以及書籍實體型態的借閱關係型態,表示學生與書籍的關係是建立在借閱的行為或事件上。,屬性,每個實體型態都具有一些屬性(Attribute),每個屬性是實體型態的一個性質或特徵。屬性除了可以用來描述實體的特徵之外,它也可以用來描述關係的特徵。在 ERD 中,一個屬性有一名稱以作為識別,且常以橢圓形表示,並將屬性名稱標示於橢圓形中,且以線條與其實體型態連接。例如學生實體型態其屬性可能包括學生之學號、姓名、地址,以及電話等。,學生-借閱-書籍的部份實體關係圖,實體?,關係?,屬性?,直線?,關係型態的Degree,關係型態的Degree 是參與此關係的實體型態數目,假使在一個實
13、體關係模型中的關係型態,連接了兩個實體型態,一般稱此關係為二元關係。例如學生-借閱-書籍係屬於二元關係。,關係型態的Degree,若一個實體關係模型中的關係型態,連接了三個實體型態,則稱之為三元關係。如圖,維修關係型態的Degree為3,係屬於三元關係。,基數比限制條件,一個實體所能參與的關係案例數,稱之為基數比限制條件(Cardinality Ratio Constraints)。基數比限制主要可以分成:一對一關係、一對多關係,以及多對多關係等三大類型。,4. DFD vs. ERD,將DFD中的資料儲存轉成資料表將DFD中的處理轉成關係屬性要來自於客戶的需求,不要太大,也不可以太小,以系統需要為主,誰先誰後?,DFD,ERD,正規化,資料庫綱要,資料庫關聯關係,系通需求分析,請完成學生-借閱-書籍的實體關係圖,財產盤點資訊系統的實體關係圖?,ERD?,練習/HW2,製作上課點名系統或你專題的系統設計文件完成DFD完成ERD,