2017.10.8 软件工程----总体设计
(1)經過需求分析階段的工作,系統必須做什么已經清楚了,現在是決定怎樣做的時候,總體設計的基本目的就是回答“概括地說,
系統應該如何實現”這個問題,因此,總體設計有稱為概要設計或初步設計。通過這個階段分為組成系統的物理元素-程序、文件、數據庫
人工過程文檔等。
(2)總體設計過程通常有兩個主要階段組成:系統設計階段,確定系統的具體實現方案;結構設計階段,確定軟件結構
(3)總體設計過程包括下述九個步驟:
·設想供選擇的方案
需求分析階段得出的數據流圖是總體設計的極好出發點;設想把數據流圖中的處理分組的各中可能。
·選取合理的方案
每份合理的方案,分析員都應該準備下列四份資料
1.系統流程圖;
2.組成系統的物理元素清單;
3.成本/效益分析;
4.實現這個系統的進度計劃。
·推薦最佳方案
·功能分解
為了完成系統系統,必須設計出組成這個系統的所有程序和文件(或數據庫)。對程序的設計,
通常分為兩個階段完成:首先進行結構設計,然后進行過程設計,結構設計是確定有哪些模塊組成,
以及這些模塊之間的關系;過程設計確定每個模塊的處理過程。結構設計是總體設計階段的任務;
過程設計是詳細設計階段任務。
·設計軟件結構
軟件結構(由模塊組成的層次系統)可以用層次圖或結構圖來描繪
·設計數據庫
·制定測試計劃
·書寫文檔
1.系統說明 ?主要包含用系統流程圖描繪的系統構成方案,組成系統的物理元素清單;精化的數據流圖;用層次圖或結構圖描繪的軟件結構
2.用戶手冊 ?根據總體設計階段的結果,修正在需求分析階段產生的初步的用戶手冊
3.測試計劃 ?包括測試策略、測試方案、預期的測試結果、測試進度計劃等;
4.詳細的實現計劃
5.數據庫設計結果
·審查和復查
(4)設計原理
·?模塊化
(1)模塊是由邊界元素限定的相鄰程序元素(例如,數據說明,可執行語句)的序列,而且有一個總體標識符代表他;
(2)模塊化就是把程序劃分為獨立命名且可獨立訪問的模塊,每個模塊完一個子功能,把這些模塊集成起來構成一個整體。可以完成指定的功能滿足用戶的需求。
(3)每個程序都相應地有一個最適當的模塊數目M,使得系統的開發成本最小。
·抽象
(1)抽象就是抽出事物的本質特性而暫時不考慮他們的細節;
(2)把這些相似的方面集中和概括起來,暫時忽略他們之間的差異,這就是抽象
(3)處理復雜系統的唯一有效的方法是用層次的方法構造和分析它
·逐步求精
(1)為了能集中精力要問題而盡量推遲對問題細節的考慮
(2)Miller法則:一個人在任何時候都只能把注意力集中在(7+-2)個知識塊土上
(3)求精實際上是細化過程
·信息隱藏和局部化
(1)信息隱藏原理指出:應該這樣設計確定模塊,使得一個模塊內包含的信息對于不需要這些信息的模塊來說,是不能訪問的。
(2)所謂局部化是指把一些關系密切的軟件元素物理地放的很近。模塊中使用局部數據元素是局部化的一個例子,局部化有助于實現信息隱藏
(5)模塊獨立
·模塊獨立的概念是模塊化、抽象、信息隱藏和局部化概念的直接結果。
·模塊的獨立獨立程度可以由兩個定性標準度量,內聚與耦合。
(1)耦合衡量不同模塊彼此間相互依賴的緊密程度;內聚衡量一個模塊內部各個元素彼此結合的緊密程度
數據耦合:兩個模塊之間通過參數交換信息而且交換的信息僅僅是數據(低耦合)
控制耦合:如果傳遞的信息中有控制信息(盡管有時這種控制信息以數據的形式出現)
特征耦合:當把整個數據結構作為參數傳遞而被調用的模塊只需要使用其中一部分數據元素時
公共環境耦合:當兩個或多個模塊通過一個公共數據環境相互作用時,可以是全程變量、共享通信區
內容耦合:一個模塊訪問另一個模塊的內容;一個模塊不通過正常入口而轉到另一個模塊的內部;
數據字典是信息的集合,也就是對數據流圖中包含的所有元素的定義的集合。
數據字典的作用使軟件分析與設計的過程中給人提供關于數據的描述信息
數據字典有以下四個元素組成:
數據流;
數據流分量
數據存儲
處理
轉載于:https://www.cnblogs.com/qichunlin/p/7639014.html
總結
以上是生活随笔為你收集整理的2017.10.8 软件工程----总体设计的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 有关前端的一点随笔
- 下一篇: File IO(NIO.2):路径类 和