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

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

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

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

    需求分析與定義

    發布: 2007-4-22 19:48 | 作者: 未知    | 來源: 網絡     | 查看: 177次 | 進入軟件測試論壇討論

    領測軟件測試網

    1. 軟件需求:

    軟件需求分為三大部分:

      1)、功能需求:指系統需要完成那些事情,即向用戶提供那些功能。

      2)、非功能需求:指產品所具備的品質和屬性,比如可靠性、擴展性、響應時間、性能等等。。。

      3)、設計約束:也稱條件約束、補充規則。比如用戶要安裝該產品他需要有什么樣的必備條件。(系統對操作系統的要求、硬件環境的要求等等…..)


    2. 需求調查與問題定義:

    在做需求調查時需要做到兩W一H即 What、Where、How

      1)、What-----應該收集什么信息

      2)、Where----從什么地方收集

      3)、How-------用什么機制或技術來收集


    3.需求分析

    需求分析通常包括六個方面:

      1)、繪制系統上下文范圍關系圖:主要用于定義系統與系統外部實體間的界限和接口的簡單模型,他可以為需求確定一個范圍。其實就是DFD的0層圖。

      2)、創建用戶接口原型:這里我們可以把他看成是用戶操作的一個雛形,什么意思呢就是我們通常所說的界面用戶通過一系列的操作完成他想達到的效果的接口。

      3)、分析需求的可行性:這個需求我們應該用什么技術解決,他實現后的性能怎么樣,是否與其他需求相重合或是矛盾,這里一定要注意不要把系統的這個需求怎么用代碼實現想進去。在需求分析時應多注意需求本身是否有用不必考慮怎么實現。

      4)、確定需求的優先級:可采用滿意度/不滿意度指標來說明(滿意度1-5 表示當需求被實現時用戶的滿意程度;不滿意度取值同理)

      5)、為需求建立模型:這里可以用UML創建用例圖或是E-R圖再加上少量的文字描述。

      6)、使用質量功能調配(QFD):這里我的理解是分析員根據需求的理解發現隱藏需求而這些需求是用戶也沒有想到的需求,系統實現后會給用戶一個驚喜,而沒實現用戶也不會有抱怨。


    4.需求分析方法

    現在比較流行的軟件需求分析方法有4種,其中3種理論比較成熟。

      1)、結構化分析方法(Struetured Analysis,SA):這個大家想必很熟悉了不在復述。

      2)、軟系統方法:這只是過度性的方法論他的出現只是證明結構化分析方法的一些不足。因為結構化分析方法采用的相對形式化的模型不僅與社會觀格格不入,而且在解決“不確定性”時顯得十分無力。

      3)、面向對象分析方法(Object Oriented Analysis,OOA):這也是我下文想講的分析方法

      4)、面向問題域的分析(Problem Domain Oriented Analysis,PDOA):OOA也存在著很多不足,但PDOA現在正在研究中所以未被廣泛應用。這里需要注意的是:在軟件開發中有很多需求分析方法他們沒有好壞之分只要你運用得當照樣可以做出一個很好的系統,依據個人對某個方法的理解用自己最擅長的方法是最明智的選擇。


    5.面向對象需求分析(OOA)

      面向對象這個概念很簡單但也很復雜我在這里不做深入探討。我將從實際出發來和大家一起探討下在實際開發中我們應該怎么做。

      OOA的精髓在于世間萬物均為對象采用OOA方法在整個過程中包括2個工作任務:建立一個反應問題域靜態關系的概念模型,就是我們通常所說的類圖;另一個反應系統行為的動態模型,即用例模型那么我們在實際開發中到底怎么做呢?

    1)建立域模型

      尋找類:在尋找類時有多種方法典型的是根據需求文檔用“名詞動詞法”來尋找,找出備選類后再從中尋找出真正的類。(注意在用此方法時切記不要咬文嚼字專牛角尖在這里花費很長的時間)

      確定類之間的關聯:這個過程是迭代的我們需要理清楚這些類之間的關系如關聯、繼承、聚合等然后通過UML記錄下來。類之間的關系不是一下子就能確定下來的是要慢慢完善的為類添加職責:這里就可以理解成為類添加所需要的屬性和方法。

       域模型的詳細度:這里不做太多要求可以寫的很詳細也可以寫的簡單寫,可以把握好一個原則:只要能有利于團隊更好的開發就是好模型。

    2)建立用例模型

      什么是用例:

      用例實例是在系統中執行的一系列動作,這些動作將生成對特定參與者可見的價值結果。(用例實例就是常說的“使用場景“)一個用例定義一組用例實例。

      識別參與者:

      用例主要是為了讓客戶直觀的理解需求那么這里參與者是必不可少的這樣才能形象的勾畫出系統某個特定場景下的流程。

      注意參與者不僅可以是人也可以是其他的事物如(其他系統、硬件設備、時鐘等等)

      合并需求獲得的用例

      繪制用例圖(如果對用例圖不清楚請參考UML相關文章)

      細化用例描述

           用例描述可以包括以下幾個部分:

        用例名稱
          
                簡要說明

                事件流:是該用例要完成的工作步驟

                非功能需求

                前置條件

                后置條件

                擴展點

                優先級別

    3)要想做好需求分析光上面的用例是不夠的還有寫建模技術也要有如:協作圖、順序圖和狀態圖

      協作圖:是一種用以顯示對象如何被協調在一起執行用例的圖,用來識別協作完成給定業務的對象。

      順序圖:是一種用以顯示用例對象之間消息順序的圖,他與協作圖表達的信息是一樣的知識顯示的方式有差別。 

       順序圖以圖形化的方式強調消息的順序,而非協作對象間的順序。他和協作圖統稱為交互圖。

      狀態圖:是一種用以顯示對象在生命周期和轉換期情況的圖

    延伸閱讀

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


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(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>