需求分析、建模、設計

需求分析

能夠把需求從不一樣抽象層次或角度進行分析安全

  • 業務需求:描述使用軟件系統要達到什麼目標。例如,使用軟件系統要提升工做效率多少倍,節省多少費用等
  • 用戶需求:描述用戶要求系統必須能完成的任務,或者說描述用戶能用系統作什麼
  • 系統需求:爲了知足需求,系統或系統成分必須知足或具備的條件或能力。該項需求中一般包括軟件和硬件需求,且對需求的描述層次是頂級的
  • 功能需求:規定軟件必須實現的功能性需求。該項需求規定開發人員必需要實現的軟件功能供用戶使用。該項需求基於系統需求獲得
  • 非功能需求:在知足功能需求的基礎上,軟件系統還必須具備必定的特性和必須遵循必定的約束,非功能需求描述相應的特性和約束。例如軟件系統的特性爲可用性、健壯性、可移植性、效率等,軟件系統的約束可爲開發人員構造軟件系統時必須遵循的技術規範、開發週期、開發成本等

結構化分析方法

結構化分析方法是一種建模技術,在模型的核心是數據字典,它描述了全部的在目標系統中使用和生成的數據對象。圍繞這個核心有3種圖,數據流圖描述數據在系統中如何被傳送或變換,以及描述如何對數據流圖進行變換的功能,用於功能建模;實體-關係圖描述數據對象及數據對象之間的關係,用於數據建模;狀態-遷移圖描述系統對外部事件如何相應,如何動做,用於行爲建模。性能

設計準則

一、性能準則
性能準則包括對系統速度和空間的需求
響應時間:用戶請求提交後多久能夠獲得系統的承認並做出反應
吞吐量:在一段固定時間內,系統可以完成多少任務
內存:系統運行須要多少空間設計

二、可靠性準則
可靠性準則決定了對減小系統崩潰及隨後所形成危害所作的努力程度
健壯性:可以經受非法用戶輸入系統的能力
可靠性:特別指定的行爲與觀察到的行爲之間的差異
可用性:系統可以用來完成正常任務的時間百分比
容錯性:在出錯條件下系統的操做能力
保密性:系統承受惡意攻擊的能力
安全性:即使在出現錯誤或故障時,避免系統威脅到人類生命財產的能力對象

三、成本準則
成本準則包括開發、配置和管理系統的成本。成本準則不只包括設計上的考慮,還包括管理上的考慮。當新系統取代舊系統時,應該考慮確保向後兼容,或減小新系統移植的開銷,同時須要在多種不一樣成本中做出權衡,如開發成本、移植成本、維護成本、用戶培訓成本等。
開發成本:開發初始系統的成本
部署成本:按照系統並培訓用戶的成本
升級成本:從原有的系統中導出數據的成本,這個準則致使了向後兼容的需求
維護成本:須要進行修復錯誤和加強系統的成本
管理成本:須要對系統進行管理的成本事件

四、維護準則
維護準則肯定在開發完成後再改變系統的困難程度
可拓展性:向系統中添加功能的難易程度
可修改性:更改系統的難易程度
可適應性:將系統發佈到不一樣的應用領域的難易程度
可移植性:將系統移植到不一樣平臺的難易程度
可讀性:經過閱讀源代碼來理解系統的難易程度
需求的可追蹤性:將代碼映射到特定的需求的難易程度內存

五、最終用戶準則
用戶最終準則包括從用戶視點出發所需的屬性,不包括性能準則和可靠性準則
效用:系統支持用戶的工做有多好
易用性:用戶使用系統的難易程度開發

設計目標的某些權衡:空間與速度、交付時間與質量、交付時間與功能、交付時間與人員配置。部署

相關文章
相關標籤/搜索