軟件項(xiàng)目成果的需求分析方和軟件項(xiàng)目的承擔(dān)者都十分關(guān)心這樣的一個(gè)問題:什么樣的因素會(huì)導(dǎo)致軟件項(xiàng)目的失?與項(xiàng)目有關(guān)的因素的改變將對(duì)按時(shí)、按經(jīng)費(fèi)預(yù)算交付符合預(yù)定質(zhì)量要求的軟件成果產(chǎn)生什么樣的影響?這些都屬于軟件項(xiàng)目開發(fā)過程中考慮的風(fēng)險(xiǎn)問題。
軟件項(xiàng)目的風(fēng)險(xiǎn)是指在軟件開發(fā)過程中可能出現(xiàn)的不確定因而造成損失或者影響,如資金短缺、項(xiàng)目進(jìn)度延誤、人員變更以及預(yù)算和進(jìn)度等方面的問題。風(fēng)險(xiǎn)關(guān)注未來的事情,這意味著,軟件風(fēng)險(xiǎn)涉及選擇及選擇本身包含的不確定性,軟件開發(fā)過程及軟件產(chǎn)品都要面臨各種決策的選擇。風(fēng)險(xiǎn)是介于確定性和不確定性之間的狀態(tài),是處于無知和完整知識(shí)之間的狀態(tài)。另一方面,風(fēng)險(xiǎn)將涉及思想、觀念、行為、地點(diǎn)等因素的改變。
軟件項(xiàng)目風(fēng)險(xiǎn)會(huì)影響項(xiàng)目計(jì)劃的實(shí)現(xiàn),如果項(xiàng)目風(fēng)險(xiǎn)變成現(xiàn)實(shí),就有可能影響項(xiàng)目的進(jìn)度,增加項(xiàng)目的成本,甚至使軟件項(xiàng)目不能實(shí)現(xiàn)。因此有必要對(duì)軟件項(xiàng)目中的風(fēng)險(xiǎn)進(jìn)行分析并采取相應(yīng)的措施加以管理,盡可能減少風(fēng)險(xiǎn)造成的損失。風(fēng)險(xiǎn)是在項(xiàng)目開始之后才對(duì)項(xiàng)目的執(zhí)行過程其負(fù)面的影響,所以軟件項(xiàng)目開始之前風(fēng)險(xiǎn)分析的不足,或者是軟件項(xiàng)目實(shí)施過程中風(fēng)險(xiǎn)應(yīng)對(duì)措施不得力,都有可能造成軟件失敗。
如果對(duì)項(xiàng)目進(jìn)行風(fēng)險(xiǎn)管理,就可以最大限度的減少風(fēng)險(xiǎn)的發(fā)生。它是為了將不確定因素出現(xiàn)的概率控制到最低,將不確定性所造成的損失減少到最低限度,對(duì)軟件項(xiàng)目全過程中的風(fēng)險(xiǎn)識(shí)別、分析和應(yīng)對(duì)的過程。在整個(gè)軟件項(xiàng)目的實(shí)施過程中,可能形成項(xiàng)目風(fēng)險(xiǎn)的因素有很多,如在項(xiàng)目啟動(dòng)階段可能存在項(xiàng)目目標(biāo)不明確,與用戶溝通少導(dǎo)致項(xiàng)目范圍不明確等分先因素;在系統(tǒng)設(shè)計(jì)階段可能因?yàn)槿狈τ薪?jīng)驗(yàn)的分析人員、設(shè)計(jì)人員導(dǎo)致和設(shè)計(jì)的結(jié)果不能直接用于程序員的開發(fā);在項(xiàng)目實(shí)施階段可能因?yàn)殚_發(fā)環(huán)境沒有準(zhǔn)備好,程序員開發(fā)能力差,或者因?yàn)橛脩籼岢鲂碌墓δ苄枨髮?dǎo)致原有設(shè)計(jì)實(shí)效、開發(fā)費(fèi)用超支,還有可能因?yàn)殚_發(fā)人員的流動(dòng)導(dǎo)致項(xiàng)目延期,客戶不滿意等情況。
軟件項(xiàng)目運(yùn)用專家調(diào)查法和頭腦風(fēng)暴法分析軟件開發(fā)項(xiàng)目中,并將其進(jìn)行整理分類。
1、由于與客戶溝通不暢對(duì)客戶的需求了解不足造成的風(fēng)險(xiǎn)在軟件開發(fā)項(xiàng)目整個(gè)生命周期的中都存在的風(fēng)險(xiǎn),主要包括需求變更風(fēng)險(xiǎn),涉及風(fēng)險(xiǎn),過程風(fēng)險(xiǎn),安裝及維護(hù)風(fēng)險(xiǎn)。
2、由于管理人員素質(zhì)不夠,經(jīng)驗(yàn)不足,溝通不暢,任務(wù)或其分配不合理,對(duì)項(xiàng)目的控制力度不夠造成的各種風(fēng)險(xiǎn),主要包括進(jìn)度風(fēng)險(xiǎn),預(yù)算風(fēng)險(xiǎn),管理能力風(fēng)險(xiǎn),信息安全風(fēng)險(xiǎn)。
3、由于技術(shù)力量不足,開發(fā)環(huán)境工具不足造成的。主要包括技術(shù)風(fēng)險(xiǎn),質(zhì)量風(fēng)險(xiǎn),軟件設(shè)計(jì)工具風(fēng)險(xiǎn),軟件開發(fā)工具風(fēng)險(xiǎn),員工技能風(fēng)險(xiǎn)。
4、由于公司或項(xiàng)目組內(nèi)外部環(huán)境變化所導(dǎo)致的風(fēng)險(xiǎn),主要包括人力資源風(fēng)險(xiǎn),政策風(fēng)險(xiǎn),市場風(fēng)險(xiǎn),營銷風(fēng)險(xiǎn)。
軟件項(xiàng)目中的風(fēng)險(xiǎn)永遠(yuǎn)不能全部消除,而只能采用避免、減輕、和接受三種因?qū)Σ呗浴?/span>
避免:通過分析找出發(fā)生風(fēng)險(xiǎn)事件的原因,消除這些原因來避免一些特定風(fēng)險(xiǎn)事件的發(fā)生。
減輕:通過降低風(fēng)險(xiǎn)事件發(fā)生的概率或得失衡量來減輕風(fēng)險(xiǎn)對(duì)項(xiàng)目的影響,也可采用風(fēng)險(xiǎn)轉(zhuǎn)移的方法來減輕風(fēng)險(xiǎn)對(duì)項(xiàng)目的影響。