閱讀688 返回首頁    go 阿裏雲 go 技術社區[雲棲]


軟件需求

       這兩天看UML視頻時看到下圖中軟件需求和功能需求後便在腦海裏思考著它們倆的聯係和區別,許久之後也沒有個所以然便上網查了查相關知識。

                                 

       要想知道兩者的關係我們首先要知道什麼事軟件需求。

       軟件需求是(1)用戶解決問題或達到目標所需的條件或權能(Capability)。(2)係統或係統部件要滿足合同、標準、規範或其它正是規定文檔所需具有的條件或權能。(3)一種反映上麵(1)或(2)所述條件或權能的文檔說明。

       軟件需求包括三個不同的層次,業務需求、用戶需求和功能需求;也包括非功能需求。

       業務需求(Business Requirement)

描述組織或客戶的高層次目標,通常問題定義本身就是業務需求。業務需求就是係統目標,它必須是業務導向、可度量、合理、可行的。這類需求通常來自與高層,例如項目投資人、購買產品的客戶、實際用戶的管理者、市場營銷部門或產品策劃部門。業務需求從總體上描述了為什麼要開發係統(why),組織希望達到什麼目標。

       用戶需求(UserRequirement)

描述用戶使用產品必須要完成什麼任務,怎麼完成需求,通常是在問題定義的基礎上進行用戶訪談、調查,對用戶使用的場景進行整理,從而建立從用戶角度的需求。用戶需求必須能夠體現軟件係統將給用戶帶來的業務價值 ,或用戶要求係統必須能完成的任務,也就是說用戶需求描述了用戶能使用係統來做些什麼(what),這個層次的需求是非常重要的。用例、用戶故事、特性等都是表達用戶需求的有效途徑。

       功能需求(Functional  Requirement)

       其定義了開發人員必須實現的軟件功能,使得用戶能完成他們的任務,從而滿足了業務需求。所謂特性是指邏輯上相關的功能需求的集合,給用戶提供處理能力並滿足業務需求。功能需求的層次結構為:用戶或利益相關者的需求->功能->用例->業務規則,每一個用例都會描述一個到多個功能需求所對應的行為。

       非功能需求描述了係統展現給用戶的行為和執行的操作等。它包括產品必須遵從的標準、規範和合約;外部界麵的具體細節;吸能要求;設計或實現的約束條件及質量屬性。所謂約束是指對開發人員在軟件產品設計和構造上的限製。質量屬性是通過多角度對產品的特點進行描述,從而反映產品功能。多角度描述產品對用戶和開發人員都極為重要。

 

        這是我寫博客看的一些資料:https://www.cnblogs.com/zhoujg/archive/2009/11/04/1596209.htmlhttps://baike.baidu.com/link?url=ZPROC5Nfi18_KH8BClM47ezKlndBKTt_QWWiQLlsGmJWsHxeq6pwChowpI_g-bchhttps://zh.wikipedia.org/wiki/%E9%9C%80%E6%B1%82%E5%88%86%E6%9E%90https://zh.wikipedia.org/wiki/%E9%9C%80%E6%B1%82%E5%88%86%E6%9E%90


最後更新:2017-04-03 12:53:45

  上一篇:go Couldn't get connection because we are at maximum connection count (150/150) and there are none 異常解決
  下一篇:go enum的使用