軟體工程學習程序(3)
軟體需求分析
軟體需求分析是整個系統開發的基礎
分析系統做什么,而不是怎樣做,確定功能,建立軟體的邏輯模型
需求分析的任務
1.確定對系統的綜合需求
- 功能雪球→指所開發軟體系統必須提供的服務 ,劃分出系統必須完成的所有功能
- 性能需求→指所開發軟體系統技術性能指標,包括存盤容量,運行時間等
- 環境需求 →所需要的軟,硬體
- 介面要求→應用系統與他的環境通信格式
- 用戶界面需求 →人機互動方式,輸入輸出資料格式
- 其他需求→可靠性,安全性,保密性,約束,可移植性,可維護性等需求
2.分析系統的資料需求
分析資料的資料通常用建立資料模型(物體聯系圖(ER圖))的方法
3.建立軟體的邏輯結構
通常用資料流圖,資料字典,及處理演算法等來描述目標系統的邏輯模型
4.撰寫軟體需求規格說明書
一份技術合同,是測驗驗收階段對軟體進行確認和驗收的基準,因此需求說明具有:準確性,一致性,清晰性,唯一性,完整性和可檢驗性
5.需求分析評審
目的是發現需求分析的錯誤和缺陷
需求分析的步驟
- 需求獲取:調查研究
- 需求提煉:分析建模
- 需求描述:撰寫SRS
- 需求驗證
需求分析圖形工具
- 層次方框圖
由一系列多層次的樹形結構的矩形框組成,來描述資料的層次結構 - 維納圖
來表示資訊參差體系的圖形工具,可以描述樹形結構的資訊,可以指出一類資訊或一個資訊是重復出現的 重復和條件約束時證明軟體處理程序的基礎,特點:表面資訊的邏輯組織 - IPO圖
-輸入——處理——速出圖類似向量符號的空心箭頭清楚指出資料通信情況
需求獲取的常用方法
👉客戶訪談(需求獲取)
- 正式訪談 →系統分析員提出一些可以自由回答的開發性問題
- 非正式訪談→系統分析將得出一些事先準備好的問題,進行交談
- 調查表→經仔細考慮寫出的書面的回答可能,比被訪問著對問題的口頭回答更準確
👉 建立聯合分析小組+
👉問題分析和確認(求精)
稱為簡易的應用規格說明技術,即時討論并求精,由能匯出規格說明的具體步驟
👉快速建立軟體原型模型(建模)
(一) 需求分析的常用方法
1.功能分解方法*
2. 結構化分析方法*
面向資料流的需求分析方法→20世紀70年代末 E.Your don提出
核心思想
分解化簡問題
物理與邏輯表示分開
進行資料與邏輯抽象
結構化分析概述具體步驟:
👉1.發現需求
👉2.求精
👉3.建模
結構化分析模型(一個核心+三個模型)
資料字典-結構化分析模型的一個核心
描述軟體使用和產生的所有資料物件
資料字典定義方法
資料字典對四類元素定義:
- 資料流
資料流的描述方式
資料流名:
說明
資料流來源:介紹產生原因和結果
資料流去向
資料流組成:資料結構
每個資料量流通量:資料量,流通量
- 資料元素
資料元素的描述方式
資料元素名:
型別:數字(離散值,連續值)還是,文字(編碼型別)
長度:
取值范圍:
相關的資料元素及資料結構:
- 資料存盤
資料存盤的描述方式
資料存盤名:
簡述:存放的是什么資料
輸入資料:
輸出資料:
資料檔案的組成:資料結構
存盤方式:順序,直接,關鍵碼
存取頻率
- 加工(處理)
處理的描述方式
處理名:
處理編號:反映該處理的層次
簡要描述:加工邏輯及功能簡述
輸入資料流:
輸出資料流:
加工邏輯
資料字典的定義符號
定義資料方式:自頂向下逐層分解
由資料勻速組成資料的方式:
順序:以確定次序連接兩個或多個資料元素
選擇:從兩個或多個可能元素中選一個
重復:重復零次或多次
可選:一個資料元素可有可無
資料字典的使用符號
- = : 表示定義為或等價于
- +: 與 /連接
- […|…] →可選任意一項 [a|b] a或b
- m{…}n →對里面內容可以重復使用 ,最少重復m次,最多重復n次
- (…)對里面內容可選可不選
- " " 基本資料元素
- ,,范圍→"1"…"9"范圍1~9
資料模型→→(物體聯系圖)也就是 E-R圖表達
物體-關系圖 + 資料物件描述
描述資料物件間關系,圖中資料物件屬性用“資料物件描述”表達
資料模型組成內容:
- 資料物件:軟體必須理解的復合資訊
- 資料物件間關系:物件彼此間相互連接方式
- 屬性:定義資料物件性質
構成物體聯系圖(E-R圖)的基本要素
- 物體型→矩形框(教師)
- 屬性→圓角矩形(姓名)
- 聯系(關系)→菱性(教)
→ 1 :1聯系
→ 1 :n聯系
→ m :n聯系
功能模型→→DFD表達
資料流圖 + 處理規格說明
圖中功能用“處理規格說明”表達
資料流圖表示系統邏輯模型,清晰的描述系統資料的流動和處理程序,沒有任何具體的物理元素,是非常好的通信工具和軟體
資料liu
資料流圖符號:
正方形(立方體)→表示資料的源點或終點,一般指出現在資料流圖的頂層圖中
圓角矩形(圓形)→代表變換資料的處理
開口矩形(兩條平行橫線)→代表資料存盤
箭頭→資料流
資料流圖附加符號

