软件工程结构化建模的方法和工具_软件工程系列-结构化设计方法2
本系列文章為筆記,內容根據北京大學《軟件工程》MOOC
初始化模塊結構圖精化的啟發式規則
常見的啟發式規則
- 什么叫做“啟發式”
- 根據設計準則,從長期的軟件開發實踐中,總結出來的規則
- 既不是設計目標,也不是設計時應該普遍遵循的原理
- 常見的六種啟發式規則
- 改進軟件結構,提高模塊獨立性
- 通過模塊的分解和合并,力求降低耦合,提高內聚
- 模塊規模適中-每頁60行語句
- 最好控制在一頁紙內
- 分解過大的模塊
- 深度、寬度、扇入和扇出適中
- 扇入:表示有多少個上級模塊直接調用它
- 扇出:一個模塊控制的下級模塊的數量
- 好的系統:頂層扇出高,中層扇出少,底層扇入高,系統呈“葫蘆”型
- 改進軟件結構,提高模塊獨立性
- 模塊的作用域力爭在控制域之內
- 作用域:受該模塊內一個判定影響的所有模塊的集合
- 控制域:模塊本身+所有直接或者間接從屬于它的模塊的集合
- 降低模塊接口的復雜性
- 使得信息傳遞簡單并且和模塊的功能一致
- 接口復雜或不一致容易增加耦合
- 模塊功能應該可以預測
- 相同的輸入有相同的輸出
- 示例
輸入部分的精化
sps:轉速的每秒信號量
rpm:每分鐘轉速
mph:每小時英里數
gph:每小時燃燒的燃料數 輸出部分的精化
變換部分的精化
對于變換部分的求精,是一項具有挑戰性的工作。其中主要是根據設計準則,并要通過實踐,不斷地總結經驗,才能設計出合理的模塊結構
接口設計
分類
- 模塊間的接口設計(內部接口)
- 軟件與其他軟硬件系統之間的接口設計(外部接口)
- 軟件與用戶之間的交互設計
系統的接口設計是由穿過系統邊界的數據流定義的
在最終的系統中,數據流將成為用戶界面中的表單、報表或與其它系統進行交互的文件或通信 人機交互界面
在設計階段,必須根據需求把交互細節加入到用戶界面設計中,包括人機交互所必須的實際顯示和輸入
用戶界面應具備的特性
- 可使用性:是用戶界面設計最重要的目標。包括使用簡單、界面一致、充分提示、快速響應、低運行成本、健壯性等
- 靈活性:考慮到用戶特點。應該使用戶接口滿足不同用戶的要求。對不同的用戶,應有不同的界面形式,但不同的界面不應該影響功能
- 可靠性:用戶界面的可靠性是指無故障使用的間隔時間。用戶界面應能保證用戶正確、可靠地使用系統,保證程序和數據的安全性
界面設計類型
- 外行型
- 初學型:需要很多界面支持
- 熟練型:需要較少的界面支持,但不能處理意外錯誤
- 專家型:需要為他們提供能夠修改和擴充系統能力的復雜界面
選用界面形式(表格,圖形,菜單,對話,窗口等)的時候,應該考慮每種類型的優點和限制,可以從以下方面考察
- 使用的難易度
- 學習的難易度
- 操作速度
- 復雜程度
- 控制:人機交互時,由計算機還是由人發起和控制接口
- 開發的難易程度:該界面設計是否有難度,工作量多大
一個界面的設計通常使用一種以上的設計類型,每種類型與一個或一組任務相匹配
設計原則
- 一致性
- 操作步驟少
- 不要“啞播放”
- 提供Undo功能
- 減少用戶記憶負擔
- 提高學習效率
數據設計
在設計階段必須對要存儲的數據及其格式進行設計 文件設計
適合選擇文件存儲的情況:
- 數據量較大的非結構化數據(多媒體)
- 數據量大,信息松散(歷史記錄、檔案)
- 非關系層次化數據(系統配置文件)
- 對數據的存取速度要求極高的情況
- 臨時存放的數據
文件設計的主要工作就是根據使用要求、處理方式、存儲的信息量、數據的活動性以及所提供的設備條件等確定文件類型,選擇文件媒體,決定文件組織方法,設計文件記錄格式,并估算文件的容量 數據庫設計
在結構化設計中,很容易將結構化分析階段建立的數據字典和 實體-關系 模型映射到關系數據庫中
- 數據對象的映射
- 關系的映射
總結
以上是生活随笔為你收集整理的软件工程结构化建模的方法和工具_软件工程系列-结构化设计方法2的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java6个人抽奖抽三个人,基于Java
- 下一篇: html5 video 直播流无声音,【