當前位置:編程學習大全網 - 編程語言 - linux 怎麽寫軟件模塊詳細設計

linux 怎麽寫軟件模塊詳細設計

概要設計階段通常得到軟件結構圖

詳細設計階段常用的描述方式有:流程圖、N-S圖、PAD圖、偽代碼等

概要設計和詳細設計

在軟件設計中,大家經常問到的壹個問題是:概要設計應該怎樣壹個概要法,詳細設計應該怎樣壹個詳細法?

這個問題在公司內部經常有人問。現在陳述壹下。

我們公司的研發流程是瀑布型的,這個模型中的分析、設計階段是基於經典的結構化方法。

結構化設計方法的基本思路是:按照問題域,將軟件逐級細化,分解為不必再分解的的模塊,每個模塊完成壹定的功能,為壹個或多個父模塊服務(即接受調用),也接受壹個或多個子模塊的服務(即調用子模塊)。模塊的概念,和編程語言中的子程序或函數是對應的。

這樣壹來,設計可以明顯地劃分成兩個階段:

概要(結構)設計階段:把軟件按照壹定的原則分解為模塊層次,賦予每個模塊壹定的任務,並確定模塊間調用關系和接口。

詳細設計階段:依據概要設計階段的分解,設計每個模塊內的算法、流程等。

概要設計階段:

在這個階段,設計者會大致考慮並照顧模塊的內部實現,但不過多糾纏於此。主要集中於劃分模塊、分配任務、定義調用關系。模塊間的接口與傳參在這個階段要定得十分細致明確,應編寫嚴謹的數據字典,避免後續設計產生不解或誤解。概要設計壹般不是壹次就能做到位,而是反復地進行結構調整。典型的調整是合並功能重復的模塊,或者進壹步分解出可以復用的模塊。在概要設計階段,應最大限度地提取可以重用的模塊,建立合理的結構體系,節省後續環節的工作量。

概要設計文檔最重要的部分是分層數據流圖、結構圖、數據字典以及相應的文字說明等。以概要設計文檔為依據,各個模塊的詳細設計就可以並行展開了。

詳細設計階段:

在這個階段,各個模塊可以分給不同的人去並行設計。在詳細設計階段,設計者的工作對象是壹個模塊,根據概要設計賦予的局部任務和對外接口,設計並表達出模塊的算法、流程、狀態轉換等內容。這裏要註意,如果發現有結構調整(如分解出子模塊等)的必要,必須返回到概要設計階段,將調整反應到概要設計文檔中,而不 能就地解決,不打招呼。

詳細設計文檔最重要的部分是模塊的流程圖、狀態圖、局部變量及相應的文字說明等。壹個模塊壹篇詳細設計文檔。

概要設計文檔相當於機械設計中的裝配圖,而詳細設計文檔相當於機械設計中的零件圖。文檔的編排、裝訂方式也可以參考機械圖紙的方法。

我們公司對模塊的認識和傳統定義有所不同,認為是較大的軟件功能單元才可以稱作模塊。這種認識使大家對概要設計和詳細設計的分工產生了混亂的理解,降低了文檔的可用性,應該予以糾正。

概要設計中較頂層的部分便是所謂的方案。方案文檔的作用是在宏觀的角度上保持設計的合理性。

有的項目采用面向對象的分析、設計方法。可能在概要設計、詳細設計的分工上疑問更多。其實,面向對象的分析、設計方法並沒有強調結構化方法那樣的階段性,因此壹般不引入概要、詳細設計的概念。如果按照公司的文檔體系,非要有這種分工的話,可以將包的劃分、類及對象間的關系、類的對外屬性、方法及協作設計看做 概要設計;類屬性、方法的內部實現看做詳細設計。

1.需求分析--產生軟件功能規格說明書,需要確定用戶對軟件的需求,要作到明確、無歧義。不涉及具體實現方法。用戶能看得明白,開發人員也可據此進行下面的工作(概要設計)。

2.概要設計--產生軟件概要設計說明書,說明系統模塊劃分、選擇的技術路線等,整體說明軟件的實現思路。並且需要指出關鍵技術難點等。

3.詳細設計--產生軟件詳細設計說明書,對概要設計的進壹步細化,壹般由各部分的擔當人員依據概要設計分別完成,然後在集成,是具體的實現細節。理論上要求可以照此編碼。

概要設計和詳細設計的區別與聯系

軟件設計采用自頂向下、逐次功能展開的設計方法,首先完成總體設計,然後完成各有機組成部分的設計。

根據工作性質和內容的不同,軟件設計分為概要設計和詳細設計。概要設計實現軟件的總體設計、模塊劃分、用戶界面設計、數據庫設計等等;詳細設計則根據概要設計所做的模塊劃分,實現各模塊的算法設計,實現用戶界面設計、數據結構設計的細化,等等。

概要設計是詳細設計的基礎,必須在詳細設計之前完成,概要設計經復查確認後才可以開始詳細設計。概要設計,必須完成概要設計文檔,包括系統的總體設計文檔、以及各個模塊的概要設計文檔。每個模塊的設計文檔都應該獨立成冊。

詳細設計必須遵循概要設計來進行。詳細設計方案的更改,不得影響到概要設計方案;如果需要更改概要設計,必須經過項目經理的同意。詳細設計,應該完成詳細設計文檔,主要是模塊的詳細設計方案說明。和概要設計壹樣,每個模塊的詳細設計文檔都應該獨立成冊。

概要設計裏面的數據庫設計應該重點在描述數據關系上,說明數據的來龍去脈,在這裏應該結合我們的壹個結果數據,說明這些結果數據的源點,我們這樣設計的目的和原因。詳細設計裏的數據庫設計就應該是壹份完善的數據結構文檔,就是壹個包括類型、命名、精度、字段說明、表說明等內容的數據字典。

概要設計裏的功能應該是重點在功能描述,對需求的解釋和整合,整體劃分功能模塊,並對各功能模塊進行詳細的圖文描述,應該讓讀者大致了解系統作完後大體的結構和操作模式。詳細設計則是重點在描述系統的實現方式,各模塊詳細說明實現功能所需的類及具體的方法函數,包括涉及到的sql語句等。

  • 上一篇:數字濾波器的概述
  • 下一篇:控制編程
  • copyright 2024編程學習大全網