第二章:軟體需求分析

來源:互聯網
上載者:User

 

 

        看了上邊的這張圖,相比大家都會明白這張講的大概內容,下邊我按這張圖的分類進行總結。

 

        一,先看需求分析的任務:

       通俗一點講就是藉助當前系統的邏輯模型匯出目標系統的邏輯模型,也就是解決“做什麼”的問題。大家看這張圖理解一下:

 

 

       詳細一點說就是:1,深入描述軟體的功能和效能;       2,確定軟體設計的約束和軟體同其它系統元素的介面細節;           3,定義軟體的其它有效性需求。          總而言之,需求分析就是針對使用者的要求,來確定被開發軟體系統的系統元素,構造出我們想要達到的模型!

 

      二,需求分析的過程:

     (1)首先就是問題識別:我們要明白我們針對的問題,這裡我舉幾個:1,功能需求;2,效能需求;3,環境需求;4,可靠性需求;5,安全保密要求;6,使用者介面需求;7,資源使用需求;8,成本消耗需求;9,預先估計以後系統可能達到的目標等,  這些都是我們需要識別的問題;當然問題識別的另一項任務是建立分析需要的通訊途徑,方便我們能夠順利的對這些問題進行分析。           
   (2)其次,就是分析與綜合:從資訊流和資訊結構出發,逐步細化所有的軟體功能,找出系統各元素之間的聯絡,介面特性和設計上的約束,分析它們是否滿足功能要求,是否合理。其實就是根基使用者的要求,來分析這款系統中對應的需求。             (3),編製需求分析階段的文檔:這裡包括四個方面,有軟體需求說明書;資料要求說明書;初步的使用者手冊;和修改,完善與確定軟體開發實施計劃。         (4),最後就是需求分析評審:這裡我提幾個標準: 
1,系統定義的目標是否與使用者的要求一致;      2,系統需求分析階段提供的文檔資料是否齊全;       3,文檔中的所有描述是否完整,清晰,準確反映使用者要求;          4,與所有其它系統成分的重要介面是否都已經描述。這是需求分析的四個階段。

 

       三,需求分析的原則:

      這裡我給大家提出6條:1,開始建立模型前,先理解問題;2,開發原型,使得使用者能夠瞭解將如何發生人機互動;3,記錄每個需求的起源和原因;4,使用多個需求視圖;5,給需求附於優先順序;6,努力刪除含糊性。

 

      四,軟體需求分析的方法:

          1,結構化分析方法,就是用抽象模型的概念,按照軟體內部資料傳遞,變換的關係,自頂向下逐層分解,直到找到滿足功能要求的軟體為之!這裡有四種工具,大家來看:資料流圖,資料詞典,結構化英語,判定表與判定樹;這裡我重點總結一下資料流圖,因為它用的最多。資料流圖的一些相關圖,大家看一下:

 

                         

 

     根基上邊的三幅圖,我在這裡提出畫資料流程圖的幾個原則:           1,資料流圖上所有圖形符號只限於前述的四種基本圖形元素;               2,主圖中必須包括前述的四種基本元素,缺一不可;                3,每個加工至少有一個輸入資料流和一個輸出資料流;                    4,在資料流圖中,需按層給加工框編號,編號表明該加工所處層次及上下層的親子關係;                     
5,規定任何一個資料流圖子圖必須與它上一層的一個加工對應,兩者的輸入資料流與輸出資料流必須一致。                         6,圖上每個元素都必須有名字;                    7,資料流圖中不可夾帶控制流程;                  8,初畫時可以忽略瑣碎的細節,以集中精力於主要的資料流。

 

       2,原型型方法:開發初期我們構造一個原型,它可以和目標系統有差距,需要我們做的就是通過不斷的運行,評價,將此原型慢慢向目標軟體系統靠攏。它的優點就是設計人員能夠和使用者一直在一起。大家看這張圖:

 

           

          3,動態分析方法:這裡也有三種圖供我們選用:  狀態遷移圖,   時序圖,   Petri網。

 

             狀態遷移圖:是描述系統的狀態如何相應外部的訊號進行推移的一種圖形表示。大家看這張圖就會明白:

 

       

        Petri(petri Net Graph)網:適用於描述與分析相互獨立,協同操作的處理系統,也就是並發執行的處理系統。大家看這兩張圖,就會非常清楚:

 

 

      綜上,是我們需求分析的幾種方法,我們可以根基我們的需要,選擇適當的圖進行研究,當然互動使用效果會更好!

 

      五,最後我們說一下軟體需求規格說明:每一階段都需要有報告,有相同的部分,也有各自的特點,需要我們做的尋同存異,不斷研究,寫出符合實際的報告文檔:

 

       軟體需求,總而言之,就是做這款軟體需要什麼東西,拿這些東西做什麼,有什麼樣的標準與要求等,也就是弄明白要做什麼。想到上一篇中的蓋房子,其實軟體需求,就是針對要蓋的房子,去分析研究一下需要的東西,需要東西的多少,蓋成什麼樣的房子,達到什麼樣的標準等等。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.