需求分析是對收集到的需求信息進行詳細的匯總、剖析、分析、研究,確認需求信息準確、清晰、完備。顧名思義,需求分析方法就是進行需求分析所需使用的方法。常見的需求分析方法有:結(jié)構(gòu)化分析法、面向?qū)ο蠓治龇?、原型法等?/p>
(1)結(jié)構(gòu)化分析法。
結(jié)構(gòu)化分析法是一種傳統(tǒng)的分析法,它把整個需求信息工作分為若干個相互關(guān)聯(lián)的階段或?qū)哟危缓蟀凑战Y(jié)構(gòu)化、模塊化原則,自頂向下逐層進行分析,前一階段的結(jié)果是后一階段工作的依據(jù);每個階段或?qū)哟斡謩澐譃樵S多詳細的工作步驟,按順序開展。而且,每個階段或?qū)哟魏椭饕襟E都有明確、詳盡的要求和規(guī)定,各個階段或?qū)哟伍g和各個步驟的向下轉(zhuǎn)移都是通過建立各自的文檔和對關(guān)鍵階段、步驟進行審核和控制來實現(xiàn)的。
它的好處是不需要精確地定義系統(tǒng),只需要根據(jù)業(yè)務(wù)框架確定系統(tǒng)的功能范圍,以及每個功能的處理邏輯和業(yè)務(wù)規(guī)則、功能需求規(guī)格說明書等。正因為這樣,所以比較靈活多樣,既可以采用表格,又可以采用示例圖,還可以使用文字等方式來描述系統(tǒng)。
結(jié)構(gòu)化分析法的優(yōu)點是:①理論基礎(chǔ)嚴密;②注重開發(fā)過程的整體性和全局性;③用戶充分了解和理解它的指導(dǎo)思想。缺點是:①開發(fā)周期長;②文檔、設(shè)計說明煩瑣,工作效力低;③對分析人員要求比較高(對需求信息有非常深刻的認識);④對需求信息的質(zhì)量要求比較嚴格(需求信息不能有任何疏忽、差錯)。
(2)面向?qū)ο蠓治龇ā?/p>
面向?qū)ο笫且环N對現(xiàn)實世界中信息的理解和抽象的方法,是一種需求信息分析的方法,它適合復(fù)雜系統(tǒng)。面向?qū)ο蟮幕靖拍钣袑ο?、類、抽象、封裝、繼承、多態(tài)、接口、消息、組建、模式和復(fù)用等。
抽象數(shù)據(jù)類型概念對軟件系統(tǒng)有著重要作用,面向?qū)ο竽J浇⒃跀?shù)據(jù)抽象和面向?qū)ο蟮幕A(chǔ)上,將數(shù)據(jù)的表示方法及其相應(yīng)操作封裝在一個抽象數(shù)據(jù)類型或?qū)ο笾?。面向?qū)ο蟮姆治瞿P陀捎美P?、類—對象模型、對象—關(guān)系模型和對象—行為模型組成。
面向?qū)ο蠓治龇ǖ膬?yōu)點是:①開發(fā)方法直觀、方便;②封裝功能實現(xiàn)數(shù)據(jù)的隱蔽;③成功率非常高;④被廣泛應(yīng)用。缺點是:①抽象化定義,難于理解,很難做到精確;②需要各方密切配合;③對操作者要求較高;④建模時間比較長。
(3)原型法。
當很難一下子全面準確地提出用戶需求時,盡可能地先構(gòu)造一個粗糙、簡單的系統(tǒng)——原型系統(tǒng)。這個系統(tǒng)能實現(xiàn)客戶全部或部分需求,但是它的可靠性、安全性、穩(wěn)定性等一般都會存在問題。然后,反復(fù)對此系統(tǒng)進行升級、修改、完善,或者重新構(gòu)造一個系統(tǒng),直到最后的系統(tǒng)穩(wěn)定、可靠、安全、適用、令客戶滿意。這種方法就叫作原型法。原型法有兩種類型:拋棄型原型法和進化型原型法。拋棄型原型法(Throw-It-Away Prototype),就是反復(fù)重新構(gòu)造系統(tǒng),直到系統(tǒng)穩(wěn)定、可靠、安全、適用,令客戶滿意為止。即重新構(gòu)造一個系統(tǒng),拋棄原來的舊系統(tǒng)。進化型原型法(Evolutionary Prototype),即反復(fù)對此系統(tǒng)進行升級、修改、完善,直到系統(tǒng)穩(wěn)定、可靠、安全、適用,令客戶令滿意為止。
原型法的優(yōu)點是:① 實際可行;② 構(gòu)造方便、快速、便宜;③ 對人員要求不高;④ 適用于需求模糊的情況。缺點是:① 反復(fù)進行,讓人疲憊、厭倦;② 容易出現(xiàn)版本混亂現(xiàn)象。
此文摘自《項目經(jīng)理溝通管理技巧與實務(wù)》