業務需求:
客戶對於系統的高層次目標要求(high-level objectives) ,定義了專案的遠景和範疇(vision and scope)
使用者需求(user requirements):
從使用者角度描述的系統功能需求與非功能需求,通常只涉及系統的外部行為而不涉及內部特性
[例]使用者可以通過internet隨時查詢圖書資訊和個人借閱情況,並可以快速查詢和瀏覽需要的電子資料:
[功能需求]使用者通過internet查詢圖書資訊
[功能需求]使用者通過internet瀏覽個人借閱情況
[功能需求]使用者通過internet查詢和瀏覽電子資料
[非功能需求]隨時、快速
業務需求與使用者需求的對比
業務需求
使用者需求
功能需求(functional requirements, fr):
系統應該提供的功能或服務,通常涉及使用者或外部系統與該系統之間的互動,不考慮系統內部的實現細節
[例]:
非功能需求(non-functional requirements, nfr):
從各個角度對系統的約束和限制,反映了客戶對軟體系統質量和效能(quality and performance)的額外要求,如響應時間、資料精度、可靠性等
[例]:
注意:非功能需求隱含了對可選設計方案的一些關鍵影響
非功能需求的度量
nfr:檢驗起來非常困難,一般採用一些可度量的特性進行描述
約束條件(constraints):
系統設計和實現時必須滿足的限制條件,對其進行權衡或調整是相當困難的,甚至是不可能的
例如:業務規則(business rule):
對某些功能的可執行性或內部執行邏輯的一些限定條件
通常表達為「如果…,那麼…」的形式
通常是一些容易發生變化的功能
例如:
外部介面需求(external inte***ce requirement):
描述系統與其所處的外部環境之間如何進行互動,包括:
使用者介面需求(ui),硬體介面需求,軟體介面需求,通訊介面需求
例如:
好的需求應具備的特徵:
完整性:每一項需求都必須將所要實現的功能描述清楚
正確性:每一項需求都必須準確地陳述其要開發的功能
可行性:每一項需求都必須是在已知系統和環境的權能和限制範圍內可以實施的
必要性:每一項需求都應把客戶真正所需要的和最終系統所需遵從的標準記錄下來
劃分優先順序:給每項需求、特性或使用例項分配乙個實施優先順序以指 明它在特定產品中所佔的分量
無二義性:對所有需求說明的讀者都只能有乙個明確統一的解釋
可驗證性:檢查一下每項需求是否能通過設計測試用例或其它的驗證方法,如用演示、檢測等來確定產品是否確實按需求實現
論軟體工程需求的分類與獲取
摘要 在軟體工程的生命週期中,需求分析是很核心的一環,如果是自頂下上的設計,那麼它就是頂層的核心設計。軟體工程的過程中,不僅僅只有 編寫,明確需求,分析需求,是對產品目標的設計。當需求完整,準確,清晰,具體的時候,軟體的開發才可能事半功倍。那麼如何去獲取軟體需求,軟體需求又有哪些型別,這是我們要去 ...
需求分析01 需求分類
最完美的創業團隊是乙個會寫 有點商業感覺,又有審美的技術人員,比如facebook的扎克伯格,初創團隊的商業事情由產品經理兼著思考,產品做出來之後,會引入第三個角色,運營,是產品經理讓產品有用,技術讓產品可用,設計讓產品好用。產品經理的主要職責分為兩塊 1 評估產品機會 2 定義要開發的產品。那麼產...
軟體工程 2(軟體需求與軟體需求規約)
一.需求分析 通過分析分配給軟體的那些系統需求,確定軟體需求。是開發人員經過深入細緻的調研和分析,準確理解使用者和專案的功能 效能 可靠性等具體要求,將使用者非形式的需求表述轉化為完整的需求定義,從而確定系統必須做什麼的過程 二.需求及需求的基本性質?需求 是乙個 要予構造 的陳述,描述了待開發產品...