[讀書筆記]UML和模式應用 ---- 進化式需求

關鍵字: uml 讀書筆記

定義:需求

       需求(Requirement)就是系統(更廣義的說法是項目)必須提供的能力和必須遵從的條件[JBR99]

"Requirements are capabilities and conditions to which the system—and more broadly, the project—must conform". [JBR99]

 

    UP(Unified Process)提出了一系列的最佳實踐,其中之一就是需求管理 (requirement management)。需求管理不主張採用瀑布的觀點,即在編程之前項目的第一個階段就試圖完全定義和固化需求。在變更不可避免,涉衆醫院不明朗的情況下,UP更推崇用"一種系統的方法來尋找、記錄、組織和跟蹤系統不斷變更 的需求"[RUP](Rational Unified Process)

    簡單言之,就是通過迭代巧妙的進行需求分析,而非草率和隨意爲之。

    需求分析的最大挑戰是尋找、溝通和記住(通常是指記錄)什麼是真正需要的,並能夠清楚地講解給客戶和開發團隊的成員。

 

尋求需求可以採用的方法

  • 與客戶一同編寫用例
  • 開發者和客戶共同參加需求研討會
  • 請客戶代理參加焦點小組
  • 向客戶演示每次迭代的成果以求得反饋

需求的類型和種類

在UP中,需求按照"FURPS+"模型進行分類[Grady92]

  • 功能性(Functional):特性、功能、安全性。
  • 可用性(Usability):  人性化因素、幫助、文檔。
  • 可靠性(Reliability):故障頻率、可恢復性、可預測性。
  • 性能(Performance):響應時間、吞吐量、準確性、有效性、資源利用率。
  • 可支持性(Supportability):適應性、可維護性、國際化、可配置性。

FURPS+中的”+“是指一些輔助性的和次要的因素,比如:

  • 實現(Implementation):資源限制、語言和工具、硬件等。
  • 接口(Interface):強加於外部系統接口之上的約束。
  • 操作(Operation):對其操作設置的系統管理。
  • 包裝(Packaging):例如物理的包裝盒。
  • 授權(Legal):許可證或者其他方式。
IBM RUP對FURPS+的定義

The FURPS+ System for Classifying Requirements

One such classification system was devised by Robert Grady at Hewlett-Packard. 2 It goes by the acronym FURPS+ which represents:

* Functionality
* Usability
* Reliability
* Performance
* Supportability

The "+" in FURPS+ also helps us to remember concerns such as:

* Design requirements
* Implementation requirements
* Interface requirements
* Physical requirements

 

UP製品如何組織需求

     UP提供了一些需求製品。同所有的UP製品一樣,它們都是可選的。其中關鍵的製品包括:

  • 用例模型 :一組使用系統的典型場景。主要用於功能(行爲的)需求。
  • 補充性規格說明 :基本上是用例之外的所有內容。主要用於所有非功能需求,例如性能或許可發佈。該製品也用來記錄沒有(或者不能表示)爲用例的功能特性,例如報表生成。
  • 詞彙表 :詞彙表以最簡單的形式定義重要的術語。同時也包含了數據字典 (data directionary)的概念,其中記錄了關於數據的需求,流入有效性規則,容許值等。詞彙表可以詳述任何元素:對象屬性、操作調用的參數、報表佈局等。
  • 設想 :概括了高階需求,這些需求在用例模型和補充性規格說明中進行細化。設想也概括了項目的業務案例。設想是簡短的執行概要文檔,用以快速瞭解項目的主要思想。
  • 業務規則 :業務規則(也稱爲領域規則)通常描述了凌駕於某以軟件項目的需求或政策,這些規則是領域或業務所要求的,並且許多應用應該遵從這些規則。領域規則的細節 可以記錄在補充性規格說明中,但是因爲這些規則通常更爲持久,並且不止對一個軟件項目適用,所以應將其放入集中的業務規則製品(供公司的所有分析員共 享),以便在這方面做出的分析工作能夠被更好的重用。

總結:UP的推崇迭代和進化式需求,強調了需求的"不斷變更 "的重要特性。使用一種系統的方法來尋找、記錄、組織和跟蹤系統不斷變更的需求[RUP]--需求管理(manage requirement)。

發佈了1 篇原創文章 · 獲贊 0 · 訪問量 3243
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章