• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    怎樣做需求分析

    發布: 2008-4-11 14:56 | 作者: 方圓 | 來源: 不詳 | 查看: 222次 | 進入軟件測試論壇討論

    領測軟件測試網
    關鍵字:需求分析
    如果將需求分析階段的工作歸結為編寫需求規格說明書,這種簡化的做法往往是導致項目后期層出不窮問題的罪魁禍首。建議采用以下步驟形成軟件需求:獲取用戶需求→分析用戶需求→編寫需求文檔→評審需求文檔→管理需求。下面我們先來討論前兩個步驟(獲取用戶需求、分析用戶需求)的做法。

      獲取用戶需求

      這是該階段的一個最重要的任務。以下為獲取用戶需求需要執行的活動(如圖1所示)。

      ● 了解客戶方的所有用戶類型以及潛在的類型。然后,根據他們的要求來確定系統的整體目標和系統的工作范圍。

      ● 對用戶進行訪談和調研。交流的方式可以是會議、電話、電子郵件、小組討論、模擬演示等不同形式。需要注意的是,每一次交流一定要有記錄,對于交流的結果還可以進行分類,便于后續的分析活動。例如,可以將需求細分為功能需求、非功能需求(如響應時間、平均無故障工作時間、自動恢復時間等)、環境限制、設計約束等類型。

      ● 需求分析人員對收集到的用戶需求做進一步的分析和整理。下面是幾條常見的準則:

     、艑τ谟脩籼岢龅拿總需求都要知道“為什么”,并判斷用戶提出的需求是否有充足的理由;

      

      圖1 獲取用戶需求的活動

     、茖⒛欠N以“如何實現”的表述方式轉換為“實現什么”的方式,因為需求分析階段關注的目標是“做什么”,而不是“怎么做”;

     、欠治鲇捎脩粜枨笱苌龅碾[含需求,并識別用戶沒有明確提出來的隱含需求(有可能是實現用戶需求的前提條件),這一點往往容易忽略掉,經常因為對隱含需求考慮得不夠充分而引起需求變更。

      ● 需求分析人員將調研的用戶需求以適當的方式呈交給用戶方和開發方的相關人員。大家共同確認需求分析人員所提交的結果是否真實地反映了用戶的意圖。需求分析人員在這個任務中需要執行下述活動:

     、琶鞔_標識出那些未確定的需求項(在需求分析初期往往有很多這樣的待定項);

     、剖剐枨蠓舷到y的整體目標;

     、潜WC需求項之間的一致性,解決需求項之間可能存在的沖突。

      分析用戶需求

      在很多情形下,分析用戶需求是與獲取用戶需求并行的,主要通過建立模型的方式來描述用戶的需求,為客戶、用戶、開發方等不同參與方提供一個交流的渠道。這些模型是對需求的抽象,以可視化的方式提供一個易于溝通的橋梁。用戶需求的分析與獲取用戶需求有著相似的步驟,區別在于分析用戶需求時使用模型來描述,以獲取用戶更明確的需求。分析用戶需求需要執行下列活動:

      ● 以圖形表示的方式描述系統的整體結構,包括系統的邊界與接口;

      ● 通過原型、頁面流或其它方式向用戶提供可視化的界面,用戶可以對需求做出自己的評價;

      ● 系統可行性分析,需求實現的技術可行性、環境分析、費用分析、時間分析等;

      ● 以模型描述系統的功能項、數據實體、外部實體、實體之間的關系、實體之間的狀態轉換等方面的內容。

      

      圖2 DFD示意圖

      用于需求建模的方法有很多種,最常用的包括數據流圖(DFD)、實體關系圖(ERD)和用例圖(Use Case)三種方式。DFD作為結構化系統分析與設計的主要方法,已經得到了廣泛的應用,DFD尤其適用于MIS系統的表述。DFD使用四種基本元素來描述系統的行為,過程、實體、數據流和數據存儲。DFD方法直觀易懂,使用者可以方便地得到系統的邏輯模型和物理模型,但是從DFD圖中無法判斷活動的時序關系。圖2描述的是某個項目的DFD示意圖。

      ERD方法用于描述系統實體間的對應關系,需求分析階段使用ERD描述系統中實體的邏輯關系,在設計階段則使用ERD描述物理表之間的關系。需求分析階段使用ERD來描述現實世界中的對象。ERD只關注系統中數據間的關系,而缺乏對系統功能的描述。如果將ERD與DFD兩種方法相結合,則可以更準確地描述系統的需求。

      在面向對象分析的方法中通常使用Use Case來獲取軟件的需求。Use Case通過描述“系統”和“活動者”之間的交互來描述系統的行為。通過分解系統目標,Use Case描述活動者為了實現這些目標而執行的所有步驟。Use Case方法最主要的優點,在于它是用戶導向的,用戶可以根據自己所對應的Use Case來不斷細化自己的需求。此外,使用Use Case還可以方便地得到系統功能的測試用例。

    =============================================

      上一期,我們介紹了需求分析五個步驟中的前兩個步驟(獲取用戶需求、分析用戶需求),本期將繼續介紹后三個步驟(編寫需求文檔、評審需求文檔、管理需求),并與大家討論相關實踐問題。 
     

      1、編寫需求文檔

      需求文檔可以使用自然語言或形式化語言來描述,還可以添加圖形的表述方式和模型表征的方式。需求文檔應該包括用戶的所有需求(功能性需求和非功能性需求)。

      2、評審需求文檔

      需求文檔完成后,需要經過正式評審,以便作為下一階段工作的基礎。一般的評審分為用戶評審和同行評審兩類。用戶和開發方對于軟件項目內容的描述,是以需求規格說明書作為基礎的;用戶驗收的標準則是依據需求規格說明書中的內容來制訂,所以評審需求文檔時用戶的意見是第一位的。而同行評審的目的,是在軟件項目初期發現那些潛在的缺陷或錯誤,避免這些錯誤和缺陷遺漏到項目的后續階段。

      3、管理需求

      

      圖1 需求變更流程

      需求的變更是不可避免的,如何以可控的方式管理軟件的需求,對于項目的順利進行有著重要的意義。如果匆匆忙忙地完成用戶調研與分析,則往往意味著不穩定的需求。所以需求管理要保證需求分析各個活動都得到了充分的執行。對于需求變更的管理,則主要使用需求變更流程和需求跟蹤矩陣的管理方式。需求變更流程和需求跟蹤矩陣分別如圖1和圖2所示。

      

      圖2 需求跟蹤矩陣

      常見問題及建議

      Q、客戶與最終用戶的區別是什么?

      A、可以借助圖3來說明它們之間的區別。

      

      圖3 需求獲取渠道示意圖

      軟件需求來自系統工程與客戶兩個方面,其中客戶是主要的需求提供者(系統工程需求也來自于客戶)?蛻粜枰鸭渥罱K用戶的需求并考慮自身的需求,然后再提供給開發方。假如客戶并未去認真搜集最終用戶的需求,開發方便需要做到這一點,因為系統最終要滿足最終用戶的需求。

      Q、如何進行用戶訪談?

      A、首先,一定要事先確定訪談的目的和提綱。其次,因為用戶往往并不知道應該提供哪些方面的需求,所以需要開發人員引導。

      Q、用戶訪談內容是什么?

      A、首先,請用戶描述他們如何完成自己當前的工作,并與用戶一起抽象出一個工作流程或工作模型。然后,在得到用戶的認可后,向用戶解釋自己是怎樣來實現這些功能的,并說明哪些環節可以用自動化方式實現等。

      Q、采用哪一種方式做需求分析最好?

      A、不同的需求分析有不同的特點。還沒有哪一種方法可以完全替代別的方法,否則,現在就不會存在不同的需求建模方式了。一般來說,可以使用DFD+ERD來描述那些功能層次比較清晰的需求;而USE CASE則適于描述功能結構復雜的需求。做需求分析的目的是為了建立需求的模型,不同的子系統有可能使用不同的建模方法。

      Q、怎樣做原型,原型的目的是什么?

      A、通常使用原型分析方法來幫助開發方進一步獲取用戶需求或讓用戶確認需求。開發方往往先向用戶提供一個可視界面作為原型,并在界面上布置必要的元素以演示用戶所需要的功能?梢允褂玫谒拇Z言(例如Visual Basic、Delphi等)來快速生成用戶界面,也可以使用FrontPage等網頁制作工具來生成用戶可視的頁面流。

      原型的目的往往是獲取需求。但有時也使用原型的方式來驗證關鍵技術或技術難點。對于技術原型,界面則往往被忽略掉。

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    TAG: 需求分析


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>