1. 程式人生 > >【軟體工程】——軟體需求分析

【軟體工程】——軟體需求分析

軟體需求分析的任務(藉助當前系統的邏輯模型推匯出目標系統的邏輯模型)

深入描述軟體的功能和效能
確定軟體設計的約束和介面,同其它系統元素的介面細節
定義軟體的其它有效性需求

在這裡插入圖片描述

需求分析的過程

(1)問題識別
軟體的需求包括
功能需求 ,資源使用需求,效能需求,成本消耗需求,環境需求,開發進度需求,可靠性需求,預先估計以後系統可能達到的目標,安全保密要求,使用者介面需求
在這裡插入圖片描述
(2)分析與綜合
從資訊流和資訊結構出發,逐步細化所有的軟體功能,找出系統各元素之間的聯絡,介面特性和設計上的約束,分析他們是否滿足功能要求,是否合理
常用的分析方法
面向資料流的結構化分析方法(SA)
面向資料結構的Jackson方法(JSD)
結構化資料系統開發方法(DSSD)
面向物件的分析方法(OOA)
(3)編制需求分析階段的文件


軟體需求說明書
資料要求說明
初步的使用者手冊
修改,完善與確定軟體開發實施計劃
(4)需求分析的評審
系統定義的目標是否與使用者的要求一致
系統需求分析階段提供的文件資料是否齊全
文件中所有描述是否完整,清晰,準卻反應使用者的要求
與所有其他系統成分的重要介面是否都已經描述
(5)需求分析的流程(DFD圖)

在這裡插入圖片描述

(6)軟體需求分析的原則
需要能夠表達和理解問題的資訊域和動能域
要能以層次化的方式對問題進行分解和不斷細化
在開始建立分析模型前先理解問題
開發原型,使得使用者能夠了解將如何發生人機互動
記錄每個需求的起源以及原因
使用多個需求檢視
給需求賦予優先順序
努力刪除含糊性

分解法

在這裡插入圖片描述
(7)軟體需求規格說明的原則
從現實中分離功能,即描述要“做什麼”而不是“怎樣實現”
要求使用面向處理的規格說明語言(或稱系統定義語言)