摘 要 隨著國民經(jīng)濟(jì)的發(fā)展,信息化建設(shè)的加速以及互聯(lián)網(wǎng)普及,各行各業(yè)都在信息系統(tǒng)以及軟件開發(fā)上投入了大量的人力和物理。本文通過對軟件質(zhì)量保證的相關(guān)介紹和一些誤區(qū)分析,并結(jié)合CMMI(Capability Maturity Model Integration)、GJB、ISO9000等軟件質(zhì)量有效性模型和GQM范式工具化、制度化,提出了一些符合我國信息化建設(shè)的軟件質(zhì)量保證方法和工具。針對于軟件質(zhì)量保證將GQM范式工具化、制度化讓全員參與將是對其開發(fā)過程有效性的強(qiáng)有力支撐。
【關(guān)鍵詞】軟件管理 質(zhì)量管理 有效性評價
隨著國民經(jīng)濟(jì)的發(fā)展,信息化建設(shè)的加速以及互聯(lián)網(wǎng)普及,各行各業(yè)都在信息系統(tǒng)以及軟件開發(fā)上投入了大量的人力和物理。其已經(jīng)成為了國家的基礎(chǔ)性、戰(zhàn)略性產(chǎn)業(yè),在經(jīng)濟(jì)生成生活中軟件扮演著及其重要的角色,也是國家重點鼓勵及支持的領(lǐng)域。一方面軟件規(guī)模的不斷增長,另一方面從事軟件開發(fā)的相關(guān)技術(shù)人員也在不斷增長,這就給軟件企業(yè)以及相關(guān)項目的管理帶來了新的挑戰(zhàn)。
計算機(jī)軟件的開發(fā)主要是人的創(chuàng)造力活動,其產(chǎn)出的不同于傳統(tǒng)的加工制造產(chǎn)品,而是信息工具、知識工具,所以軟件開發(fā)是一個將專業(yè)人員的專業(yè)知識通過腦力轉(zhuǎn)化為產(chǎn)品的過程。某種意義上,其從業(yè)人員的專業(yè)化程度將決定其產(chǎn)出產(chǎn)品的結(jié)果。因此,在軟件產(chǎn)品的質(zhì)量保證上與傳統(tǒng)的工業(yè)制品的質(zhì)量保證有著極大的不同。本文通過對軟件質(zhì)量保證的相關(guān)介紹,并結(jié)合CMMI(Capability Maturity Model Integration)、GJB、ISO9000等軟件質(zhì)量有效性模型和GQM范式工具化、制度化,提出了一些符合我國信息化建設(shè)的軟件質(zhì)量保證方法和工具。
1 軟件質(zhì)量保證的發(fā)展?fàn)顩r
軟件質(zhì)量保證是將管理理論運用到軟件開發(fā)中的實踐過程。因此,其也與其它管理過程類似,要制定計劃通過系統(tǒng)的方法,既要面向管理層擬定質(zhì)量保證目標(biāo)、步驟,也要面向執(zhí)行者提出具體實踐方法才能夠正確的被項目所采納執(zhí)行。
就有效性而言,其概念早在2000版的ISO9000術(shù)語中被加入,其也可以看作是企業(yè)越來越關(guān)注改善質(zhì)量管理體系有效性的里程碑。其是用于衡量產(chǎn)品或項目完成策劃的活動和達(dá)到策劃結(jié)果的程度。就現(xiàn)行的2000版的ISO9000已經(jīng)加入了如配置管理、計劃管理、評審管理等適用于信息化企業(yè)的標(biāo)準(zhǔn),至此ISO9000變得越來越適用于軟件企業(yè)和信息化項目。
在軟件工程領(lǐng)域里,隨著工程項目的開展大量大型軟件項目越來越多的需要一套管理體系來保障項目的管理和執(zhí)行。于是在1994年美國國防部和卡內(nèi)基-梅隆大學(xué)共同開發(fā)和研制了軟件工程管理實踐模型CMMI,即軟件能力成熟度集成模型就此誕生。我國在不斷的工程實踐過程中緊跟國際步伐,于2003年開發(fā)了GJB5000-2003《軍用軟件能力成熟度模型》,并于2008年與時俱進(jìn)修訂再版了GJB5000A。其模型參考CMMI模型,并調(diào)整使之更加符合中國特色的社會主義建設(shè)。
總的來說,針對軟件開發(fā)過程其管理趨勢越來越趨于對有效性的衡量和度量。主要是從三個方面對管理思路提出了新的認(rèn)識:
(1)從以往只針對軟件開發(fā)過程的測試活動轉(zhuǎn)變?yōu)閷浖|(zhì)量保證和開發(fā)過程的度量;
(2)軟件質(zhì)量保證從以往針對于軟件開發(fā)后的補(bǔ)救措施轉(zhuǎn)變?yōu)橄到y(tǒng)性的整體預(yù)防措施;
(3)軟件質(zhì)量保證活動不在是軟件開發(fā)過程的某個串行階段而是兩者并行執(zhí)行,從源頭起進(jìn)行支撐與保障。
2 管理體系與工具
目前軟件企業(yè)和軟件項目組織的目標(biāo)不謀而合,那么采用何種工具何總思路就成為了關(guān)鍵。
隨著軟件組織的規(guī)模擴(kuò)大,也是將以往依靠個人“能力”向現(xiàn)在依靠“過程能力”在轉(zhuǎn)變。那么定義一套流程執(zhí)行一些列工作,并由工具來驅(qū)動,已經(jīng)是目前軟件企業(yè)管理的主流思路。也就是說,一旦建立了質(zhì)量管理體系后,組織內(nèi)部也就具有了一套度量和評價機(jī)制。組織可以依靠這套機(jī)制不斷完善和持續(xù)改進(jìn)。而工具本身既包含模型,由包含一套自動化的程序,輔助管理者和執(zhí)行者將數(shù)據(jù)填充到模型中,使模型可以合理的度量和評價。
就度量方法而言,1984年馬里蘭大學(xué)的Basili和Rombach就提出了著名的GQM范式。其通過三個層次來定義度量方法,即概念級、操作級和定量級。這三個層次自頂向下,從抽象到具體,逐步定義度量細(xì)則。概念級提出目標(biāo),對各種動機(jī)及對象逐個定義目標(biāo);操作級對目標(biāo)提出特征問題,通過問題說明目標(biāo);定量級針對問題收集數(shù)據(jù),給問題定量,通過定量分析問題。
針對于軟件質(zhì)量保證將GQM范式工具化、制度化讓全員參與將是對其開發(fā)過程有效性的強(qiáng)有力支撐。首先,軟件質(zhì)量保證就是盡早盡快的發(fā)現(xiàn)軟件的錯誤和缺陷,那么將其目標(biāo)定義為“質(zhì)量保證過程的有效性”以衡量測試策劃過程、測試策略、測試執(zhí)行效果、測試效率和測試質(zhì)量。如此就建立了一個概念級的目標(biāo)。
然后,通過訪談和與項目參與者溝通,鑒別并確立度量問題,找到圍繞項目質(zhì)量目標(biāo)關(guān)心的問題。如每個階段、每個過程的產(chǎn)出物有哪些?這些產(chǎn)出物符合什么標(biāo)準(zhǔn)?產(chǎn)出物是否滿足最終的用戶或者商業(yè)目標(biāo)?只有提出了這些問題,才可以根據(jù)問題建立度量元,這個過程也就完成了操作級的任務(wù)。
最后,選擇合適的度量元就是針對性的收集各種基礎(chǔ)數(shù)據(jù),以基礎(chǔ)數(shù)據(jù)作為參考度量過程與目標(biāo)結(jié)合。就目前實踐而言可以從三個方面進(jìn)行收集,第一測試過程的有效性,第二測試環(huán)境的有效性,第三測試用例的有效性。
完成了上述通過GQM范式對軟件成熟度模型的定義和結(jié)合,接下來就是設(shè)計一套自動化工具,全員參與將所給出的各個環(huán)節(jié)逐一執(zhí)行,并通過工具自動度量,這個自動的過程完全符合上述設(shè)計的每個分支項目。如對測試用例的度量,對測試文檔合格率的度量,對測試過程的執(zhí)行效果的度量,對測試發(fā)現(xiàn)缺陷數(shù)量的度量。通過上述度量,工具還可以生成報表通知給相關(guān)責(zé)任人及管理人員做參考數(shù)據(jù),便于匯總及匯報。
3 總結(jié)
作為軟件企業(yè)的管理者必須對軟件質(zhì)量保證有清醒的認(rèn)識,建立質(zhì)量管理體系是對軟件開發(fā)過程有效性的強(qiáng)力保證,也是企業(yè)質(zhì)量文化的根基。本文結(jié)合實踐,對實踐中運用CMMI(Capability Maturity Model Integration)、GJB、ISO9000框架的過程中缺少明確度量方法的問題,提出了結(jié)合GQM范式進(jìn)行工具化、流程化的過程提出了一些實踐指導(dǎo)。希望能夠推動軟件質(zhì)量保證管理工作的有效性,推動國產(chǎn)軟件業(yè)的健康成長。
參考文獻(xiàn)
[1]Perry WE.軟件測試的有效方法[M].北京:機(jī)械工業(yè)出版社,2004.
[2]楊玲萍.軍用軟件測試過程模糊決策技術(shù)研究及應(yīng)用[D].南京:東南大學(xué)軟件學(xué)院,2006:19-29.
[3]Black R.軟件測試過程管理[M].北京:機(jī)械工業(yè)出版社,2003.
作者簡介
劉楊赫(1981-),女,吉林省白山市人?,F(xiàn)為中國航發(fā)集團(tuán)航空動力控制系統(tǒng)研究所工程師,主要從事軟件測試、軟件質(zhì)量保證、軟件配置管理等工作。
作者單位
中國航發(fā)集團(tuán)航空動力控制系統(tǒng)研究所 江蘇省無錫市 214063