張傳波軟件需求分析與需求管理實(shí)踐
一、 軟件需求分析理論
如果我們用數(shù)學(xué)方法來描述軟件需求分析,可以將一個(gè)應(yīng)用軟件定義為S,可能應(yīng)用軟件涉及功能性問題非常廣,我們用抽象化理論分析,可以劃分為各個(gè)功能域,可以用D1、D2、… Dn表示,那么,我們可以用一個(gè)表達(dá)式描述為
S={D1,D2,D3,…Dn}但是,功能域Di依然存在著有若干個(gè)問題P1、P2、P3、… Pm組成,并且每個(gè)功能對(duì)應(yīng)于子系統(tǒng)中的一個(gè)軟構(gòu)件,我們可以表示為???? Di={P1,P2,P3,…Pm}同樣,功能Pj有若干個(gè)行為F1、F2、F3、… Fk,每個(gè)行為對(duì)應(yīng)于軟構(gòu)件中的實(shí)現(xiàn)方法
Pj={F1,F(xiàn)2,F(xiàn)3,…Fk}
一個(gè)軟件包含了所有功能的集合,同時(shí)包含了實(shí)現(xiàn)所有功能的所有方法和算法描述。需求分析是依據(jù)于用戶需求,經(jīng)過需求問題識(shí)別,進(jìn)行分析、消化與綜合,制訂規(guī)格說明,評(píng)審,分為四個(gè)階段,形成用戶需求與設(shè)計(jì)同步,設(shè)計(jì)滿足用戶需求目標(biāo)。
需求分析方法始終貫穿著吸收、同化、貫徹方法和手段,用商業(yè)化行為解決需求與實(shí)現(xiàn)中存在的矛盾,解決用戶需求與商業(yè)化產(chǎn)品融通,解決規(guī)范與個(gè)性化追求。
二、 軟件需求分析目標(biāo)
軟件需求分析的主要實(shí)現(xiàn)目標(biāo):
1)對(duì)實(shí)現(xiàn)軟件的功能做全面的描述,幫助用戶判斷實(shí)現(xiàn)功能的正確性、一致性和完整?性,促使用戶在軟件設(shè)計(jì)啟動(dòng)之前周密地、全面地思考軟件需求;
2)了解和描述軟件實(shí)現(xiàn)所需的全部信息,為軟件設(shè)計(jì)、確認(rèn)和驗(yàn)證提供一個(gè)基準(zhǔn);
3)為軟件管理人員進(jìn)行軟件成本計(jì)價(jià)和編制軟件開發(fā)計(jì)劃書提供依據(jù);
需求分析的具體內(nèi)容可以歸納為六個(gè)方面:軟件的功能需求,軟件與硬件或其他外部系統(tǒng)接口,軟件的非功能性需求,軟件的反向需求,軟件設(shè)計(jì)和實(shí)現(xiàn)上的限制,閱讀支持信息。
軟件需求分析應(yīng)盡量提供軟件實(shí)現(xiàn)功能需求的全部信息,使得軟件設(shè)計(jì)人員和軟件測(cè)試人員不再需要需求方的接觸。這就要求軟件需求分析內(nèi)容應(yīng)正確、完整、一致和可驗(yàn)證。此外,為保證軟件設(shè)計(jì)質(zhì)量,便于軟件功能的休整和驗(yàn)證,軟件需求表達(dá)無岔意性,具有可追蹤性和可修改性。