1. 程式人生 > >軟體工程---軟體需求分析

軟體工程---軟體需求分析

目錄

一、軟體需求分析的任務

1問題識別

2、分析與綜合

3、編制需求分析階段的文件

4、需求分析評審

需求分析流程---資料流圖(DFD圖)

軟體需求分析原則

軟體需求規格說明的原則

二、結構化分析方法

檢查和修改資料流圖的原則

資料流圖注意事項

三、原型化方法

軟體原型的分類

動態分析方法

狀態遷移圖

時序圖

Petri網

需求規格說明書


本章內容:軟體分析的任務和過程、結構化分析方法、原型化方法、動態分析法

要點:

1、瞭解軟體需求分析目標和任務

2、瞭解軟體需求的獲得方法

3、掌握結構化分析方法

4、瞭解需求規格說明和需求評審的主要內容

形成關鍵性的文件:需求規則說明書

一、軟體需求分析的任務

主要任務如下:

深入描述軟體的功能和效能

確定軟體設計的約束和軟體同其他系統軟體的介面細節

定義軟體的其他有效性需求

軟體需求規則說明書滿足:一致性、完整性、現實性、有效性、可驗證性

需求分析的任務就是藉助於當前系統的邏輯模型推匯出目標系統的邏輯模型,解決目標系統的“做什麼”的問題。

需求分析的過程

1問題識別

從系統角度理解軟體並評審,軟體範圍是否恰當

確定對目標系統的綜合要求,即軟體需求

提出這些需求實現條件,以及需求應達到的標準

軟體需求包括功能需求、效能需求、環境需求、可靠性需求、安全保密需求、使用者介面需求、資源使用需求、成本消耗需求、開發進度需求、預先估計以後系統可能達到的目標

問題識別另一項工作是建立分析所需要的通訊途徑,以保證能順利的對問題進行分析。

2、分析與綜合

從資訊流和資訊結構出發,逐步細化所有的軟體功能,找出系統個袁旭之間的聯絡、介面特性和設計上的約束,分析他們是否滿足功能需求,是否合理。

常用的分析方法:面向資料流的結構化分析方法(SA)、結構化資料結構的Jackson方法(JSD)、結構化資料系統開發方法(DSSD)、面向物件的分析方法(OOA)

3、編制需求分析階段的文件

軟體需求說明書

資料要求說明書

初步的使用者手冊

修改、完善與確定軟體開發實施計劃

4、需求分析評審

系統定義的目標是否與使用者的要求一致

系統需求分析階段提供的文件資料是否齊全

文件中的所有描述是否完整、清晰、準確的反映使用者要求

與所有其它系統成分的中音號介面是否都已經描述。

 

需求分析流程---資料流圖(DFD圖)

圓圈表示加工

矩形框:原點和匯點(從哪開始到哪結束)

雙橫線:表示文件

箭頭:表示資料流流向

用資料流的方法表示資料在系統中的流動

 

軟體需求分析原則

需要能夠表達和理解問題的資訊域和功能域

要能以層次化的南方是對問題進行分解和不斷細化

在開始建立分析模型前,先分析問題

開發原型,使得使用者能夠了解將如何發生人機互動

記錄每個需求的起源以及原因

使用多個需求檢視

給需求賦予優先順序

努力刪除含糊性,去掉模稜兩可

軟體需求規格說明的原則

從現實中分離功能,即描述要“做什麼”而不是”怎樣實現“

要求使用面向處理的規格說明語言(或稱系統定義語言)

注:一般越早的進入程式設計階段越容易出現問題

 

二、結構化分析方法

面向資料流進行需求分析的方法

結構化分析方法適用於資料處理型別軟體的需求分析

資料流圖---DFD圖

圓圈:表示資料加工

矩形框:表示資料來源或終點(外部實體)

箭頭:資料流

兩條橫線:表示資料儲存檔案存放

 

檢查和修改資料流圖的原則

資料流圖上所有圖形符號只限於前述的基本四種元素

資料流圖的主圖必須包括前述四種元素,缺一不可

每個加工至少有一個輸入資料流和一個輸出資料流

在資料流圖中,需按層給加工框編號,編號表明該加工所處層次及上下層的親子關係

規定任何一個數據流子圖必須與它上一層的一個加工對應,兩者的輸入資料流和輸出資料流必須一致

資料流圖注意事項

圖上每個元素都必須有名字、資料流圖中不可夾帶控制流、初畫時可以忽略瑣碎的細節,以集中精力於主要資料流

資料詞典:資料詞典與資料流圖配合,能清楚的表達資料處理的請求

詞條描述:對於在資料流圖中每一個被命名的影象元素,均加以定義 。

其內容有:名字、別名或編號、分類、描述、定義、位置、其它

 

 

三、原型化方法

在開發初期,想得到一個完整準確的規格說明不是一件容易的事

使用者往往對系統只有一個模糊的想法,很難完全準確的表達對系統的全面要求

軟體原型的分類

在軟體開發中,原型是軟體的一個早期可執行的版本,它反映的最終系統的部分重要特性

分類:探索型、實驗型、進化型

原型使用策略:廢棄策略、追加策略

原型開發:可以在各個階段進入到原型階段進行修

 

動態分析方法

常用:狀態遷移圖、時序圖、Petri網

狀態遷移圖

狀態遷移圖主要描述系統的狀態如何相應外部的訊號進行推移的一種圖形表示。即從一個狀態轉為另一個狀態。

圓圈“O"表示可得到的系統狀態。

 

 

 

箭頭"→"表示從一種狀態向另一種狀態的遷移

狀態:執行狀態、等待狀態、就緒狀態

狀態遷移圖優點:狀態之間的關係可以只管的捕捉、由於狀態遷移圖的單純性、能夠機械的分析許多情況,可以很容易的建立分析工具、其它

時序圖

時序圖(Sequence Diagram),又名序列圖、循序圖,是一種UML互動圖。它通過描述物件之間傳送訊息的時間順序顯示多個物件之間的動態協作。它可以表示用例的行為順序,當執行一個用例行為時,其中的每條訊息對應一個類操作或狀態機中引起轉換的觸發事件。

時序圖中包括如下元素:角色,物件,生命線,控制焦點和訊息。

時序圖百度百科中的查詢

https://baike.baidu.com/item/%E6%97%B6%E5%BA%8F%E5%9B%BE/3659178?fr=aladdin

 

Petri網

Petri網:廣泛的應用於硬體與軟體系統的開發中,適用於描述與分析相互獨立、協同操作的處理系統,即併發執行的處理系統。

Petri網簡稱PNG(Petri Net Graph)有兩種結點,

位置(place):符號為“O”,它用來表示系統的狀態

轉移(transition):符號為”?“,它用來表示系統中的事件

圖中的有向邊表示對轉移的輸入,或由轉移的輸出。

 

需求規格說明書

1.引言

1.1編寫目的

1.2專案背景

1.3定義

1.4參考資料

2.任務概述

2.1目標

2.2執行環境

2.3條件與限制

3.資料描述

3.1靜態資料

3.2動態資料

3.3資料庫介紹

3.4資料詞典

3.5資料採集

4.功能需求

4.1功能劃分

4.2功能描述

5.效能需求

5.1資料精確度

5.2事件特性

5.3適應性

6.執行需求

6.1使用者介面

6.2硬體介面

6.3軟體介面

6.4故障處理

7.其它需求

根據不同專案和要求有所重點的書寫說明書