qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請(qǐng)?jiān)L問 http://qaseven.github.io/

          淺談軟件測(cè)試風(fēng)險(xiǎn)管理

            摘要:軟件測(cè)試作為保證軟件質(zhì)量的重要手段,越來越引起人們的重視,而軟件測(cè)試項(xiàng)目中存在著風(fēng)險(xiǎn),如果能預(yù)先重視風(fēng)險(xiǎn)的評(píng)估,并對(duì)可能會(huì)出現(xiàn)的風(fēng)險(xiǎn)制定積極的應(yīng)對(duì)計(jì)劃,就可以在風(fēng)險(xiǎn)到來的時(shí)候,最大限度的避免風(fēng)險(xiǎn)或者降低風(fēng)險(xiǎn)所帶來的損失。

            關(guān)鍵詞:測(cè)試風(fēng)險(xiǎn)測(cè)試管理;軟件測(cè)試

            軟件本身的復(fù)雜性以及測(cè)試本身的特性決定了測(cè)試活動(dòng)實(shí)施過程中風(fēng)險(xiǎn)的大量存在,而風(fēng)險(xiǎn)會(huì)影響測(cè)試活動(dòng)的成敗,嚴(yán)重時(shí)還可能導(dǎo)致整個(gè)項(xiàng)目的失敗。因此,對(duì)測(cè)試風(fēng)險(xiǎn)的管理越來越引起人們的重視。

            1、風(fēng)險(xiǎn)存在的必然性

            軟件測(cè)試項(xiàng)目的風(fēng)險(xiǎn)來自于軟件和測(cè)試自身的特點(diǎn)。

            1.1 軟件的特點(diǎn)

            1)軟件產(chǎn)品是不可見的:軟件項(xiàng)目的開發(fā)進(jìn)度和軟件質(zhì)量管控過程是否符合標(biāo)準(zhǔn)很難衡量,使得軟件的管理也難于把握;

            2)軟件生產(chǎn)過程形式多樣,不存在絕對(duì)正確的形式:不同的軟件開發(fā)項(xiàng)目,應(yīng)采取不同的或者特定的軟件開發(fā)過程。但在項(xiàng)目開發(fā)之初卻不能確定正確的形式,只能根據(jù)項(xiàng)目的特點(diǎn)和開發(fā)經(jīng)驗(yàn)選擇,并在開發(fā)過程中不斷的調(diào)整,真正適合該軟件的開發(fā)過程只有在項(xiàng)目開發(fā)結(jié)束才能確定;

            3)大型軟件項(xiàng)目往往是“一次性”:項(xiàng)目一次性的特點(diǎn)使得過去的經(jīng)驗(yàn)不能被廣泛的借鑒。控制軟件管理風(fēng)險(xiǎn)的唯一途徑是設(shè)立監(jiān)測(cè)系統(tǒng),開展有效的風(fēng)險(xiǎn)監(jiān)控和管理。

            1.2 測(cè)試的特點(diǎn)

            1)完全測(cè)試是不可能的:在有限的資源和時(shí)間條件下,找出所有的軟件缺陷和錯(cuò)誤,使軟件趨于完美是不可能的,主要原因?yàn)槭禽斎肓刻蟆⑤敵鼋Y(jié)果太多、路徑組合太多;

            2)測(cè)試具有病毒一樣的免疫性:軟件缺陷具有病毒一樣可怕地免疫性,對(duì)其采用的測(cè)試越多,免疫能力就越強(qiáng),軟件測(cè)試工程師想要找出更多軟件缺陷就更加困難;

            3)測(cè)試是“泛型概念”:軟件測(cè)試涵蓋需求分析、概要設(shè)計(jì)等在內(nèi)的整個(gè)軟件生命周期,以確保每一個(gè)階段都經(jīng)住考驗(yàn);另外,測(cè)試自身也需要來自第三方的評(píng)估和監(jiān)督,以確保測(cè)試的可靠性;

            4)80-20原則:80%的軟件缺陷常常生存在20%的軟件模塊中。我們?cè)谙到y(tǒng)分析、系統(tǒng)設(shè)計(jì)、系統(tǒng)實(shí)現(xiàn)階段只能檢測(cè)和規(guī)避80%的軟件缺陷。在下一步的系統(tǒng)測(cè)試中,可以幫助我們找到剩余缺陷的80%,剩余4%的缺陷只有在系統(tǒng)交付使用后經(jīng)過大范圍長時(shí)間使用后才會(huì)暴露出來。所以,軟件測(cè)試只能保證盡可能多的發(fā)現(xiàn)軟件缺陷,卻無法保證能夠發(fā)現(xiàn)所有的軟件缺陷;

            5)缺陷的必然性:由于軟件測(cè)試中錯(cuò)誤的相關(guān)性,并非全部的軟件缺陷都能夠被成功修復(fù)。在缺陷的修復(fù)過程中會(huì)不可避免的引入新的錯(cuò)誤,另外,在修復(fù)的過程中,我們往往還會(huì)受到時(shí)間、成本等各方面因素的限制,導(dǎo)致最終不可能完全的修復(fù)所有的軟件缺陷。

            2、風(fēng)險(xiǎn)的評(píng)估

            風(fēng)險(xiǎn)的管理基本的內(nèi)容有兩項(xiàng):風(fēng)險(xiǎn)評(píng)估和風(fēng)險(xiǎn)控制。

            風(fēng)險(xiǎn)評(píng)估是在風(fēng)險(xiǎn)識(shí)別的基礎(chǔ)上,對(duì)識(shí)別出來的風(fēng)險(xiǎn)進(jìn)行評(píng)估,主要從下列四個(gè)方面入手:

            1)風(fēng)險(xiǎn)概率分析,即對(duì)風(fēng)險(xiǎn)發(fā)生的可能性設(shè)置一個(gè)尺度,如很高、較高、中等、較低、很低等;

            2)描述風(fēng)險(xiǎn)并預(yù)測(cè)風(fēng)險(xiǎn)發(fā)生后,對(duì)軟件產(chǎn)品和測(cè)試結(jié)果可能產(chǎn)生的影響或造成的損失等;

            3)確定風(fēng)險(xiǎn)評(píng)估的正確性,要對(duì)每個(gè)風(fēng)險(xiǎn)的表現(xiàn)、范圍、時(shí)間做出盡量準(zhǔn)確的判斷;

            4)根據(jù)損失(影響)和風(fēng)險(xiǎn)概率的乘積,來確定風(fēng)險(xiǎn)的優(yōu)先級(jí)別,定制風(fēng)險(xiǎn)應(yīng)對(duì)措施。

            3、風(fēng)險(xiǎn)控制的原則

            風(fēng)險(xiǎn)控制是建立在風(fēng)險(xiǎn)評(píng)估的基礎(chǔ)之上的,主要工作原則有:

            1)針對(duì)有些可以避免的風(fēng)險(xiǎn),例如測(cè)試用例執(zhí)行率未達(dá)到100%,可以通過制定測(cè)試規(guī)范,要求測(cè)試人員嚴(yán)格按照測(cè)試用例執(zhí)行測(cè)試,并記錄用例執(zhí)行情況,來避免該類風(fēng)險(xiǎn);

            2)有些不可避免的風(fēng)險(xiǎn),采取措施降低風(fēng)險(xiǎn),尤其是等級(jí)較高的風(fēng)險(xiǎn),將其轉(zhuǎn)化為不會(huì)引起嚴(yán)重后果的等級(jí)較低的風(fēng)險(xiǎn);

            3)凡事預(yù)則立,事先做好風(fēng)險(xiǎn)管理計(jì)劃,當(dāng)風(fēng)險(xiǎn)成為現(xiàn)實(shí)時(shí),可以更好的避免、轉(zhuǎn)移或減低風(fēng)險(xiǎn);

            4)對(duì)風(fēng)險(xiǎn)的處理制定應(yīng)急、高效的解決方案。

            4、軟件測(cè)試風(fēng)險(xiǎn)分析與管理方法

            軟件生命周期包括問題定義及規(guī)劃、需求分析、軟件設(shè)計(jì)、程序編碼、軟件測(cè)試和運(yùn)行維護(hù)六個(gè)階段,而軟件測(cè)試前面的任何一個(gè)環(huán)節(jié)的不嚴(yán)謹(jǐn)都可能增加軟件測(cè)試活動(dòng)的風(fēng)險(xiǎn)。軟件測(cè)試活動(dòng)中也存在各種各樣的風(fēng)險(xiǎn),其中常見風(fēng)險(xiǎn)有需求變更風(fēng)險(xiǎn)、測(cè)試過程風(fēng)險(xiǎn)、測(cè)試組織和人員風(fēng)險(xiǎn)。

            4.1 需求變更風(fēng)險(xiǎn)

            在軟件測(cè)試項(xiàng)目尤其是歷時(shí)較長的大項(xiàng)目的實(shí)施過程中,總會(huì)不可避免的出現(xiàn)需求的變更。如何把握好需求的變更,減少需求變更帶來的風(fēng)險(xiǎn),成為影響整個(gè)項(xiàng)目成敗的關(guān)鍵。

            4.1.1 軟件測(cè)試項(xiàng)目需求變更的管理

            1)設(shè)定需求變更的參考標(biāo)準(zhǔn),將需求基線。當(dāng)軟件測(cè)試項(xiàng)目組確認(rèn)要產(chǎn)生需求變更時(shí),用標(biāo)準(zhǔn)的變更申請(qǐng)表格將委托方的變更申請(qǐng)記錄存檔。每次的變更都應(yīng)在需求基線的基礎(chǔ)上進(jìn)行。

            2)軟件測(cè)試項(xiàng)目組收到委托方提交的需求變更申請(qǐng)后,成立項(xiàng)目變更控制委員會(huì)(CCB),負(fù)責(zé)對(duì)項(xiàng)目變更所帶來的影響進(jìn)行評(píng)估,包括測(cè)試項(xiàng)目的人力、物力、資金、管理、時(shí)間、質(zhì)量、工作負(fù)荷等內(nèi)部因素,以及資本、委托方要求的完工時(shí)間、項(xiàng)目負(fù)債情況等各個(gè)方面的影響。

            3)變更確定后,選擇可行的實(shí)施方案。為了將項(xiàng)目變更的風(fēng)險(xiǎn)降低到最小,力求在盡可能小的變動(dòng)幅度內(nèi)對(duì)測(cè)試項(xiàng)目的目標(biāo)、預(yù)算、團(tuán)隊(duì)以及項(xiàng)目的進(jìn)度等主要的因素進(jìn)行微調(diào)。

            4)需求變更后,要重新確定新的需求基線;受影響的軟件計(jì)劃、產(chǎn)品、活動(dòng)等也要進(jìn)行相應(yīng)的變更,以保證和最新需求的一致性。

            4.2 測(cè)試過程風(fēng)險(xiǎn)

            在測(cè)試工作中,主要的風(fēng)險(xiǎn)有:

            1)需求的臨時(shí)或突然變化,導(dǎo)致設(shè)計(jì)的修改和代碼的重寫,使得測(cè)試時(shí)間不夠;

            2)測(cè)試用例沒有得到100%的執(zhí)行;

            3)質(zhì)量需求或產(chǎn)品的特性理解不準(zhǔn)確,造成測(cè)試范圍分析的誤差,結(jié)果某些地方始終測(cè)試不到或驗(yàn)證的標(biāo)準(zhǔn)不對(duì);

            4)質(zhì)量標(biāo)準(zhǔn)不都是很清晰的,如適用性的測(cè)試,仁者見仁、智者見智;

            5)測(cè)試用例設(shè)計(jì)不到位,忽視了一些深層次的邏輯、邊界條件、用戶場(chǎng)景等;

            6)測(cè)試環(huán)境與實(shí)際生產(chǎn)環(huán)境一般情況下都不可能完全一致,造成測(cè)試結(jié)果的誤差;

            7)有些缺陷出現(xiàn)頻率不是百分之百,不容易被重現(xiàn);如果代碼質(zhì)量差,軟件缺陷很多,被漏檢的缺陷可能性就大;

            8)回歸測(cè)試一般是選擇性的執(zhí)行部分測(cè)試用例,必然帶來風(fēng)險(xiǎn)。

            前面3種風(fēng)險(xiǎn)可以通過前期調(diào)研人員或測(cè)試人員與客戶加強(qiáng)溝通或者制定嚴(yán)格的制度來避免的,而針對(duì)有些不可避免的風(fēng)險(xiǎn),采取一些有效的測(cè)試風(fēng)險(xiǎn)控制方法來盡量降低風(fēng)險(xiǎn),例如測(cè)試環(huán)境不正確,可以通過事先列出要檢查的所有條目,在測(cè)試環(huán)境設(shè)置好后,由其他人員按已列出條目逐條檢查;針對(duì)程序中總是存在的“未發(fā)現(xiàn)的缺陷”,可以通過提高測(cè)試用例的覆蓋率(如達(dá)到99.9%)來降低這種風(fēng)險(xiǎn);針對(duì)經(jīng)常出現(xiàn)的產(chǎn)品發(fā)布前夕,在某個(gè)不是很重要的新功能上發(fā)現(xiàn)一個(gè)嚴(yán)重缺陷的問題,可以通過去掉該新功能來轉(zhuǎn)移因?yàn)樾薷拇巳毕菘赡芤鸬哪硞€(gè)原有功能上的缺陷的風(fēng)險(xiǎn)。回歸測(cè)試只執(zhí)行部分用例帶來的風(fēng)險(xiǎn)是可以避免的,但出于時(shí)間或成本的綜合考慮,一般是存在的。


            提前做好風(fēng)險(xiǎn)管理計(jì)劃和風(fēng)險(xiǎn)控制策略,可以更好的避免、轉(zhuǎn)移或者降低風(fēng)險(xiǎn):

            1)在執(zhí)行項(xiàng)目計(jì)劃,做資源、時(shí)間、成本等的估算時(shí),要留有余地;

            2)在項(xiàng)目開始前,制定風(fēng)險(xiǎn)管理計(jì)劃,重點(diǎn)把握邊界上可能會(huì)出現(xiàn)變化、難以控制的因素;

            3)重視人員隊(duì)伍的培養(yǎng),對(duì)每個(gè)關(guān)鍵性技術(shù)崗位人員培養(yǎng)后備人員,確保項(xiàng)目不受人員流動(dòng)的嚴(yán)重影響;

            4)制定工作機(jī)制和文檔標(biāo)準(zhǔn),保證文檔的及時(shí)產(chǎn)生,便于項(xiàng)目知識(shí)的分享和移交;

            5)對(duì)工作進(jìn)行相互審查,不同的測(cè)試人員在不同測(cè)試模塊上相互調(diào)換,及時(shí)發(fā)現(xiàn)問題;

            6)日常跟蹤所有工作過程,及時(shí)發(fā)現(xiàn)風(fēng)險(xiǎn)的跡象,以避免風(fēng)險(xiǎn)。

            4.3 測(cè)試組織和人員風(fēng)險(xiǎn)

            4.3.1 測(cè)試組織風(fēng)險(xiǎn)

            測(cè)試人員不獨(dú)立于開發(fā)者,測(cè)試人員獨(dú)立與開發(fā)者的程度將影響測(cè)試結(jié)果。

            1)成立專門的測(cè)試組織;

            2)制定專門的測(cè)試管理流程和質(zhì)量保證手冊(cè),規(guī)范測(cè)試過程,保證測(cè)試的質(zhì)量;

            3)委托專門的測(cè)試組織執(zhí)行測(cè)試活動(dòng)。

            4.3.2 人員風(fēng)險(xiǎn)

            測(cè)試項(xiàng)目尤其是周期較長的項(xiàng)目幾乎不可避免的要面臨人員的流動(dòng),從而增加項(xiàng)目失敗的風(fēng)險(xiǎn)系數(shù)。及早預(yù)防是降低這種人員風(fēng)險(xiǎn)的基本策略。下面從第三方測(cè)試的角度具體介紹一下人員風(fēng)險(xiǎn)的控制方法:

            1)指派一名項(xiàng)目副經(jīng)理或項(xiàng)目經(jīng)理助理協(xié)調(diào)項(xiàng)目經(jīng)理管理項(xiàng)目工作,降低關(guān)鍵崗位人員流動(dòng)的風(fēng)險(xiǎn)。但是一般只建議在項(xiàng)目經(jīng)理這種比較重要的崗位采用這種冗余復(fù)制的策略來預(yù)防人員風(fēng)險(xiǎn),否則將大大增加項(xiàng)目成本;

            2)建立良好的文檔管理機(jī)制,包括項(xiàng)目組進(jìn)度文檔,個(gè)人進(jìn)度文檔(測(cè)試日志)、版本控制文檔、整體技術(shù)文檔(測(cè)試策略、測(cè)試用例)、個(gè)人技術(shù)文檔(測(cè)試執(zhí)行記錄、缺陷報(bào)告)等。一旦出現(xiàn)人員的變動(dòng),替補(bǔ)組員能夠根據(jù)完整的文檔盡早接手工作;

            3)控制項(xiàng)目團(tuán)隊(duì)中外包或兼職人員的比例,且項(xiàng)目核心部分的工作應(yīng)該盡量由全職人員來擔(dān)任,以減少兼職人員對(duì)項(xiàng)目組人員不穩(wěn)定性的影響;

            4)加強(qiáng)測(cè)試項(xiàng)目組內(nèi)的技術(shù)交流,定期召開項(xiàng)目例會(huì),使測(cè)試組成員能夠相互熟悉對(duì)方的工作和進(jìn)度,能夠在必要的時(shí)候接替對(duì)方工作;

            5)為項(xiàng)目測(cè)試工作的開展提供盡可能好的基礎(chǔ)環(huán)境,比如待遇、項(xiàng)目組內(nèi)良好的人際關(guān)系和工作氛圍等。良好的工作環(huán)境對(duì)于穩(wěn)定項(xiàng)目組人員以及提高生產(chǎn)效率都有不可忽視的作用。

            4.3.3 外包人員風(fēng)險(xiǎn)

            1)制定相關(guān)的管理流程文件,規(guī)范外包人員的活動(dòng),防患于未然,規(guī)避外包風(fēng)險(xiǎn);

            2)通過外派監(jiān)管團(tuán)隊(duì)的方式對(duì)整個(gè)測(cè)試活動(dòng)進(jìn)行監(jiān)控;

            3)通過對(duì)測(cè)試活動(dòng)的中間交付物進(jìn)行檢查保證測(cè)試的質(zhì)量,例如:對(duì)設(shè)計(jì)的測(cè)試用例進(jìn)行評(píng)審、對(duì)編寫的測(cè)試代碼進(jìn)行抽查、檢查測(cè)試執(zhí)行的日志等;

            4)對(duì)于外包測(cè)試的形式,除了避免承包方項(xiàng)目人員的泄密,還要注意雙方數(shù)據(jù)傳輸過程中的信息保密。在采用外包測(cè)試的時(shí)候,不可避免地要進(jìn)行各種信息的傳送,可能是雙方的電話、E-Mail交流,也可能是軟件版本的傳輸,在條件允許的情況下要盡量使用VPN等方式。如果有必要,對(duì)傳輸?shù)臄?shù)據(jù)要進(jìn)行加密。

            5、結(jié)束語

            測(cè)試過程中的風(fēng)險(xiǎn)總是存在的,該文對(duì)測(cè)試活動(dòng)中主要的風(fēng)險(xiǎn)進(jìn)行識(shí)別和控制,并確定針對(duì)性措施,避免風(fēng)險(xiǎn)發(fā)生,或者把風(fēng)險(xiǎn)降到最小。要想做好風(fēng)險(xiǎn)管理工作,就必須徹底改變測(cè)試項(xiàng)目的管理方式,建立防患于未然的管理意識(shí),并結(jié)合具體的實(shí)踐工作不斷地分析遇到的風(fēng)險(xiǎn),總結(jié)各種風(fēng)險(xiǎn)的應(yīng)對(duì)措施,指導(dǎo)實(shí)踐,降低產(chǎn)品質(zhì)量風(fēng)險(xiǎn)。



          posted on 2012-10-22 10:23 順其自然EVO 閱讀(1861) 評(píng)論(0)  編輯  收藏 所屬分類: 管理方向

          <2012年10月>
          30123456
          78910111213
          14151617181920
          21222324252627
          28293031123
          45678910

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 南雄市| 大城县| 贵港市| 西城区| 白沙| 文化| 禹城市| 嘉荫县| 河北区| 高碑店市| 天全县| 济宁市| 湘潭市| 仙居县| 靖宇县| 内江市| 南陵县| 永仁县| 轮台县| 青川县| 诸暨市| 和田市| 林口县| 枝江市| 福安市| 贵阳市| 普宁市| 阜南县| 黎平县| 岗巴县| 平安县| 梨树县| 郴州市| 漳平市| 房产| 康定县| 淮安市| 乐安县| 思南县| 博客| 启东市|