中航工業(yè)蘇州長風(fēng)航空電子有限公司 曾 睿
?
基于風(fēng)險管理的軟件質(zhì)量控制方法
中航工業(yè)蘇州長風(fēng)航空電子有限公司 曾 睿
【摘要】《質(zhì)量管理體系 要求》(ISO 9001:2015)引言中引入了基于風(fēng)險的方法的概念,據(jù)此以美國Carnegie Mellon大學(xué)軟件工程研究所(SEI)構(gòu)建的持續(xù)風(fēng)險管理框架模型(CRM)為例,介紹了基于風(fēng)險管理的軟件質(zhì)量控制方法。該模型將軟件質(zhì)量風(fēng)險管理過程劃分為風(fēng)險識別、分析、計劃、控制、跟蹤5個步驟,強調(diào)風(fēng)險管理的方式是連續(xù)循環(huán)的,其核心是風(fēng)險管理的溝通與交流,要求在軟件研發(fā)及其產(chǎn)品生命期的所有階段都要通過不斷溝通和交流來關(guān)注風(fēng)險管理。
【關(guān)鍵詞】軟件;質(zhì)量控制;風(fēng)險管理
軟件質(zhì)量控制是確定軟件研發(fā)結(jié)果與質(zhì)量標(biāo)準(zhǔn)和用戶需求的符合程度,防止軟件產(chǎn)品出現(xiàn)缺陷的過程與活動。它不僅包括軟件產(chǎn)品的質(zhì)量控制,也包括軟件研發(fā)過程的質(zhì)量控制,貫穿于軟件研發(fā)的全過程,其主要手段為驗證與確認(rèn)。驗證是從軟件研發(fā)角度來評判是否正確地構(gòu)造了產(chǎn)品(是否符合標(biāo)準(zhǔn)),而確認(rèn)則是從軟件用戶的角度來評判是否構(gòu)造了正確的產(chǎn)品(是否符合需求);其主要方法通常有事前控制和事后控制兩大類。前者通過CMM、ISO等標(biāo)準(zhǔn)化和過程管理來預(yù)防和控制軟件質(zhì)量缺陷,后者通過技術(shù)評審、調(diào)試和測試來發(fā)現(xiàn)和彌補軟件質(zhì)量缺陷。盡管兩者各有其作用,且不能相互替代,但事前控制對于保證軟件質(zhì)量更為重要。
隨著軟件功能越來越強大、系統(tǒng)越來越復(fù)雜,影響軟件質(zhì)量的因素越來越多,軟件質(zhì)量的不確定性也在增加。為此,在事前控制中可借助于風(fēng)險管理法,對軟件研發(fā)過程中的各種影響因素及其不確定性進行分析和管控,以進一步提高軟件質(zhì)量、降低研發(fā)和使用費用。
2.1風(fēng)險與風(fēng)險管理
相對于ISO 9001:2008《質(zhì)量管理體系 要求》,新版《質(zhì)量管理體系 要求》(ISO 9001:2015)引言中引入了基于風(fēng)險的方法的概念[1]?!顿|(zhì)量管理體系 基礎(chǔ)和術(shù)語》(ISO 9000:2015)給出了有關(guān)風(fēng)險的定義,即:風(fēng)險是針對預(yù)期結(jié)果的不確定性的影響[2]。實際上,之前的ISO 9001標(biāo)準(zhǔn)已應(yīng)用了基于風(fēng)險的方法這一原理,而新版標(biāo)準(zhǔn)將基于風(fēng)險的方法表述得更加明確,并將其融入了質(zhì)量管理體系的建立、實施、維護和持續(xù)改進的要求中。
軟件質(zhì)量風(fēng)險系指期望達到的軟件質(zhì)量目標(biāo)與實際結(jié)果的差距,即目標(biāo)與結(jié)果符合程度的不確定性,可用風(fēng)險值來表征,其數(shù)學(xué)表達式為[3]:
R=P×C (1)
式中:R-軟件質(zhì)量風(fēng)險值;P-風(fēng)險發(fā)生的概率;C-風(fēng)險帶來的后果。
軟件質(zhì)量風(fēng)險管理系指識別、分析、評估和控制軟件質(zhì)量風(fēng)險的活動。它不是孤立的,而是一個系統(tǒng)化和持續(xù)化的過程。
風(fēng)險是一種客觀存在。人們只能在一定范圍內(nèi)改變風(fēng)險形成和發(fā)展的條件,降低風(fēng)險發(fā)生的概率,減輕風(fēng)險帶來的不利影響,但難以徹底消除風(fēng)險。因此,風(fēng)險管理就顯得尤為重要。
2.2風(fēng)險管理步驟
軟件質(zhì)量風(fēng)險管理是軟件質(zhì)量管理領(lǐng)域的研究熱點之一。目前,比較成熟的風(fēng)險管理方法是美國Carnegie Mellon大學(xué)軟件工程研究所(SEI)構(gòu)建的軟件質(zhì)量風(fēng)險管理體系。該體系由風(fēng)險評估和風(fēng)險管控兩部分構(gòu)成。前者包括風(fēng)險識別與分析,據(jù)此評估風(fēng)險發(fā)生的概率(P);后者包括風(fēng)險跟蹤與應(yīng)對,據(jù)此管控風(fēng)險帶來的后果(C),從而降低軟件質(zhì)量的風(fēng)險值(R)。為此,該體系將軟件質(zhì)量風(fēng)險管理劃分為風(fēng)險識別、分析、計劃、控制、跟蹤5個步驟。風(fēng)險管理的方式是連續(xù)循環(huán)的,其核心是風(fēng)險管理的溝通與交流,要求在軟件研發(fā)及其產(chǎn)品生命期的所有階段都要通過不斷溝通和交流來關(guān)注風(fēng)險管理,即所謂持續(xù)風(fēng)險管理框架模型(Continuous Risk Management,CRM)[4],見圖1。
圖1 持續(xù)風(fēng)險管理框架模型
步驟1:識別。風(fēng)險識別定義了發(fā)現(xiàn)風(fēng)險的活動和方法,其目的在于通過識別,發(fā)現(xiàn)軟件研發(fā)過程中存在哪些風(fēng)險因素和困難,從而揭示風(fēng)險和風(fēng)險來源。這是軟件質(zhì)量風(fēng)險管理的基礎(chǔ),可依靠問卷等方式完成。
步驟2:分析。風(fēng)險分析定義了評估風(fēng)險的活動和方法,其目的在于逐項分析軟件研發(fā)過程中各風(fēng)險因素可能影響的程度和范圍、發(fā)生概率,并據(jù)此對各風(fēng)險因素進行分級或分類,確定最嚴(yán)重的風(fēng)險問題。
步驟3:計劃。風(fēng)險計劃定義了應(yīng)對風(fēng)險的活動和方法,其目的在于將按優(yōu)先順序排列的風(fēng)險列表轉(zhuǎn)變?yōu)轱L(fēng)險應(yīng)對計劃所需的任務(wù),包括(但不限于)為嚴(yán)重風(fēng)險確定風(fēng)險設(shè)想情形、相應(yīng)的應(yīng)對途徑和行動方案。
步驟4:跟蹤。風(fēng)險跟蹤定義了監(jiān)視風(fēng)險的活動和方法,其目的在于收集精準(zhǔn)、及時和相關(guān)的風(fēng)險變化信息,并將其以更為有效和便于理解的方式提交給軟件研發(fā)負責(zé)人,以便確定啟動執(zhí)行風(fēng)險應(yīng)對計劃的時機。
步驟5:控制。風(fēng)險控制定義了降低風(fēng)險的活動和方法,其目的在于根據(jù)風(fēng)險應(yīng)對計劃和跟蹤結(jié)果進行及時有效的決策,采取有針對性的行動,并報告風(fēng)險應(yīng)對結(jié)果,從而控制軟件研發(fā)過程的風(fēng)險,并使其盡可能降低。
基于風(fēng)險管理的方法并不是新概念。新版《質(zhì)量管理體系 要求》(ISO 9001:2015)對此加以言明并貫穿于質(zhì)量管理全過程,包括如實施預(yù)防措施以消除潛在不合格、分析發(fā)生的不合格并采取與不合格的影響相適應(yīng)的措施防止其再發(fā)生。在軟件質(zhì)量管理方面,已經(jīng)采用了基于風(fēng)險管理的方法。該方法是持續(xù)運用的,需要具備更多的知識和準(zhǔn)備。基于風(fēng)險管理的方法增加了實現(xiàn)軟件質(zhì)量目標(biāo)的可能性,減少了不良結(jié)果的可能性,并促使軟件研發(fā)人員養(yǎng)成預(yù)防的習(xí)慣。
參考文獻
[1]ISO 9001:2015 Quality management systems-Requirements[S].2015.
[2]ISO 9000:2015 Quality management systems-Fundamentals and vocabulary[S].2015.
[3]Boebh B.W.Software risk management[M].Piscataway:IEEE Computer Society Press,1989.
[4]潘春光等.軟件項目風(fēng)險管理理論與方法研究綜述[J].控制與決策,2007,22(5):481-493.
作者簡介:
曾睿(1986—),四川內(nèi)江人,工學(xué)碩士,現(xiàn)任軟件工程師,主要從事軟件質(zhì)量管理工作。
Software quality control method based on risk management
ZENG Rui
(AVIC Suzhou Changfeng Avionics Co.,Ltd.Suzhou Jiangsu,215000)
ABSTRACT:A concept based on risk approach is introduced in the introduction of ISO 9001:2015 Quality management systems-Requirements. As an example,according to Continuous Risk Management(CRM)framework model constructed by the Software Engineering Institute(SEI)at Carnegie Mellon University in the United States,a software quality control method based on risk management is introduced in this paper.The process of software quality risk management in the model is divided into 5 steps:risk identification,analysis,planning,control and tracking.It is emphasized that risk management is a continuous cycle of process,its key is communication between the steps and it is required to pay attention to risk management in all phases of life cycle for the software development and product.
KEYWORDS:software;quality control;risk management