軟件工程第3章課件_第1頁
軟件工程第3章課件_第2頁
軟件工程第3章課件_第3頁
軟件工程第3章課件_第4頁
軟件工程第3章課件_第5頁
已閱讀5頁,還剩29頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第3章需求分析3.1需求分析的任務3.2與用戶溝通獲取需求的方法3.3分析建模與規格說明3.4實體-聯系圖3.5數據規范化3.6狀態轉換圖3.7其他圖形工具3.8驗證軟件需求3.9小結1需求工程的重要性Standish-Group對350家公司的8000個軟件項目作過一次調查,其中,31%的項目的結局是被取消。引致這些項目失敗的原因是:

13.1%不完整的產品要求;

12.4%缺乏用戶的參與;

10.6%缺少資源(人力、財力);

9.9%不現實的期望;

9.3%高層領導支持不足;

8.7%產品要求與指標的改變;

8.1%沒有訂計劃;

7.5%不再需耍該開發中的系統。其中,與產品需求有關的(1,2,4,和6項)占了44.1%。這些數據突出地顯示了軟件產品需求在軟件開發中的重要性。2需求分析的準則回答“系統必須做什么?”

準則(1)必須理解并描述問題的信息域,建立數據模型。(2)必須定義軟件應完成的功能,建立功能模型。(3)必須描述作為外部事件結果的軟件行為,建立行為模型。(4)必須對描述信息、功能和行為的模型進行分解,用層次的方式展示細節。最后寫出軟件需求規格說明書33.1需求分析的任務確定對系統的綜合要求功能、性能、可靠性、可用性、出錯處理、接口、需求、約束、擴充……分析系統的數據要求數據模型、數據結構導出系統的邏輯模型數據流圖、實體-聯系圖、狀態轉換圖、數據字典和處理算法描述修正系統開發計劃4目標系統當前系統物理模型邏輯模型模型化抽象化物理模型邏輯模型具體化實例化理解需求表達需求導出怎么做做什么53.2獲取需求的方法訪談:正式、非正式訪談、情景分析面向數據流自頂向下求精——結構化分析簡易的應用規格說明技術快速建立軟件原型6需求分析的人員73.3分析建模與規格說明

3.3.1分析建模結構化分析實質——建模不同角度抽象出目標系統的特性使用精確的表示方法構造系統的模型需求分析建立3種模型數據模型:實體-聯系圖功能模型:數據流圖行為模型:狀態轉換圖8結構化分析的分析模型實體—關系圖狀態—遷移圖數據流圖數據對象描述加工規格說明數據字典控制規格說明9商店業務處理系統結構化分析案例10這個數據流圖只是一個高層的系統邏輯模型,它反映了目標系統要實現的功能數據流圖繪制步驟首先確定系統的輸入和輸出根據商店業務,畫出頂層數據流圖,以反映最主要業務處理流程11

經過分析,商店業務處理的主要功能應當有銷售、采購、會計三大項。主要數據流輸入的源點和輸出終點是顧客和供應商。然后從輸入端開始,根據商店業務工作流程,畫出數據流流經的各加工框,逐步畫到輸出端,得到第一層數據流圖12第一層數據流圖13加細每一個加工框——銷售細化14采購細化15檢查和修改數據流圖的原則數據流圖上所有圖形符號只限于前述四種基本圖形元素數據流圖的主圖必須包括前述四種基本元素,缺一不可數據流圖的主圖上的數據流必須封閉在外部實體之間16每個加工至少有一個輸入數據流和一個輸出數據流在數據流圖中,需按層給加工框編號。編號表明該加工所處層次及上下層的親子關系規定任何一個數據流子圖必須與它上一層的一個加工對應,兩者的輸入數據流和輸出數據流必須一致。此即父圖與子圖的平衡17圖上每個元素都必須有名字數據流圖中不可夾帶控制流初畫時可以忽略瑣碎的細節,以集中精力于主要數據流183.3.2軟件需求規格說明需求分析階段最主要的文檔自然語言完整、準確、具體內容:數據要求、功能需求、性能需求、可靠性和可用性要求、出錯處理需求、接口需求、約束、逆向需求以及將來可能提出的要求193.4實體-聯系圖(ER圖)建立概念模型描述了從用戶角度看到的數據反映了用戶的現實環境與在軟件系統中的實現方法無關包含3種相互關聯的信息數據對象:外部實體、事物、行為、事件等數據對象的屬性:定義了數據對象的性質數據對象彼此間相互連接的關系:聯系20某校教學管理ER圖213.5數據規范化信息通常存儲在數據庫或文件中數據結構規范化減少數據冗余避免出現插入異常或刪除異常簡化修改數據的過程“范式(normalforms)”定義消除數據冗余的程度第一范式(1NF)~第五范式(5NF)223.6狀態轉換圖表示系統的行為模式通過描繪系統的狀態引起系統狀態轉換的事件及事件的響應方式指明作為特定事件的結果動作簡稱狀態圖初態(一個)、終態(0至多個)、中間狀態表示系統循環運行過程:不關心循環是怎樣啟動的表示系統單程生命期:要標明初態和終態23狀態轉換圖三要素①事件(event):引發object狀態改變的控制信息(瞬時)。②狀態(status):即

object的

attributes所處的情形(可持續)。③行為(action):Object要達到某種status所做的操作(耗時)。Event0Status1do:Action1Status2do:Action2Event1Event2StartEnd[Condition1]24例如,當有多個申請占用CPU運行的進程時,有關CPU分配的進程的狀態遷移。25閑置撥號通話斷線撥號音do:響撥號音超時do:響蜂鳴音存儲的信息do:播放信息接通中do:試接通振鈴do:振鈴忙音do:響忙音拿起聽筒數字數字有效號碼已接通受話人回話受話人掛斷電話掛斷電話超時掛斷電話超時無效號碼信息播完占線電話系統的狀態轉換圖263.7其他圖形工具

3.7.1層次方框圖樹形結構描繪數據的層次結構頂層代表完整的數據結構下面的各層矩形框代表這個數據的子集最底層的各個框代表組成這個數據的實際數據元素(不能再分割的元素)。自頂向下,逐步求精,逐層細化27產品的數據結構283.7.2Warnier圖另一種圖形工具用樹形結構描繪信息可以表明信息的邏輯組織信息元素重復出現有條件地出現很容易把Warnier圖轉變成軟件設計的工具29一類軟件產品的Warnier圖303.7.3輸入-處理-輸出圖(IPO圖)方便地描繪輸入數據、對數據的處理和輸出數據之間的關系。31改進的IPO圖(IPO表)需求分析階段描述算法的重要工具323.8驗證軟件需求

3.8.1驗證軟件需求的正確性需求分析階段的工作結果是開發軟件系統的重要基礎軟件系統中15%的錯誤起源于錯誤的需求。必須嚴格驗證這些需求的正確性。333.8.2驗證軟件需求的方法一致性所有需求必須是一致的人工技術審查、形式化現實性指定的需求應該是可實現的以往系統經驗、分析現有技術的可能性、仿真、性能模擬技術完整性需求必須是完整的有效性必須證明需求是正確有效的確實滿足用戶的實際需要用戶試用原型343.8.3需求分析的軟件工具(1)必須有形式化的語法(或表),可以自動處理使用這種語

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論