首頁  >  文章  >  軟體詳細設計的表達方式有哪些

軟體詳細設計的表達方式有哪些

青灯夜游
青灯夜游原創
2022-07-05 14:39:245338瀏覽

軟體詳細設計的表達方式有:1、程式流程圖,又稱程式框圖,是用統一規定的標準符號描述程式運行具體步驟的圖形表示;2、PAD圖(問題分析圖) ,是一演算法描述工具,也是詳細設計(軟體設計)中常用的圖形工具;3、過程設計語言,是一種用來描述模組演算法設計和處理細節的語言;4、盒圖,一種強制使用結構化建構的圖示工具,能很容易確定局部和全域資料的作用域、很容易表示嵌套關係及模板的層次關係。

軟體詳細設計的表達方式有哪些

本教學操作環境:windows7系統、Dell G3電腦。

軟體設計階段通常分為兩個步驟:

  • 一是系統的整體設計或概要設計,採用結構化的設計方法來決定軟體的系統結構,主要任務是把需求分析階段所得到的系統擴充用例圖轉換為軟體結構與資料結構;

  • 二是系統的詳細設計,也就是進行各模組內部的具體設計,它的任務是為軟體結構圖中的每一個模組確定實現的演算法和局部資料結構,並用某種工具描述出來

詳細設計是軟體設計的第二階段,這一階段的工作,就是要對系統中的每個模組給出足夠詳細的過程性描述,故也稱為過程設計)

目的:確定應該怎麼具體實現所要求的系統經過這一階段的設計工作,應該得出對目標系統的精確描述。具體的就是為了軟體結構圖中每一個模組確定採用的演算法和快內資料結構。用某種選定的詳細設計工具更清楚地描述,以便在編碼階段可以把這些描述直接翻譯成某種程式設計語言,書寫的原始程式。

任務:要設計出程式的“藍圖”,以後程式將根據這個藍圖寫出實際的程式碼。

軟體詳細設計的表達方式

#1、程式流程圖

程式流程圖又稱程序框圖,是用統一規定的標準符號描述程式運行具體步驟的圖形表示。

優點:易學、表達演算法直覺

缺點:不夠規範,特別是使用箭頭使品質受到很大影響因此必須加以限制,使其稱為規範的詳細設計工具。

程式流程圖的缺點:

  • #本質上不是逐步求精的好工具,它誘使程式設計師過早考慮控制流程,而不去考慮程序的整體結構。

  • 圖中箭頭代表控制流,因此程式設計師不受任何約束,可以完全不顧結構程式設計的精神,隨意轉移控制,容易造成非結構化的程式結構。

  • 程式流程圖不易表示資料結構和層次的結構。

2、PAD圖(問題分析圖)

是演算法描述工具,也是詳細設計(軟體設計)中常用的圖形工具。

PAD優點如下:

  • 用PAD圖設計出來的程式必然是結構化程式

  • ##PAD圖描繪的程式結構十分清晰,圖最左面的垂直線就是程式的主線,即第一層結構,隨著程式的層次增加,PAD圖逐漸向右延伸,每增加一個層次,圖形向右擴展一條豎線,PAD圖中垂直線的條數就是程式的層次數。

  • PAD圖的付款支持自頂向下,逐步求精的方法,左邊層次中的內容可以抽象,然後用def從做向右逐步細化

  • #以PAD途表示的程式邏輯易讀、易懂、易記使用方便

  • 即可表示程式邏輯,也可用來描繪資料結構。

  • 可自動產生程序,利用軟體工具自動完成,省去丟編碼工作,有助於提高軟體的可靠性和軟體生產率。

3、流程設計語言

流程設計語言(Process Design Language,簡稱PDL),也稱為程式描述語言(Program Description Language ),是一種用來描述模組演算法設計和處理細節的語言。

PDL特點:

  • 關鍵字有固定語法,以便提供結構化的控制結構,資料說明和模組化的特徵,通常在所有可能嵌套使用的控制結構的頭和尾部都有關鍵字。

  • 描述處理過程的說明性語言沒有嚴格的語法限制


  • 有資料說明機制,既包括簡單的資料結構(如簡單變數和陣列)包括複雜的資料結構(如鍊錶或層次的資料結構)

  • 具有規模定義和呼叫機制,從開發應根據系統程式設計所使用的語種,說明過程設計語言表示的相關程序結構。

4、盒子圖(N-S圖)#

盒圖是一種強制使用結構化建構的圖示工具,也稱為方框圖。其具有以下特點:功能域明確、不可能任意轉移控制、很容易確定局部和全域資料的作用域、很容易表示嵌套關係及模板的層次關係。

N-S圖的優點有:

  • 功能域表達明確,功能域從盒子圖上可以明顯看出來

  • 很容易確定局部和全域資料的作用域

  • 不可能隨意轉移控制。

  • 很容易表達模組的層次結構並列出嵌套關係。

  • 讓軟體人員遵守結構化程式設計的規定,自然地養成良好的程式設計風格。

更多相關知識,請造訪常見問題欄位!

以上是軟體詳細設計的表達方式有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:什麼是客戶端下一篇:什麼是客戶端