張寧
摘 要:自計算機(jī)技術(shù)被人們所重視以來,人們對于各類軟件的開發(fā)也就隨之興起,世界軟件產(chǎn)業(yè)也在不斷發(fā)展壯大,并且成為了世界經(jīng)濟(jì)發(fā)展中一個重要的環(huán)節(jié)。但是隨著人們對于軟件技術(shù)含量要求的日漸提高,各類軟件項目開發(fā)中的失敗情況也在不斷增加,給企業(yè)帶來損失。本文簡要介紹了軟件開發(fā)項目,介紹軟件開發(fā)項目風(fēng)險的特征、種類以及評估方法。
關(guān)鍵詞:軟件開發(fā)項目;項目風(fēng)險;風(fēng)險評估
1軟件開發(fā)項目的概述
軟件是計算機(jī)系統(tǒng)得以正常運(yùn)轉(zhuǎn)的必要條件,其主要包括運(yùn)行程序、數(shù)據(jù)庫以及各類相關(guān)文件。軟件開發(fā)項目本身屬于特殊項目開發(fā)工作,其與普通項目開發(fā)工作在特征上有著一定的差別。首先,軟件開發(fā)項目是創(chuàng)新的過程中,其所研發(fā)的程序是客戶指定的,無法利用現(xiàn)有組件對其進(jìn)行拼接;其次,軟件開發(fā)項目所加工的對象是一系列抽象化的數(shù)據(jù),并不是可以看得見、摸得著的實(shí)物;第三,軟件開發(fā)過程中需要相關(guān)開發(fā)人員投入大量的腦力勞動,并且這種腦力勞動強(qiáng)度較高,所需知識十分復(fù)雜;第四,軟件開發(fā)項目所研發(fā)的商品也不具有具體形態(tài),屬于程序代碼,是各類抽象化的數(shù)據(jù)集成體,因此其在開發(fā)的過程中能夠方便開發(fā)人員進(jìn)行修改和完善。
2軟件開放項目風(fēng)險評估的概述
2.1風(fēng)險的概述
在市場經(jīng)濟(jì)運(yùn)行過程中,風(fēng)險是無處不在的,各行各業(yè)都需要承擔(dān)其本身所具備的風(fēng)險,而一個企業(yè)對于風(fēng)險的預(yù)估、評價和規(guī)避能力就成為了其是否能夠長遠(yuǎn)發(fā)展的重要依據(jù)。根據(jù)國外研究者對于風(fēng)險的定義上可以看出,他們認(rèn)為風(fēng)險主要就是人類在從事某項已定的活動中時,由于各類不確定因素的影響,對自身造成了經(jīng)濟(jì)損失的情況,也就是可能發(fā)生的危險因素對當(dāng)事人或企業(yè)造成的損失。
2.2軟件開發(fā)項目風(fēng)險的各類特征
軟件項目開發(fā)本身就是一類具有特殊性質(zhì)的項目開發(fā)性工作,其與普通的項目存在著一定的差別,因此,軟件開發(fā)項目本身也就具有了自身獨(dú)有的特征。
(1)客觀性
在軟件開發(fā)的整個過程中,風(fēng)險是隨時相伴的,其發(fā)生的時間無法進(jìn)行準(zhǔn)確的確定,對于風(fēng)險的規(guī)避也具有較大的局限性,因此人們只能通過相關(guān)手段盡量減少風(fēng)險帶給企業(yè)的損失,而無法完全對其進(jìn)行規(guī)避。軟件項目開發(fā)中的風(fēng)險也是具有這種客觀存在性和普通性質(zhì)的,并且在軟件開發(fā)的過程中,其風(fēng)險發(fā)生的幾率也遠(yuǎn)超普通項目開發(fā)工作。
(2)不確定性
不確定性是軟件項目開發(fā)過程中風(fēng)險的主要特征,根據(jù)軟件開發(fā)團(tuán)隊本身的客觀屬性、軟件開發(fā)環(huán)境以及客戶對于軟件功能的要求等的不同,軟件項目開發(fā)過程中所要面對的風(fēng)險也就不同。同時由于各類客觀條件的不斷變化,人們對于軟件項目開發(fā)過程中所能夠發(fā)生的各類風(fēng)險也不能夠十分確定,同時在各類風(fēng)險認(rèn)知上,各企業(yè)或軟件研發(fā)者的認(rèn)識都有所不同,就使得風(fēng)險的不確定性有著更大的變化。
(3)行為的相關(guān)性
在軟件項目開發(fā)的過程中,出于對將風(fēng)險控制在最低的目的考慮,需要有相關(guān)的決策者對各類開發(fā)工作過程中的風(fēng)險進(jìn)行評估,而此時,軟件開發(fā)的風(fēng)險也就隨著決策者的行為發(fā)生了一定的轉(zhuǎn)變。因為,不同的決策者對于軟件項目開發(fā)的風(fēng)險有著不同的認(rèn)知,并且在采取相應(yīng)預(yù)估和規(guī)避策略時其所采取的方法也不相同,但是風(fēng)險本身卻是客觀存在的,不同的行為模式能夠?qū)е嘛L(fēng)險的結(jié)果有著不同的變化,這也就是風(fēng)險的行為相關(guān)性,同時也加劇了風(fēng)險本身的不確定性特征。
(4)多樣性
由于軟件項目開發(fā)工作本身就具有極其多樣的技術(shù)引入,因此在工作開展的過程中風(fēng)險也就發(fā)生了多樣性的轉(zhuǎn)變。由于項目本身的規(guī)模、周期、范圍以及種類等客觀因素也存在著一定的差異,也就使得風(fēng)險的過程和結(jié)果各不相同。另外,在軟件項目開發(fā)的過程中,相關(guān)決策者對于各類風(fēng)險都會做出預(yù)估和規(guī)避,并且在開發(fā)的各個階段也會針對于不同的風(fēng)險給予相應(yīng)的改進(jìn)措施,而這樣也就使得在整個過程中部分風(fēng)險得到了有效的降低,但是卻使得另一部分風(fēng)險發(fā)生了轉(zhuǎn)變,產(chǎn)生了新的風(fēng)險,使得軟件開發(fā)的風(fēng)險種類越來越多。另外,各類風(fēng)險在發(fā)生時能夠互相左右、互相牽制、互相誘發(fā),這也就加大了風(fēng)險的多樣性變化,給風(fēng)險評估和規(guī)避工作帶來了一定的麻煩。
(5)對稱性
在所有的項目開發(fā)過程中,項目本身的風(fēng)險與項目能夠帶來的經(jīng)濟(jì)收益都是呈現(xiàn)對稱性的,風(fēng)險越高的項目,其能帶給雙方的經(jīng)濟(jì)利益也就越大;但同時,風(fēng)險性越大,其給雙方可能帶來的經(jīng)濟(jì)損失也就越大,軟件的開發(fā)也不例外。
2.3軟件項目開發(fā)中風(fēng)險的種類
由于軟件項目開發(fā)本身具有的特殊性,因此其過程中所產(chǎn)生的風(fēng)險種類也非常多。其中,按照風(fēng)險的內(nèi)容進(jìn)行劃分,主要包括管理風(fēng)險、費(fèi)用風(fēng)險、周期風(fēng)險、技術(shù)風(fēng)險以及商業(yè)影響風(fēng)險等;而按照風(fēng)險本身的性質(zhì)可以將其分為3類,分別是開發(fā)環(huán)境風(fēng)險、項目特殊化風(fēng)險以及產(chǎn)品本身風(fēng)險;按照風(fēng)險的確定性進(jìn)行分類,可以將軟件項目開發(fā)風(fēng)險分為3大類,分別是已知性風(fēng)險、可預(yù)知性風(fēng)險以及不可預(yù)知性風(fēng)險。
3軟件項目開發(fā)風(fēng)險管理的概述
軟件項目開發(fā)風(fēng)險管理工作就是對軟件在開發(fā)過程中所能夠遇到的各類風(fēng)險進(jìn)行預(yù)估,并對判斷出的風(fēng)險進(jìn)行有效的規(guī)避。這類工作在各行各業(yè)運(yùn)營過程中都需要開展,是保證企業(yè)經(jīng)濟(jì)收入,減小風(fēng)險給投資者和開發(fā)者帶來的經(jīng)濟(jì)損失,有效保證企業(yè)的穩(wěn)定收入的主要方法。根據(jù)其所采用方法的不同,風(fēng)險管理所能夠起到的作用也不相同,同時對于風(fēng)險結(jié)果的改變也就不相同。
4模糊邏輯下軟件開發(fā)風(fēng)險評估的方法
模糊邏輯是一種與人類思維邏輯方式最為接近的分析方法,其主要是對于各類不確定因素、不準(zhǔn)確信息進(jìn)行判斷的分析方法。模糊邏輯主要是基于模糊邏輯變量、模糊邏輯函數(shù)以及似然推理等方法對軟件開發(fā)項目中存在的風(fēng)險進(jìn)行分析。
4.1模糊邏輯的基礎(chǔ)理論
在傳統(tǒng)邏輯思維中,其主要是以二值邏輯為基礎(chǔ),也就是說其對于事物的判斷主要就基于兩個結(jié)果,分別是“是”和“非”,這屬于對事物的清晰化判斷。對于不確定或變化性較大的事物的判斷上存在著極大的缺陷,因此也就誕生了模糊邏輯理論。
軟件開發(fā)過程中,相關(guān)開發(fā)者在對軟件進(jìn)行設(shè)計的過程中需要參考客戶所給出的條件,而這些條件本身具有一定的模糊性和不確定性,因此由于開發(fā)者理解的不同就會造成軟件風(fēng)險的不同,也就產(chǎn)生了不確定性。對于有模糊數(shù)集來說,其研究的對象是模糊的,但所分析的函數(shù)本身趨勢是精確的,但是由于在分析的過程中,人的主觀認(rèn)知有著一定的偏差,因此這種函數(shù)既具有數(shù)學(xué)的科學(xué)性,又具有個人化的主觀性。
4.2模糊邏輯下對于軟件開發(fā)風(fēng)險的評估方法
模糊邏輯可以說是對軟件開發(fā)中所產(chǎn)生的風(fēng)險進(jìn)行評價的最有效方法之一,由于軟件開發(fā)項目本身的特殊性,其所產(chǎn)生的風(fēng)險也就具有特殊性質(zhì),而模糊邏輯方法對于這類不確定性極高的事件的評估效果極好。
首先,相關(guān)管理者需要對軟件開發(fā)中所能夠產(chǎn)生的各類風(fēng)險進(jìn)行歸納,可以借鑒國外的相關(guān)研究,并將其歸于模糊邏輯數(shù)據(jù)庫中,保證在后期評估過程中能夠有據(jù)可依。
其次,根據(jù)所開發(fā)的軟件項目的實(shí)際情況,對整個風(fēng)險評估工作設(shè)計框架,這是為風(fēng)險評估工作提供了保障。
第三,根據(jù)模糊邏輯計算公式,對各類可能發(fā)生的風(fēng)險情況進(jìn)行分析和推演,并且建立其完整的模型。這樣管理者就能夠?qū)Ω黝愶L(fēng)險所導(dǎo)致的因素有一個直觀的了解。同時也對各類風(fēng)險所能夠帶來的結(jié)果進(jìn)行了解,并對其進(jìn)行相應(yīng)的改變。
第四,對概率樹進(jìn)行設(shè)定,這樣就能夠了解到在項目開發(fā)過程中,每一個風(fēng)險發(fā)生的幾率,同時了解各類風(fēng)險對于現(xiàn)金流的影響情況。同時對于概率樹的建立能夠有效對風(fēng)險在發(fā)展過程中所產(chǎn)生的變化進(jìn)行有效的預(yù)判,但需要注意的是,這種方法無法為風(fēng)險管理人員提供準(zhǔn)確的風(fēng)險發(fā)生概率和影響情況,還需要管理者基于數(shù)據(jù)進(jìn)行判斷。
5結(jié)語
軟件開發(fā)的風(fēng)險在一定程度上制約了軟件行業(yè)的發(fā)展,利用模糊邏輯理論能夠有效對未知的風(fēng)險進(jìn)行評估,雖然無法得到準(zhǔn)確的風(fēng)險判斷,但是可以為相關(guān)管理者提供有力的參考數(shù)據(jù),幫助其對軟件開發(fā)流程的安排進(jìn)行判斷。
參考文獻(xiàn)
[1] 陳麗蓉.軟件開發(fā)項目中的風(fēng)險管理[J]. 海南廣播電視大學(xué)學(xué)報,2008(04).
[2] 曹陽紅.軟件開發(fā)項目風(fēng)險研究[J]. 電子商務(wù),2010(08).
[3] 駱劍鋒.淺析軟件開發(fā)項目過程中的風(fēng)險管理[J]. 電腦知識與技術(shù),2009(18).
[4] 尹其磷. 軟件開發(fā)的風(fēng)險分析與控制[J]. 武漢理工大學(xué)報,2003(05).
[5] 黃一新. 論信息系統(tǒng)軟件開發(fā)項目的風(fēng)險管理[J]. 情報探索,2012(12).