软件工程导论复习之总体设计
1. 總體設計過程
主要任務:完成軟件結構的設計,確定系統的模塊及其模塊之間的關系。
兩個階段:系統設計階段 and 結構設計階段
九個步驟:
? ?1)設想供選擇的方案
???2)選取合理的方案
???3)推薦最佳方案
???4) 功能分解
???5)設計軟件結構
???6)設計數據庫
???7)制定測試計劃
???8)書寫文檔
???9)審查和復審
2. 設計原理
(1)模塊化
模塊:模塊是數據說明、可執行語句等程序對象的集合,可以單獨命名且可通過名字來訪問。模塊有輸入和輸出(參數傳遞)、功能、內部數據結構(局部變量)和程序代碼四個特性。
模塊化:按規定的原則將一個大型軟件劃分為一個個較小的、相對獨立但又相關的模塊。每個模塊完成一個子功能,將這些模塊構成一個整體,可以完成指定功能。
優點:使軟件結構清晰,易讀易理解;使軟件容易測試調試,提高軟件的可靠性;提高軟件的可修改性;有助于軟件開發工程的組織管理
(2)抽象
概念:將某些事物,狀態之間存在相似的方面集中概括,暫時忽略它們之間的差異
(3)逐步求精
為了能集中精力解決主要問題而盡量推遲對問題細節的考慮
(4)信息隱藏和局部化
信息隱藏:使得一個模塊內包含的信息對于不需要這些信息的模塊來說是不能訪問的
局部化:把一些關系密切的軟件元素物理得放得彼此靠近,例如使用局部數據元素
(5)模塊獨立
???模塊的獨立程度可以由內聚和耦合度量,耦合衡量不同模塊間互相依賴的緊密程度;內聚衡量一個模塊內各個元素結合的緊密程度。
??①耦合
無直接耦合:如果兩個模塊分別從屬于不同模塊的控制和調用,它們之間不傳遞任何信息,沒有直接的聯系,相互獨立,稱無直接耦合。軟件系統中不可能所有模塊沒有任何連接
數據耦合:如果兩個模塊之間有調用關系,相互傳遞的信息以參數的形式 給出,而且傳遞的信息僅僅是簡單的數據,則稱為數據耦合。
標記耦合:如果兩個模塊之間傳遞的是數據結構,而且被調用模塊不需要作為參數傳遞過來的整體數據結構,只需要使用數據結構其中一部分數據元素, 則稱為標記耦合。
控制耦合:當一個模塊調用另一個模塊時,傳遞的信息控制了該模塊的功能,則稱為控制耦合。
公共環境耦合:兩個或多個模塊共用一個數據環境,稱為公共環境耦合。
內容耦合:一個模塊直接訪問另一個模塊的內部數據,一個模塊 不通過正常入口而轉入另一個模塊內部,一個模塊有多個入口,這都屬于內容耦合。
??②內聚
偶然內聚:模塊內的元素之間沒有意義上的聯系。
邏輯內聚:將邏輯上相同或相似的一類任務放在同一個模塊中,每次被調用時,由傳送給模塊的參數來確定該模塊應完成的某一功能。
時間內聚:把需要同時執行的動作組合在一起形成的模塊稱為時間內聚模塊。
過程內聚:一個模塊內的處理元素是相關的,且必須以特定次序執行。
通信內聚:如果模塊中所有元素都使用相同的輸入數據或者產生相同的輸出數據,則稱為通信內聚。
順序內聚:一個模塊中各個處理元素都緊密相關于同一個功能個且必須順序執行,此模塊的塊內聯系屬順序內聚。
功能內聚:模塊內所有元素屬于一個整體,共同完成一個單一功能,缺一不可,則稱為功能內聚
3. 啟發規則
4. 層次圖and HIPO圖
層次圖:描繪軟件的層次結構,與層次方框圖的形式相同,但是表現內容卻不同。層次圖的一個矩形框代表一個模塊,方框間的聯系表示調用關系而不是組成關系
層次圖很適合于自頂向下設計軟件的過程中使用
HIPO圖:層次圖+輸入處理輸出圖
?5.?結構圖???????
結構圖是進行軟件結構設計的另一個有力工具。結構圖和層次圖類似,也是描繪軟件結構的圖形工具,圖中一個方框代表一個模塊,框內注明模塊的名字或主要功能;方框之間的箭頭(或直線)表示模塊的調用關系。
在結構圖中通常還用帶注釋的箭頭表示模塊調用過程中來回傳遞的信息。如果希望進一步標明傳遞的信息是數據還是控制信息,則可以利用注釋箭頭尾部的形狀來區分:尾部是空心圓表示傳遞的是數據,實心圓表示傳遞的是控制信息。
總結
以上是生活随笔為你收集整理的软件工程导论复习之总体设计的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 图论及其应用 2009年 期末考试答案
- 下一篇: ipad+mysql+客户端_MySQL