軟件需求分析
需求分析就是對客戶提出的“要求”或者“需求”進行深入細致地調研和分析,準確理解用戶和項目的功能、性能、可靠性等具體要求,將用戶非形式的需求表述轉化為完整的需求定義,從而確定系統必須做什么,為系統設計、系統完善和系統維護提供依據。
需求分析是項目計劃階段非常重要的環節,該環節決定了需要“實現什么”,為下一步如何去“實現”提供了明確的方向。
進行需求分析需要做到以下幾點:
(一)需求獲取:在準備階段,我們首先要確定需求獲取的目標及范圍,根據你的目標來選擇對應的方式獲取需求。
(二)需求分類:一般情況下,我們會根據對象的不同,將需求分為業務需求、用戶需求、功能需求等。
(三)需求篩選:有些需求是偽需求,有些需求則不具備實現價值,我們可以通過真實性、價值性、可行性三個維度來篩選需求,過濾掉虛假的、不可行的、沒有價值、價值不大或投入產出比不理想的需求。
(四)需求提煉:對剩下的需求進行提煉,目的在于從獲取的表面需求中提煉出客戶的本質需求。找出“為什么要做”比“做什么”更重要。
(五)需求優先級排序:挖掘到客戶的真實目的后,我們需要根據不同維度的需求歸類方法,如KANO模型分析法、投入產出比ROI等,對其進行歸納整理并排出優先級,幫助產品有條理地安排開發秩序,避免盲目排序。
(六)產出需求文檔:通過以上的分析,我們需要將收集到的需求進行分析、匯總、歸類,輸出產出需求文檔,為接下來的工作做好鋪墊。
以上是對需求分析的一些理解和思路,做好需求分析工作之后,就可以對可實現的需求進行落地方案的跟進。
軟件需求的分析方法
軟件需求分析方法大體分為如下四類:結構化方法、面向對象方法、面向控制方法和面向數據方法。限于篇幅,將主要從結構化方法和面向對象方法以及RUP三個方面進行簡要的探討。 面向對象(Object Oriented, OO)的方法把分析建立在系統對象以及對象間交互的基礎之上,使得我們能以3個最基本的方法框架——對象及其屬性、分類結構和集合結構來定義和溝通需求。面向對象的問題分析模型從3個側面進行描述,即對象模型(對象的靜態結構)、動態模型(對象相互作用的順序)和功能模型(數據變換及功能依存關系)。需求工程的抽象原則、層次原則和分割原則同樣適用于面向對象方法,即對象抽象與功能抽象原則是一樣的,也是從高級到低級、從邏輯到物理,逐級細分.每一級抽象都重復對象建模(對象識別)一動態建模(事件識別)一功能建模(操作識別)的過程,直到每一個對象實例在物理(程序編碼)上全部實現為止。
面向對象需求分析(OORA)利用一些基本概念來建立相應模型,以表達目標系統的不同側面。盡管不同的方法所采用的具體模型不盡相同,但都無外乎用如下五個基本模型來描述軟件需求:
整體—部分模型:該模型描述對象(類)是如何由簡單的對象(類)構成的。將一個復雜對象(類)描述成一個由交互作用的若干對象(類)構成的結構的能力是OO途徑的突出優點。該模型亦稱聚合模型。
分類模型:分類模型描述類之間的繼承關系。與聚合關系不同,它說明的是一個類可以繼承另一個或另一些類的成分,以實現類中成分的復用。
類—對象模型:分析過程必須描述屬于每個類的對象所具有的行為,這種行為描述的詳細程度可以根據具體情況而定。既可以只說明行為的輸入、輸出和功能,也可以采用比較形式的途徑來精確地描述其輸入、輸出及其相應的類型甚至使用偽碼或小說明的形式來詳細刻畫。
對象交互模型:一個面向對象的系統模型必須描述其中對象的交互方法。如前所述,對象交互是通過消息傳遞來實現的。事實人對象交互也可看作是對象行為之間的引用關系。因此,對象交互模型就要刻畫對象之間的消息流。對應于不同的詳細程度,有不同的消息流描述分析,分析人員應根據具體館況而選擇。一般地,一個詳細的對象交互模型能夠說明對象之間的消息及其流向,并且同時說明該消息將激活的對象及行為。一個不太詳細的對象交互模型可以只說明對象之間有消息,并指明其流向即可。還有一種狀況就是介于此兩者之間。
狀態模型:在狀態模型中,把一個對象看作是一個有限狀態機,由一個狀態到另一狀態的轉變稱作狀態轉換。狀態模型將對象的行為描述成其不同狀態之間的通路。它也可以刻畫動態系統中對象的創建和廢除,并稱由對象的創建到對象的廢除狀態之間的退路為對象的生存期。
狀態模型既可以用狀態轉換因的圖形化手段,又可用決策表或稱決策矩陣的形式來表。 RUP(Rational Unified Process)是Rational公司開發和維護的過程產品。RUP是工程化的軟件開發過程,它提供了在開發機構中分派任務和責任的紀律化方法。RUP不僅僅是一個簡單的過程,而是一個通用的過程框架,可用于各種不同類型的軟件系統、各種不同的應用領域、各種不同類型的組織、各種不同的功能級別以及各種不同的項目規模。RUP的突出特點可以由以下三個關鍵詞來體現——用例驅動、以構架為中心、迭代和增量的。這些是RUP所特有的,也是同等重要的。構架提供了一種結構來指導迭代過程中的工作,而用例則確定了目標井驅動每次迭代的工作。
進行需求分析的基礎是要獲得用戶的需要,為了完成這一工作,必須建立業務模型,通過描述業務規則、業務邏輯,明確業務過程并對其進行規范、優化。對于一個系統,在建立業務模型時,應從3個方面來描述其特性:功能、行為、數據,對應于這些特性。 基于上述分析可知,結構化分析方法與面向對象分析方法的區別主要體現在兩個方面:
* 將系統分解成于系統的方式不同。前者將系統描述成一組交互作用的處理,后者則描述成一組交互作用的對象。
* 子系統之間的交互關系的描述方式不一樣。前者加工之間的交互是通過不太精確的數據流來表示的,而后者對象之間通過消息傳遞交互關系。
因此,面向對象軟件需求分析的結果能更好地刻畫現實世界,處理復雜問題,對象比過程更具有穩定性,便于維護與復用。
軟件需求分析4個步驟
軟件需求分析的內容是
如何進行軟件需求分析
如何進行軟件需求分析
軟件需求分析免費下載
鏈接:https://pan.baidu.com/s/1qNBwqvbRS5ziBSIeanLQAQ
需求分析也稱為軟件需求分析、系統需求分析或需求分析工程等,是開發人員經過深入細致的調研和分析,準確理解用戶和項目的功能、性能、可靠性等具體要求,將用戶非形式的需求表述轉化為完整的需求定義,從而確定系統必須做什么的過程。
本文發布于:2023-02-28 18:56:00,感謝您對本站的認可!
本文鏈接:http://www.newhan.cn/zhishi/a/167759065049456.html
版權聲明:本站內容均來自互聯網,僅供演示用,請勿用于商業和其他非法用途。如果侵犯了您的權益請與我們聯系,我們將在24小時內刪除。
本文word下載地址:軟件需求分析(軟件需求分析報告范文).doc
本文 PDF 下載地址:軟件需求分析(軟件需求分析報告范文).pdf
| 留言與評論(共有 0 條評論) |