欧美老妇人XXXX-天天做天天爱天天爽综合网-97SE亚洲国产综合在线-国产乱子伦精品无码专区

當前位置: 首頁 > 自學考試 > 自學考試備考資料 > 自考“軟件工程”復習大綱及試驗指導(3)

自考“軟件工程”復習大綱及試驗指導(3)

更新時間:2009-10-19 15:27:29 來源:|0 瀏覽0收藏0

自學考試報名、考試、查分時間 免費短信提醒

地區

獲取驗證 立即預約

請填寫圖片驗證碼后獲取短信驗證碼

看不清楚,換張圖片

免費獲取短信驗證碼

  第三章 結構化設計

  1. 軟件設計階段的主要任務、方法、階段:

  需求分析階段的主要任務是確定系統必須“做什么”,形成軟件的需求規格說明書,軟件設計階段的主要任務是確定系統“怎么做”,從軟件需求規格說明書出發,形成軟件的具體設計方案,軟件設計可以采用多種方法,如結構化設計方法、面向數據結構的設計方法、面向對象的設計方法等,結構化軟件設計可以分為總體設計和詳細設計兩個階段。

  2. 總體設計階段的主要任務及其內容:

  總體設計階段的主要任務是把系統的功能需求分配給軟件結構,形成軟件的模塊結構圖(MSD),在結構圖中矩形表示功能單元,稱為“模塊”,連接上下層模塊的線段表示它們之間的調用關系,在總體設計階段,每個模塊還處于黑盒子級,模塊通過外部特征標識,名字、輸入、輸出。

  3. 總體設計的表示形式及其內容(層次圖、HIPO圖、結構圖):

  層次圖是軟件總體設計階段最常使用的表示形式之一,用來描繪軟件的層次結構,圖中的每個方框代表一個模塊,方框間的連線表示模塊的調用關系,層次圖很適合于在自頂向下設計軟件的過程中使用;

  HIPO圖是由美國IBM公司發明的“層次圖+輸入/處理/輸出圖”的英文縮寫,HIPO圖實際上由H圖和IPO圖兩部分組成,H圖就是上面提到的層次圖,為了能使HIPO圖具有可跟蹤性,在H圖里除了最頂層的方框之外,每個方框都加了編號;

  結構圖和層次圖類似,圖中每個方框代表一個模塊,方框之間的箭頭(或直線)表示模塊的調用關系,在結構圖中通常還用帶注釋的箭頭表示模塊調用過程中來回傳遞的信息,尾部是空心圓表示傳遞的是數據,實心圓表示傳遞的是控制信息。

  4. 模塊及其組成:

  模塊是執行一個特殊任務或實現一個特殊的抽象數據類型的一組例程和數據結構,模塊由兩部分組成,接口和實現模塊功能的執行機制。

  5. 面向數據流的設計方法(綜合應用):

  面向數據流的設計方法把數據流圖映射成為軟件結構,數據流圖的類型決定了映射的方法,數據流圖可以分為變換型數據流圖和事務型數據流圖,具有較明顯的輸入、變換(或稱主加工)和輸出界面的數據流圖稱為變換型數據流圖,數據沿輸入通路到達一個處理模塊,這個處理模塊根據輸入數據的類型在若干動作序列中選出一個來執行,這類數據流圖稱為事務型數據流圖,并且稱這個模塊為事務中心,它完成如下任務,接收輸入數據、分析數據并確定數據類型、根據數據類型選取一條活動通路。

  6. 評價軟件設計質量的主要準則(模塊化、抽象、耦合、內聚)及詳細內容:

  模塊化是好的軟件設計的一個基本準則;

  抽象就是抽出事務的本質特性而暫時不考慮它們的細節,模塊是按照不同的抽象級別安排的,高層抽象模塊向讀者隱藏了功能實現的細節,這就是信息隱蔽,模塊之間相互隱藏自身的實現細節對一個好的設計來說是至關重要的;

  耦合是對不同模塊之間相互依賴程度的度量,緊密耦合是指兩個模塊之間存在著很強的依賴關系,松散耦合是指兩個模塊之間存在一些依賴關系,但他們之間的連接比較弱,無耦合是指模塊之間根本沒有任何連接;

  耦合的強度依賴于以下四個因素,一個模塊對另一個模塊的引用,一個模塊向另一個模塊傳遞的數據量,一個模塊施加到另一個模塊的控制的數量,模塊之間接口的復雜程度;

  從強到弱的幾種常見的耦合類型,內容耦合,一個模塊直接修改或操作另一個模塊的數據;公共耦合,兩個以上的模塊共同引用一個全局數據項;控制耦合,一個模塊在界面上傳遞一個信號控制另一個模塊,接收信號的模塊的動作根據信號值進行調整,稱為控制耦合;標記耦合,若兩個模塊至少有一個通過界面傳遞的公共參數包含內部結構;數據耦合,模塊間通過參數傳遞基本類型的數據,數據耦合是最簡單的耦合形式,系統中至少必須存在這種類型的耦合;

  內聚度量的是一個模塊內部各成分之間相互關聯的強度,如果一個模塊的所有成分都直接參與并且對于完成同一功能來說都是最基本的,則該模塊是高內聚的;

  從低到高的幾種常見的內聚類型,偶然內聚,一個模塊的各個成分之間毫無關系;邏輯內聚,幾個邏輯上相關的功能被放在同一模塊中;時間內聚,一個模塊完成的功能必須在同一時間內執行,但這些功能只是因為時間因素關聯在一起;過程內聚,一個模塊內部的處理成分是相關的,而且這些處理必須以特定的次序執行;通信內聚,一個模塊的所有成分都操作同一數據集或生成同一數據集;順序內聚,一個模塊的各個成分和同一個功能密切相關,而且一個成分的輸出作為另一個的成分;功能內聚,最理想的內聚是功能內聚,模塊的所有成分對于完成單一的功能都是基本的;

  內聚和耦合是密切相關的,在進行軟件設計時,應力爭做到強內聚、弱耦合。

  7. 結構化設計的啟發式規則:

  改進軟件結構提高模塊獨立性,模塊規模應該適中,深度、寬度、扇入和扇出應適中,模塊的作用域應該在控制域之內,力爭降低模塊接口的復雜性,模塊功能應該可以預測;

  模塊的作用域定義為受該模塊內一個判定影響的所有模塊的集合,模塊的控制域是這個模塊本身以及所有直接或間接從屬于它的模塊的集合。

  8. 結構化分析與結構化設計的區別:

  結構化分析得到數據流圖、數據字典等,屬于邏輯模型,結構化設計得到模塊結構圖,屬于程序模型。

  9. 詳細設計階段的目標、表現、內容:

  詳細設計階段的根本目標是確定怎樣具體的實現所要求的系統,詳細設計以總體設計階段的工作為基礎,但又不同于總體設計,主要表現在,在總體設計階段,數據項和數據結構以比較抽象的方式描述,詳細設計要提供關于算法的更多細節;

  詳細設計的模塊包含實現對應的總體設計的模塊所需要的處理邏輯,主要有,詳細的算法,數據表示和數據結構,實施的功能和使用的數據之間的關系。

  10.結構化程序的三種基本結構,結構化設計的目標:

  結構化程序設計技術采用自頂向下逐步求精的設計方法和單入口單出口的控制結構,并且只包含順序、選擇和循環三種結構,結構化程序設計的目標之一是使程序的控制流程線性化,即程序的動態執行順序符合靜態書寫結構,結構化程序設計的觀點是要求設計好結構的程序。

  11.詳細設計的任務,詳細設計的工具及其內容特點:

  詳細設計的任務是給出軟件模塊結構中各個模塊的內部過程描述,也就是模塊內部的算法設計,詳細設計的工具可以分為圖形、表格、語言三種,包括程序流程圖、盒圖(N-S圖)、PAD圖、類程序設計語言(PDL);

  程序流程圖中使用的主要符號包括順序、選擇、循環結構,它的主要缺點如下,程序流程圖本質上不是逐步求精的好工具,它誘使程序員過早的考慮程序的控制流程,而不去考慮程序的全局結構,程序流程圖中用箭頭代表控制流,因此程序員不受任何約束,可以完全不顧結構程序設計的精神,隨意轉移控制,程序流程圖不易表示數據結構;

  PAD是問題分析圖的英文縮寫,它用二維樹形結構的圖表示程序的控制流,PAD圖的主要優點如下,使用表示結構化控制結構的PAD符號所設計出來的程序必然是結構化程序,PAD圖所描述的程序結構十分清晰,用PAD圖表現程序邏輯,易讀、易懂、易記,很容易將PAD圖轉換成高級語言源程序,既可用于表示程序邏輯,也可用于描述數據結構,PAD圖的符號支持自頂向下逐步求精的使用,PAD圖是面向高級程序設計語言的;

  類程序設計語言也稱為偽碼,它是用正文形式表示數據結構和處理過程的設計工具,PDL具有以下特點,關鍵字的固定語法,提供了結構化控制結構、數據說明和模塊化的手段,自然語言的自由語法,用于描述處理過程和判定條件,數據說明的手段,既包括簡單的數據結構,又包括復雜的數據結構,模塊定義和調用的技術,提供各種接口描述模式;

  PDL作為一種設計工具有如下一些優點,可以作為注釋直接插在源程序中間,可以使用普通的正文編輯程序或文字處理系統,很方面的完成PDL的書寫和編輯工作,已經有自動處理程序存在,而且可以自動由PDL生成程序代碼,PDL的缺點是不如圖形工具形象直觀,描述復雜的條件組合與動作間的對應關系時,不如判定表或判定樹清晰簡單。

  本章設計題為DFD到模塊結構圖的轉換和詳細設計工具的具體應用,為筆試和試驗的必考題型,非常重要,請考生參考輔導第256頁(1)~(7)題,務必每一種題型都熟練掌握。

  本章與上一章的設計題是軟件工程科目的重點,大約占筆試的35%,占試驗的70%,并且前面四章的所有內容大約占筆試的60%,希望讀者重點掌握。

?全國各地2008年10月自考網上成績查詢匯總
?環球網校2009年自考課程查看

更多信息請訪問:自學考試頻道    自學考試論壇    自學考試博客圈

分享到: 編輯:環球網校

資料下載 精選課程 老師直播 真題練習

自學考試資格查詢

自學考試歷年真題下載 更多

自學考試每日一練 打卡日歷

0
累計打卡
0
打卡人數
去打卡

預計用時3分鐘

環球網校移動課堂APP 直播、聽課。職達未來!

安卓版

下載

iPhone版

下載

返回頂部