一.需求分析:通過分析分配給軟體的那些系統需求,確定軟體需求。是開發人員經過深入細緻的調研和分析,準確理解使用者和專案的功能、效能、可靠性等具體要求,將使用者非形式的需求表述轉化為完整的需求定義,從而確定系統必須做什麼的過程
二.需求及需求的基本性質?
需求:是乙個「要予構造」的陳述,描述了待開發產品功能上的能力、性質引數或者其他性質。
性質:1.必要的,即該需求是使用者所要求的。
2.無歧義的,即該需求只能用一種方式解釋。(驗證:需求複審)
3.可測的,即該需求可進行測試的。(在標誌任何所需要的資料和設施的基礎上開發乙個測試概念)
4.可跟蹤的:即該需求可從乙個開發階段跟蹤到另乙個階段。
5.可測量的,即該需求是可測量的。(檢驗乙個特徵是否存在)
三.需求的分類:
1.功能需求:規約了系統或系統構建必須執行的功能
非功能需求:
2.效能需求:規約了乙個系統或系統構件必須具有的效能特性。
3.外部介面需求:規約了系統或系統構件必須與之互動的硬體、軟體或資料庫元素,其中也可能規約其格式、時間或其他因素。
分為:系統介面、使用者介面、硬體介面、軟體介面、通訊介面、記憶體約束、操作、地點需求。
4.設計約束:限制了軟體系統或軟體系統構建的設計方案的範圍。
四.需求規約:是乙個軟體項/產品/系統所有需求陳述的正式文件,它表達了乙個軟體產品/系統的概念模型。
基本性質:1.重要性和穩定性程度 即可按需求的重要性和穩定性,對需求進行分級,例如:基本需求、可選的需求和期望的需求。2.可修改的,即在不過多地影響其他需求的前提下,可以容易地修改乙個單一需求。3.完整的,即沒有被遺漏的需求。4.一致的,即不存在互斥的需求。
其中功能需求 還需要考慮:功能源、功能分享的資料、功能與外部介面的互動、功能所使用的計算資源。
五.需求規約
表達需求規約的三種風格:
1.非形式化的規約:即以一種自然語言來表達需求規約。
2.半形式化的規約:即以半形式化符號體系(包括術語表、標準化的表達格式)來表達需求規約。
術語表:明確地標識了一些詞,可以基於某一種自然語言。
標準化的表達格式(資料流圖、裝態轉化圖、實體關係圖、資料結構圖及過程機構圖)標識了一些元資訊,支援以 更清晰的方式系統化地來編制文件。
3.形式化規約:以一種基於良構數學概念的符號體系來編制需求規約,一般往往伴有解釋性注釋的支援
以數學概念用於定義該符號體系的詞法和語義;定義了一組支援邏輯推理的證明規則,並支援這一符號體系的定義和引用。
需求規約的作用:
(1)需求規約是軟體開發組織和使用者之間乙份事實上的技術合同書,是產品功能和環境的體現。
(2)對於專案的多餘大多數工作,需求規約是乙個管理控制點
(3)對於產品/系統的設計,需求規約是乙個正式的、受控的起始點。
(4)需求規約是建立產品驗收測試計畫和使用者指南的基礎,即基於需求規約一般還會產生另外兩個文件--初始測試計畫和使用者系統操作描述。
六.需求發現技術:自悟、交談、觀察、小組會、提煉。
七、需求規約與專案需求的區別:
需求規約是軟體開發組織和使用者之間乙份事實上的技術合同書,即關注產品需求,回答「交付給客戶的產品/系統是什麼」;而專案需求是客戶和開發者之間有關技術合同----產品/系統需求的理解,應記錄在工作陳述sow中或其他某一專案文件中,即關注專案工作與管理,回答「開發組要做的是什麼」
軟體工程 軟體需求分析
1.深 入 描 述 軟 件 的 功 能 和 性 能 2.到確 定 軟 件 設 計 的 約 束 和 軟 件3.同 其 它 系 統 元 素 的 接 口 細 節 4.定義 軟 件 的 其 它 有 效 性 需 求 需 求 分 析 的 任 務 就 是 借 助 於 當 前 系 統 的 邏 輯 模 型 導 出 目...
軟體工程 軟體需求分析
一 軟體需求分析任務 1.深入描述軟體的功能和效能 2.確定軟體設計的約束 3.定義軟體的其他有訊息需求 二 需求分析的過程 1.問題的識別 2.分析與綜合 分析方法 面向資料流,面向資料結構,結構化資料系統,物件導向的分析方法 3.編制需求分析階段的文件 1 軟體需求說明書 2 資料要求說明書 3...
軟體工程之軟體需求
需求定義 前置背景 軟體開發的目標 軟體開發要能夠滿足各方面的需求 錯誤需求具有嚴重的擴散效應,而且修復代價很高,其根本原因是 需求的鴻溝 期望差異 開發者開發的與使用者所想得到 的軟體存在著巨大期望差異 軟體需求的定義 以一種清晰 簡潔 一致且無二義性的方式,描述用 戶對目標軟體系統在功能 行為 ...