程式結構設計
系統的系統結構圖
如何判斷是否是一個考得系統結構圖:好的系統結構圖是兩端窄中間寬的結構
模組化。能夠把一個大而複雜的軟體系統劃分為簡單的易理解的軟體結構,原則抽象化
抽象化:
抽象化的三重抽象層次
(1)用問題說出環境的屬於描述這個軟體(高層次的抽象)
(2)任務需求的細化和描述,未給出怎麼做的資訊,不能直接實現
(3)程式的過程表示,程式設計階段
資料抽象:在不同層析上描述資料物件的細節,定義與該資料的相關的操作
**事務(**Transaction),一般是指要做的或所做的事情。在計算機術語中是指訪問並可能更新資料庫中各種資料項的一個程式執行單元(unit)
事務系統結構圖:
(1)接受一項任務,根據事務處理的特點和性質選擇分派一個適當的處理單元。
變換分析步驟
(2)重畫資料流圖
(3)區分有限的輸入,有效的輸出和中心變換的部分。
(4)進行一級分解,設計上層模型
(5)進行二級分解,設計輸入,輸出的部分
事務分析:從定向下分析資料結構
分析流程
(1)識別事務源
(2)規定適當的事務型結構
(3)識別各種對實物的分析和定義
(4)注意利用公共模組
(5)對每一事務或對聯絡密切的一組實物建立一個事務處理模組
(6)對操作模組規定它的全部細節模組
軟體模組結構的改進:
模組功能的完善化:
完整的模組應該有以下幾部分
(1)執行規定的功能部分
(2)出錯處理部分
(3)給他的呼叫者返回一個結束狀態的資訊
消除重複的功能改善軟體的結構:
(1)完全相似
(2)區域性相似
原則:模組的作用範圍不許再控制範圍之內
儘量的減少高扇出結構,隨著深度的增加扇出增加
避免或者減少使用病態聯接
減少三種並病態聯接:
(1)直接病態聯接
(2)公共資料域病態聯接
(3)通訊模組病態聯接
模組的大小適中
規定行數在50~100左右
資料設計
:資料設計的原則
(1)用於軟體的系統化方法也適用於資料
(2)確定所有的資料結構和在美中資料結構上施加的操作
(3)應當建立一個數據字典並用它來定義資料和軟體的設計
(4)底層的資料設計的決策應該推遲設計過程的後期進行
(5)資料結構的表示只限於那些必須直接使用該資料結構內資料的模組才能知道
(6)應當建立一個存放有效 資料結構及相關操作的庫
(7)軟體設計和層序設計語言應當支援抽象資料型別的定義和實現
檔案設計
檔案的邏輯設計
(1)整理必須得資料元素
(2)分析資料間的關係
(3)確定檔案的邏輯設計
(4)理解檔案的特性
(5)確定檔案的組織方式
(6)確定檔案的儲存介質
(7)確定檔案的記錄格式
(8)估計存取時間和儲存容量
過程設計
(詳細設計,不是程式設計)
程式流程圖:
(過早的考慮控制流,是程式的控制不是特別的好所以不建議使用資料流程圖)
N-S圖
特點:迴圈的次數隱含
問題分析圖(PAD)(PAD)
優點:
(1)設計的程式一定是結構化的程式
(2)流程圖清晰
(3)表示的程式結構清晰易懂
(4)很方便的轉化為高階語言
(5)容易表示資料結構
(6)PDL是一種用於描述功能模組的演算法設計和加工的細節的語言,簡稱為設計程式用語是一種偽碼