作人員上的技術(shù)水平上應(yīng)具備怎樣的條件。(4)可靠性需求:對(duì)所開(kāi)發(fā)軟件在投入運(yùn)行后不發(fā)生故障的概率,按實(shí)際的運(yùn)行環(huán)境提出要求。所以對(duì)于重要的軟件,或是運(yùn)行失效會(huì)造成嚴(yán)重后果的軟件,應(yīng)提出較高的可靠性要求。(5)安全保密要求:應(yīng)當(dāng)在這方面恰當(dāng)?shù)刈龀鲆?guī)定,對(duì)所開(kāi)發(fā)的軟件給予特殊的設(shè)計(jì),使其在運(yùn)行中,其安全保密方面的性能得到必要的保證。(6)用戶(hù)界面需求:為用戶(hù)界面細(xì)致地規(guī)定到達(dá)的要求。(7)資源使用需求:開(kāi)發(fā)的軟件在運(yùn)行時(shí)和開(kāi)發(fā)時(shí)所需要的各種資源。(8)軟件成本消耗與開(kāi)發(fā)進(jìn)度需求:在軟件項(xiàng)目立項(xiàng)后,要根據(jù)合同規(guī)定,對(duì)軟件開(kāi)發(fā)的進(jìn)度和各步驟的費(fèi)用提出要求,作為開(kāi)發(fā)管理的依據(jù)。(9)預(yù)先估計(jì)以后系統(tǒng)可能達(dá)到的目標(biāo),這樣可以比較容易對(duì)系統(tǒng)進(jìn)行必要的補(bǔ)充和修改。
除了這些必需的需求,問(wèn)題識(shí)別的另一個(gè)工作是建立分析所需要的通信途徑,以保證能順利地對(duì)問(wèn)題進(jìn)行分析。
分析與綜合的目標(biāo)是給出目標(biāo)系統(tǒng)的詳細(xì)邏輯模型。在此步驟中,分析和綜合工作需反復(fù)地進(jìn)行。
對(duì)于編制需求分析的文檔,我們稱(chēng)描述需求分析文檔為軟件需求規(guī)格說(shuō)明書(shū),除了編寫(xiě)軟件需求規(guī)格說(shuō)明書(shū)之外,還要制定數(shù)據(jù)要求說(shuō)明書(shū)以及編寫(xiě)初步的用戶(hù)手冊(cè)。
需求分析評(píng)審是指在需求分析的最后一步,對(duì)系統(tǒng)功能的正確性、完整性和清晰性,以及其他需求給予評(píng)價(jià)。
三、軟件需求分析方法
軟件需求分析方法很多,如傳統(tǒng)方法、原型方法、模型驅(qū)動(dòng)方法、面向數(shù)據(jù)結(jié)構(gòu)的結(jié)構(gòu)化數(shù)據(jù)系統(tǒng)開(kāi)發(fā)方法等,選擇那種方法要根據(jù)哪些資源在什么時(shí)間對(duì)開(kāi)發(fā)人員有效,不能盲目套用。這里著重闡述原型方法。
傳統(tǒng)的軟件工程方法強(qiáng)調(diào)自頂向下分階段開(kāi)發(fā),要求在進(jìn)入實(shí)際開(kāi)發(fā)期之前必須預(yù)先對(duì)需求嚴(yán)格定義。但實(shí)踐表明,在系統(tǒng)建立起來(lái)之前很難緊緊依靠分析就確定出一套完整、一致、有效的應(yīng)用需求,并且這種預(yù)先定義的策略更不能適應(yīng)用戶(hù)需求不斷變化的情況。由此,原型法應(yīng)運(yùn)而生,它一反傳統(tǒng)的自頂向下的開(kāi)發(fā)模式,是目前較流行的使用開(kāi)發(fā)模式。
(一)原型的概念
原型最早使用在制造業(yè)和機(jī)械產(chǎn)品設(shè)計(jì)中,先做出產(chǎn)品的基本模型,然后進(jìn)行完善和改進(jìn),最后得到符合要求的產(chǎn)品。在軟件工程中,原型是指要開(kāi)發(fā)的軟件系統(tǒng)的原始模型,是軟件早期一個(gè)可運(yùn)行的版本,它反映最終系統(tǒng)的某些重要特性(如軟件界面與布局、功能等)。在獲得一組最基本的需求說(shuō)明后,通過(guò)分析構(gòu)造出一個(gè)小型的簡(jiǎn)約軟件系統(tǒng),滿(mǎn)足用戶(hù)的基本要求,然后不斷演化得到較高質(zhì)量的產(chǎn)品。原型法克服了傳統(tǒng)軟件生命周期法的一些弊端[4],具有快速靈活、交互式等特點(diǎn),方法核心是用交互、快速建立起來(lái)的原型取代了不太明確的需求規(guī)格說(shuō)明,用戶(hù)通過(guò)在計(jì)算機(jī)上實(shí)際運(yùn)行和試用原型系統(tǒng)得到親身感受并受到啟發(fā),通過(guò)反應(yīng)和評(píng)價(jià)向開(kāi)發(fā)者提供真實(shí)的反饋意見(jiàn)。然后開(kāi)發(fā)者根據(jù)用戶(hù)的意見(jiàn)對(duì)原型加以改進(jìn),通過(guò)“原型構(gòu)造-試用運(yùn)行-評(píng)價(jià)反饋-分析修改”的多次反復(fù),從而提高最終產(chǎn)品的質(zhì)量。
(二)原型分類(lèi)
由于建立原型的目的不同,實(shí)現(xiàn)原型的途徑也有所不同,通常有以下三種類(lèi)型:(1)探索型。這種原型目的是要弄清除客戶(hù)對(duì)目標(biāo)系統(tǒng)的要求,確定所希望的特性,并探討多種方案的可行性。(2)實(shí)驗(yàn)性。這種原型用于大規(guī)模開(kāi)發(fā)和實(shí)現(xiàn)之前,考核方案是否合適,規(guī)格說(shuō)明是否可靠。(3)進(jìn)化型。這種原型的目的不在于改進(jìn)規(guī)格說(shuō)明,而是將系統(tǒng)建造得容易處理變化,在改進(jìn)原型的過(guò)程中,逐步將原型進(jìn)化成最終系統(tǒng)。
(三)原型建立技術(shù)
原型建立技術(shù):(1)可執(zhí)行規(guī)格說(shuō)明。它是基于需求規(guī)格說(shuō)明的一種自動(dòng)化技術(shù),使用這種方法,人們可以直接觀