軟件詳細設(shè)計的表達方式有:1、程序流程圖,又稱程序框圖,是用統(tǒng)一規(guī)定的標準符號描述程序運行具體步驟的圖形表示;2、PAD圖(問題分析圖),是一算法描述工具,也是詳細設(shè)計(軟件設(shè)計)中常用的圖形工具;3、過程設(shè)計語言,是一種用于描述模塊算法設(shè)計和處理細節(jié)的語言;4、盒圖,一種強制使用結(jié)構(gòu)化構(gòu)造的圖示工具,能很容易確定局部和全局數(shù)據(jù)的作用域、很容易表示嵌套關(guān)系及模板的層次關(guān)系。
本教程操作環(huán)境:windows7系統(tǒng)、Dell G3電腦。
軟件設(shè)計階段通常分為兩步:
-
一是系統(tǒng)的總體設(shè)計或概要設(shè)計,采用結(jié)構(gòu)化的設(shè)計方法來確定軟件的系統(tǒng)結(jié)構(gòu),主要任務(wù)是把需求分析階段得到的系統(tǒng)擴展用例圖轉(zhuǎn)換為軟件結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu);
-
二是系統(tǒng)的詳細設(shè)計,即進行各模塊內(nèi)部的具體設(shè)計,它的任務(wù)是為軟件結(jié)構(gòu)圖中的每一個模塊確定實現(xiàn)的算法和局部數(shù)據(jù)結(jié)構(gòu),并用某種工具描述出來
詳細設(shè)計是軟件設(shè)計的第二階段,這一階段的工作,就是要對系統(tǒng)中的每個模塊給出足夠詳細的過程性描述,故也稱為過程設(shè)計)
目的:確定應(yīng)該怎么具體實現(xiàn)所要求的系統(tǒng)經(jīng)過這一階段的設(shè)計工作,應(yīng)該得出對目標系統(tǒng)的精確描述。具體的就是為了軟件結(jié)構(gòu)圖中每一個模塊確定采用的算法和快內(nèi)數(shù)據(jù)結(jié)構(gòu)。用某種選定的詳細設(shè)計工具更清晰地描述,從而在編碼階段可以把這些描述直接翻譯成某種程序設(shè)計語言,書寫的源程序。
任務(wù):要設(shè)計出程序的“藍圖”,以后程序?qū)⒏鶕?jù)這個藍圖寫出實際的代碼。
軟件詳細設(shè)計的表達方式
1、程序流程圖
程序流程圖又稱程序框圖,是用統(tǒng)一規(guī)定的標準符號描述程序運行具體步驟的圖形表示。
優(yōu)點:易學、表達算法直觀
缺點:不夠規(guī)范,特別是使用箭頭使質(zhì)量受到很大影響因此必須加以限制,使其稱為規(guī)范的詳細設(shè)計工具。
程序流圖的缺點:
-
本質(zhì)上不是逐步求精的好工具,它誘使程序員過早考慮控制流程,而不去考慮程序的整體結(jié)構(gòu)。
-
圖中箭頭代表控制流,因此程序員不受任何約束,可以完全不顧結(jié)構(gòu)程序設(shè)計的精神,隨意轉(zhuǎn)移控制,容易造成非結(jié)構(gòu)化的程序結(jié)構(gòu)。
-
程序流圖不易表示數(shù)據(jù)結(jié)構(gòu)和層次的結(jié)構(gòu)。
2、PAD圖(問題分析圖)
是一算法描述工具,也是詳細設(shè)計(軟件設(shè)計)中常用的圖形工具。
PAD優(yōu)點如下:
-
用PAD圖設(shè)計出來的程序必然是結(jié)構(gòu)化程序
-
PAD圖描繪的程序結(jié)構(gòu)十分清晰,圖最左面的豎線就是程序的主線,即第一層結(jié)構(gòu),隨著程序的層次增加,PAD圖逐漸向右延伸,每增加一個層次,圖形向右擴展一條豎線,PAD圖中豎線的條數(shù)就是程序的層次數(shù)。
-
PAD圖的付款支持自頂向下,逐步求精的方法,左邊層次中的內(nèi)容可以抽象,然后用def從做向右逐步細化
-
用PAD途表示的程序邏輯易讀、易懂、易記使用方便
-
即可表示程序邏輯,也可用于描繪數(shù)據(jù)結(jié)構(gòu)。
-
可自動生成程序,利用軟件工具自動完成,省去扔編碼工作,有利于提高軟件的可靠性和軟件生產(chǎn)率。
3、過程設(shè)計語言
過程設(shè)計語言(Process Design Language,簡稱PDL),也稱程序描述語言(Program Description Language),是一種用于描述模塊算法設(shè)計和處理細節(jié)的語言。
PDL特點:
-
關(guān)鍵字有固定語法,以便提供結(jié)構(gòu)化的控制結(jié)構(gòu),數(shù)據(jù)說明和模塊化的特征,通常在所有可能嵌套使用的控制結(jié)構(gòu)的頭和尾部都有關(guān)鍵字。
-
描述處理過程的說明性語言沒有嚴格的語法限制
-
具有數(shù)據(jù)說明機制,既包括簡單的數(shù)據(jù)結(jié)構(gòu)(如簡單變量和數(shù)組)包括復雜的數(shù)據(jù)結(jié)構(gòu)(如鏈表或?qū)哟蔚臄?shù)據(jù)結(jié)構(gòu))
-
具有規(guī)模定義和調(diào)用機制,從開發(fā)應(yīng)根據(jù)系統(tǒng)編程所用的語種,說明過程設(shè)計語言表示的有關(guān)程序結(jié)構(gòu)。
4、盒圖(N-S圖)
盒圖是一種強制使用結(jié)構(gòu)化構(gòu)造的圖示工具,也稱為方框圖。其具有以下特點:功能域明確、不可能任意轉(zhuǎn)移控制、很容易確定局部和全局數(shù)據(jù)的作用域、很容易表示嵌套關(guān)系及模板的層次關(guān)系。
N-S圖的優(yōu)點有:
-
功能域表達明確,功能域從盒子圖上可以明顯看出來
-
很容易確定局部和全局數(shù)據(jù)的作用域
-
不可能隨意轉(zhuǎn)移控制。
-
很容易表達模塊的層次結(jié)構(gòu)并列出嵌套關(guān)系。
-
使軟件人員遵守結(jié)構(gòu)化程序設(shè)計的規(guī)定,自然地養(yǎng)成良好的程序設(shè)計風格。