資料流圖是軟體開發者從用戶的問題提取4中成分
1.源點和終點,可以是人,物體,系統
2.加工,要對加工進行編號,說的這個處理在層次分解中的位置,子圖中編號是父圖相應的處理邏輯的編號,子圖這種處理邏輯編號是由子圖號,小數點與區域號組成例:2.1,2.2,2.3
3.資料流,是資料在系統內的運動方向
4.資料存盤,可以理解為寫檔案,查詢檔案
資料流圖的基本原則
- 資料流圖中所有的符號必須是前面的四種符號和附加符號
- 資料流圖的主圖(頂層)必須含有四種基本符號
- 資料流圖的主圖的資料流必須封閉在外部物體之間 加工至少有一個輸入資料流和一個輸出資料流,反映加工來源和結果
- 任何一個資料流子圖必須與它的父圖上的加工相對應,父圖幾個加工,就有幾個子圖,兩者的輸入資料流和輸出資料流必須一致,即所謂”平衡“
- 圖上的每個元素都必須有名字(資料存盤的出/入資料流除外)
- 畫資料流圖時,只考慮資料流的靜態關系,不考慮動態關系
- 畫資料流圖時,只考慮常規狀態,不考慮例外狀態
- 資料流圖只描述“做什么”,不像程式流程圖一樣表示對資料加工的控制和細節
- 不能期望一次完成,而是要經過各項反復才能完成
分層資料流圖
為表達資料加工情況
- 頂層資料流圖包含一個加工項
- 中間層流圖:對其上層父圖的細化
- 底層流圖:指的是加工項不再分解的資料流圖
資料流圖的用途
- 基本目的作為交流資訊的工具,供有關人員審查確認
- 作為分析和設計的工具,劃分不同的自動化邊界
價格邏輯的描述
也稱為小說明,是對資料流圖中每個加工所做的說明,指用戶對這個加工的輸出資料流和輸入資料流的邏輯關系
描述加工邏輯一般用:
1.結構化語言
自然語言+結構化形式,它可以使用順序,選擇,回圈三種控制結構
2.判定表
適用加工邏輯比較復雜

3.判定樹
判定樹是判定表的圖形表示,比判定表更直觀,且易于理解和使用
行為模型→→狀態轉化圖
狀態轉換圖 + 控制規格說明
圖中軟體控制附加資訊用“控制規格說明”表達
軟體的行為模型:
狀態轉換圖
狀態,被觀察到的系統行為模式

事件:引起狀態轉換的外界事件抽象
箭頭上標事件名,后跟【條件】,當條件為真,箭頭事件才能轉換成功
行為:進入某狀態所作動作
狀態框內
do:行動名,
👉4.規格說明→ 書寫軟體需求規格說明,作為分析階段最終成果
👉5.復審→保證盡量無問題
3.資訊建模方法*
4.面向物件方法*
花神博客生涯之C語言(3)結束了哦~
接下來會持續更新(⊙o⊙)!

轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/158802.html
標籤:其他
上一篇:基于ODBTC編碼的水印演算法
