什么是結構化設計結構化設計的步驟
結構化設計是一種面向數(shù)據(jù)流的設計方法,目的在于確定軟件的結構。那么你對結構化設計了解多少呢?以下是由學習啦小編整理關于什么是結構化設計的內(nèi)容,希望大家喜歡!
結構化設計的基本原理和相關概念
抽象化:常用的抽象化手段有過程抽象、數(shù)據(jù)抽象和控制抽象
● 過程抽象:任何一個完成明確功能的操作都可被使用者當做單位的實體看待,盡管這個操作時機上可能由一系列更低級的操作來完成。
● 數(shù)據(jù)抽象:與過程抽象一樣,允許設計人員在不同層次上描述數(shù)據(jù)對象的細節(jié)。
● 與過程抽象和數(shù)據(jù)抽象一樣,控制抽象可以包含一個程序控制機制而無須規(guī)定其內(nèi)部細節(jié)。
自頂向下,逐步細化:將軟件的體系結構按自頂向下方式,對各個層次的過程細節(jié)和數(shù)據(jù)細節(jié)逐層細化,直到用程序設計語言的語句能夠實現(xiàn)為止,從而最后確立整個的體系結構。
模塊化:將一個待開發(fā)的軟件分解成若干個小的簡單的部分——模塊,每個模塊可獨立地開發(fā)、測試,最后組裝成完整的程序。這是一種復雜問題的“分而治之”的原則。模塊化的目的是使程序結構清晰,容易閱讀,容易理解,容易測試,容易修改。
控制層次:表明了程序構件(模塊)的組織情況??刂茖哟瓮贸绦虻膶哟谓Y構(樹形或網(wǎng)型)來表示。
● 深度:程序結構的層次數(shù),可以反映程序機構的規(guī)模和復雜程度。
● 寬度:同一層模塊的最大模塊個數(shù)
● 模塊的扇出:一個模塊調(diào)用(或控制)的其他模塊數(shù)
● 模塊的扇入:調(diào)用(或控制)一個給定模塊的模塊個數(shù)
信息屏蔽:將每個程序的成分隱蔽或封裝在一個單一的設計模塊中,定義每一個模塊時盡可能少的顯露其內(nèi)部的處理,可以提高軟件的可修改性,可測試性和可移植性。
模塊獨立:每個模塊完成一個相對特定獨立的子功能,并且與其他模塊之間的聯(lián)系簡單。衡量度量標準有兩個:模塊間的耦合和模塊的內(nèi)聚。模塊獨立性強必須做到高內(nèi)聚低耦合。
● 耦合:模塊之間聯(lián)系的緊密程度,耦合度越高模塊的獨立性越差。耦合度從低到高的次序為:非直接耦合、數(shù)據(jù)耦合、標記耦合、控制耦合、外部耦合、公共耦合、內(nèi)容耦合。
● 內(nèi)聚是指內(nèi)部各元素之間聯(lián)系的緊密程度,內(nèi)聚度越低模塊的獨立性越差。內(nèi)聚度從低到高依次是:偶然內(nèi)聚、邏輯內(nèi)聚、瞬時內(nèi)聚、過程內(nèi)聚、通信內(nèi)聚、順序內(nèi)聚、功能內(nèi)聚。
結構化設計的基本步驟
分為概要設計和詳細設計兩個階段。
概要設計
概要設計也稱為結構設計或總體設計,主要任務是把系統(tǒng)的功能需求分配給軟件結構,形成軟件的模塊結構圖。
概要設計的基本任務:設計軟件系統(tǒng)結構:劃分功能模塊,確定模塊間調(diào)用關系;數(shù)據(jù)結構及數(shù)據(jù)庫設計:實現(xiàn)需求定義和規(guī)格說明過程中提出的數(shù)據(jù)對象的邏輯表示;編寫概要設計文檔: 包括概要設計說明書、數(shù)據(jù)庫設計說明書,集成測試計劃等;概要設計文檔評審:對設計方案是否完整實現(xiàn)需求分析中規(guī)定的功能、性能的要求,設計方案的可行性等進行評審。
概要設計工具:結構圖(SC: Structure Chart ),反映系統(tǒng)的功能實現(xiàn)以及模塊與模塊之間的聯(lián)系與通信,即反映了系統(tǒng)的總體結構。注意:數(shù)據(jù)流DFD是軟件生命周期的定義階段中的需求分析方法中結構化分析方法的一種,此外還有數(shù)據(jù)字典(DD)、判定樹和判定表,而SC是開發(fā)階段中概要設計使用的方法。
詳細設計
詳細設計的目的:為軟件結構圖(SC)中的每 一個模塊確定采用的算法,模塊內(nèi)數(shù)據(jù)結構,用某種選定的表達工具(如N-S圖等)給出清晰的描述。
看過“結構化設計的步驟”的人還看了: