全國計算機考試四級的軟體設計複習綱要

來源:果殼範文吧 2.43W

在明確了使用者的需求以後,下一步的任務就是對未來的軟體系統進行設計。軟體設計通常可分為概要設計和詳細設計。概要設計的任務是確定軟體系統的結構,進行模組劃分,確定每個模組的功能、介面以及模組間的呼叫關係。詳細設計的任務是為每個模組設計實現的細節。此外,在概要設計階段還應對全域性資料結構進行設計,詳細設計階段還應對區域性資料結構進行設計。有的設計方法不區分概要設計和詳細設計,統稱為軟體設計。人們在開發過程中,總結出許多軟體設計的概念和原則,這些概念和原則對提高軟體的設計質量有很大的幫助。

全國計算機考試四級的軟體設計複習綱要

1.抽象

抽象是指忽視一個主題中與當前目標無關的那些方面,以便更充分地注意與當前目標有關的方面。抽象是認識複雜問題的過程中人類使用的最有力的思維工具,它抽取出事物的本質特性而暫時不考慮它的細節。軟體工程中從軟體定義到軟體開發要經歷多個階段,在這個過程中每前進一步都可看作是對軟體解法的抽象層次的一次細化。抽象的最低層次就是實現該軟體的源程式程式碼。在進行模組化設計時可以有多個抽象層次,最高抽象層次的模組用概括的方式敘述問題的解法,較低抽象層次的模組是對較高的抽象層次模組對問題解決描述的細化。過程抽象和資料抽象是常用的兩種主要抽象手段。過程抽象是指任何一個完成明確功能的操作都可被使用者當作單個的實體看待,儘管這個操作實際上可能由一系列更低階的操作來完成。過程抽象常常也稱為功能/子功能抽象。例如函式、子程式。資料抽象定義了資料型別和施加於該型別的操作,並限定了物件值的.範圍,只能**使用這些操作修改和觀察這些資料。例如抽象資料型別。

2.模組化

模組化是指將一個待開發的軟體分解成若干個小的簡單的部分———模組,每個模組可獨立地開發、測試,最後組裝成完整的程式。這是一種複雜問題的“分而治之”的原則,模組化的目的是使程式的結構清晰,容易閱讀,容易理解,容易測試,容易修改。模組是指執行某一特定任務(也可以是實現某一特定的抽象資料型別)的資料結構和程式程式碼。一個模組有它的外部特徵和內部特徵。外部特徵包括模組的介面(即它的輸入/輸出引數,引用的全域性變數和它需呼叫的其他模組)和模組的功能,內部特徵包括模組的區域性資料和實現該模組的程式程式碼。呼叫一個模組只需知道它的外部特徵,而不必瞭解其內部特徵。

3.資訊隱蔽

資訊隱蔽是開發整體程式結構時使用的法則,即將每個程式的成分隱蔽或封裝在一個單一的設計模組中,定義每一個模組時儘可能少地顯露其內部的處理。在設計時首先列出一些可能發生變化的因素,在劃分模組時將一個可能發生變化的因素隱蔽在某個模組的內部,使其他模組與這個因素無關。在這個因素髮生變化時,我們只需修改含有這個因素的模組,而與其他模組無關。隱蔽的物件可以有:什麼的決策,可能修改的決策,資料結構的內部連線以及對它所做的操作細節,內部特徵碼,與計算機硬體有關的細節等。資訊隱蔽原則對提高軟體的可修改性、可測試性和可移植性都有重要的作用。

4.模組獨立

模組獨立是指每個模組完成一個相對獨立的特定子功能,並且與其他模組之間的聯絡簡單。衡量模組獨立程式的度量標準有兩個:耦合和內聚。耦合是指模組之間聯絡的緊密程度。耦合度越高則模組的獨立性越差。內聚是指模組內部各元素之間聯絡的緊密程度。例如一個完成多個功能的模組的內聚度就比完成單一功能的模組的內聚度低。內聚度越低模組的獨立性越差。因此,模組獨立就是希望每個模組都是高內聚低耦合的。

(1)耦合

兩個模組之間的耦合方式通常有如下7種,下面按它們的耦合度從低到高的次序依次作介紹。

① 非直接耦合:非直接耦合是指兩個模組沒有直接的聯絡,它們中的任一個都能不依賴於對方而獨立地工作。

② 資料耦合:資料耦合是指兩個模組藉助於引數表傳遞簡單資料。

③ 標記耦合(stamp coupling):當一個數據結構的一部分(如記錄的一部分)藉助於模組介面被傳遞時就發生標記耦合。

④ 控制耦合:控制耦合指兩個模組間傳遞的資訊中包含用於控制模組內部邏輯的控制資訊。

⑤ 外部耦合:當模組與軟體以外的環境有關時就發生外部耦合。例如,輸入/輸出把一個模組與特定的裝置、格式、通訊**耦合在一起。

⑥ 公共耦合:多個模組引用一全域性資料區的模式稱為公共耦合。例如FORTRAN語言中的COMMON語句,C語言中的external資料型別,一個磁碟檔案等都是全域性資料區。

⑦內容耦合:內容耦合指兩上模組之間出現了下列情況之一:

一個模組訪問另一個模組的內部資料;

一個模組不**正常入口轉到另一模組的內部;

兩個模組有一部分程式程式碼重疊;

一個模組有多個入口。

熱門標籤