結構化分析方法(Structured Method,結構化方法)是強調開發方法的結構合理性以及所開發軟件的結構合理性的軟件開發方法。結構是指系統內各個組成要素之間的相互聯系、相互作用的框架。結構化開發方法提出了一組提高軟件結構合理性的准則,如分解與抽象、模塊獨立性、信息隱蔽等。針對軟件生存周期各個不同的階段,它有結構化分析(SA)和結構化程序設計(SP)等方法。
結構化分析方法
結構化分析方法:結構化分析方法是一種建模技術,該模型的核心是數據字典,包括在目標系統中使用和生成的所有數據對象。
數據流圖(DFD):描述系統中數據如何被傳送和變換,以及描述如何對數據流進行變換的功能,用於功能建模
實體-關系圖(E-R):描述數據對象及數據對象的關系,用於數據建模
狀態-遷移圖(STD):描述系統對外部事件如何響應,如何動作,用於行為建模
結構化分析方法(Structured Method)是強調開發方法的結構合理性以及所開發軟件的結構合理性的軟件開發方法。結構是指系統內各個組成要素之間的相互聯系、相互作用的框架。
結構化開發方法提出了一組提高軟件結構合理性的准則,如分解與抽象、模塊獨立性、信息隱蔽等。
針對軟件生存周期各個不同的階段,它有結構化分析(SA)、結構化設計(SD)和結構化程序設計(SP)等方法。
結構化分析方法給出一組幫助系統分析人員產生功能規約的原理與技術。它一般利用圖形表達用戶需求,使用的手段主要有數據流圖、數據字典、結構化語言、判定表以及判定樹等。
結構化分析的步驟如下:
①分析當前的情況,做出反映當前物理模型的DFD;
②推導出等價的邏輯模型的DFD;
③設計新的邏輯系統,生成數據字典和基元描述;
④建立人機接口,提出可供選擇的目標系統物理模型的DFD;
⑤確定各種方案的成本和風險等級,據此對各種方案進行分析;
⑥選擇一種方案;
⑦建立完整的需求規約。
結構化分析方法 (2)
結構化分析方法的實質是着眼於數據流,自頂向下,逐層分解,建立系統的處理流程,以數據流圖和數據字典為主要工具,建立系統的邏輯模型。
結構化分析的步驟如下:
(1)通過對用戶的調查,以軟件的需求為線索,獲得當前系統的具體模型
(2)去掉具體模型中非本質因素,抽象出當前系統的邏輯模型
(3)根據計算機的特點分析當前系統與目標系統的差別,建立目標系統的邏輯模型
(4)完善目標系統並補充細節,寫出目標系統的軟件需求規格說明
(5)評審直到確認完全符合用戶對軟件的需求
結構化設計方法給出一組幫助設計人員在模塊層次上區分設計質量的原理與技術。它通常與結構化分析方法銜接起來使用,以數據流圖為基礎得到軟件的模塊結構。SD方法尤其適用於變換型結構和事務型結構的目標系統。在設計過程中,它從整個程序的結構出發,利用模塊結構圖表述程序模塊之間的關系。結構化設計的步驟如下:
①評審和細化數據流圖;
②確定數據流圖的類型;
③把數據流圖映射到軟件模塊結構,設計出模塊結構的上層;
④基於數據流圖逐步分解高層模塊,設計中下層模塊;
⑤對模塊結構進行優化,得到更為合理的軟件結構;
⑥描述模塊接口。
結構化分析的常用工具
1、數據流圖(DFD-Data Flow Diagram)數據流圖是描述數據處理過程的工具,是需求理解的邏輯模型的圖形表示,它直接支持系統的功能建模。
數據流圖中主要圖形元素有:數據流—流是數據在系統內傳播的路徑,因此由一組成分固定的數據組成。如訂票單由旅客姓名、年齡、單位、身份證號、日期、目的地等數據項組成。由於數據流是流動中的數據,所以必須有流向,除了與數據存儲之間的數據流不用命名外,數據流應該用名詞或名詞短語命名。
數據源——代表系統之外的實體,可以是人、物或其他軟件系統。
數據存儲——對數據的加工處理---——加工是對數據進行處理的單元,它接收一定的數據輸入,對其進行處理,並產生輸出。
—表示信息的靜態存儲,可以代表文件、文件的一部分、數據庫的元素等。
建立數據流圖步驟如下:
(1)由外向內:先畫系統的輸入和輸出,然后畫系統的內部
(2)自頂向下:順序完成頂層、中間層、底層數據流圖
(3)逐層分解
為保證構造的數據流圖表達完整、准確、規范,應遵循以下數據流圖的構造規則和注意事項:
(1)對加工處理建立唯一、層次性的編號,且每個加工處理通常要求既有輸入又有輸出
(2)數據存儲之間不應該有數據流。
(3)數據流圖的一致性。
(4)父圖、子圖關系與平衡規則。
2、數據字典(DD-Data Dictionary)
數據字典是結構化分析方法的核心——數據字典是對所有與系統相關的數據元素的一個有組織的列表,以及精確嚴格的定義,使用戶和系統分析員對輸入、輸出、存儲和中間結果有共同的理解。
數據字典的作用是對數據流圖(DFD)中出現的被命名的圖形元素的確切解釋,通常數據詞典包含的信息有:名稱、別名、何處使用/如何使用、內容描述、補充信息等。
3、判定樹
使用判定樹進行描述時,應先從問題定義的文字描述中分清哪些是判定條件,哪些是判定結論,根據描述材料中的連接詞找出判定條件之間的從屬關系、並列關系、選擇關系,根據它們構造判定樹。
4、判定表
判定表和判定樹似是而非,當數據流圖中的加工要依賴於多個邏輯條件的取值,即完成該加工的一組動作是由於某一組條件取值的組合而引發的,使用判定表描述比較適宜。
判定由四部分組成:(1)基本條件;(2)條件項;(3)基本動作;(4)動作項
參考引用:http://blog.sina.com.cn/s/blog_62b8fc3301013rm7.html
https://blog.csdn.net/qq_45957210/article/details/112004735?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-4.no_search_link&spm=1001.2101.3001.4242.3