王芳靜,王和勇
(1.華南理工大學(xué) 電子商務(wù)系,廣東 廣州 510006;2. 廣州賽寶認(rèn)證中心服務(wù)有限公司,廣東 廣州 511370)
產(chǎn)品型軟件企業(yè)大多運(yùn)用敏捷開發(fā)模式,快速迭代交付出滿足特定行業(yè)需求的軟件產(chǎn)品。近年來,我國軟件和信息技術(shù)服務(wù)業(yè)發(fā)展水平呈現(xiàn)穩(wěn)步提升趨勢,但是整體仍需進(jìn)一步提高[1]。各軟件行業(yè)都會有使用問題的發(fā)生,軟件質(zhì)量的可靠性受到不同程度的質(zhì)疑。現(xiàn)代軟件項(xiàng)目要求軟件開發(fā)的每一次迭代都能快速、增量地交付[2]。在資源有限的情況下如何持續(xù)維持高質(zhì)量軟件交付是產(chǎn)品型敏捷軟件企業(yè)面臨的一大難題。當(dāng)試圖在軟件企業(yè)中提高敏捷性以提升高質(zhì)量軟件交付能力時(shí),需要綜合考慮其他因素,對其過程進(jìn)行有效改進(jìn)[3]。哪些關(guān)鍵因素影響了質(zhì)量目標(biāo)的達(dá)成?對識別出的關(guān)鍵質(zhì)量因素需要改進(jìn)到什么程度既能確保質(zhì)量目標(biāo)的達(dá)成,又能兼顧有限資源的合理分配?這兩個(gè)問題是企業(yè)決策者關(guān)心的問題。數(shù)據(jù)是引入新技術(shù)環(huán)境中的知識創(chuàng)造促成因素[4],數(shù)據(jù)和過程分析之間進(jìn)行接合,過程改進(jìn)將變得更加經(jīng)濟(jì)可行,使得不具備專業(yè)知識或缺少預(yù)算的團(tuán)隊(duì)也能進(jìn)行過程改進(jìn)[5]。為此,通過建立回歸預(yù)測模型,通過量化方式有效地策劃、預(yù)測、監(jiān)督和控制產(chǎn)品型敏捷軟件企業(yè)質(zhì)量過程改進(jìn)情況,充分合理分配有限的資源。
本文以某產(chǎn)品型敏捷軟件企業(yè)為例,結(jié)合量化過程改進(jìn)的理論和實(shí)踐經(jīng)驗(yàn),探析如何在產(chǎn)品型敏捷軟件企業(yè)中運(yùn)用回歸預(yù)測模型有效實(shí)施過程改進(jìn),從而為企業(yè)最終達(dá)成業(yè)務(wù)目標(biāo)奠定基礎(chǔ)。某產(chǎn)品型敏捷軟件企業(yè)核心業(yè)務(wù)為智能交通軟件研發(fā),專注于高速公路收費(fèi)領(lǐng)域,涉及智慧路網(wǎng)、高速公路清分結(jié)算、高速公路移動支付等多個(gè)軟件產(chǎn)品。質(zhì)量是交通行業(yè)的生命線,該企業(yè)自成立以來就十分重視軟件質(zhì)量,每年都會投入大量的資源以維持高質(zhì)量產(chǎn)出。隨著數(shù)字化的推進(jìn),過程改進(jìn)小組在2021年上半年收集質(zhì)量相關(guān)數(shù)據(jù),建立回歸預(yù)測模型,協(xié)調(diào)資源進(jìn)行量化質(zhì)量過程改進(jìn)和預(yù)測,截至2021年9月,企業(yè)在合理使用資源的前提下,高質(zhì)量的完成了項(xiàng)目任務(wù),得到了客戶和公司領(lǐng)導(dǎo)的高度認(rèn)可。
回歸預(yù)測模型法是一種數(shù)學(xué)預(yù)測方法,它是運(yùn)用數(shù)學(xué)模型,以一個(gè)或幾個(gè)自變量X作為依據(jù),來預(yù)測因變量Y發(fā)展變動趨勢和水平的一種方法。軟件組織可以運(yùn)用回歸預(yù)測模型在有限的資源下進(jìn)行漸進(jìn)式量化過程改進(jìn),預(yù)測和控制改進(jìn)目標(biāo)的達(dá)成情況?;貧w預(yù)測模型在軟件過程改進(jìn)中的主要研究問題包括:識別改進(jìn)目標(biāo)變量Y的影響因子X并確定相關(guān)性;確定Y與X間的定量關(guān)系表達(dá)式,建立改進(jìn)目標(biāo)預(yù)測模型并進(jìn)行檢驗(yàn);利用所建立的預(yù)測模型對改進(jìn)目標(biāo)進(jìn)行改進(jìn)和預(yù)測。
識別過程改進(jìn)目標(biāo)變量Y的影響因子X時(shí)多采用經(jīng)驗(yàn)和數(shù)據(jù)分析相接合的方式,使用的方法也比較多樣,比如魚骨圖法、帕累托法、問卷調(diào)查、案例研究等等。建立回歸預(yù)測模型的前提是X與Y是顯著相關(guān)的,有多個(gè)X時(shí),X之間是不相關(guān)的,所以識別出X后,需收集Y及X數(shù)據(jù)進(jìn)行相關(guān)性分析。
相關(guān)性分析涉及到顯著性和相關(guān)系數(shù)兩類檢驗(yàn),顯著性檢驗(yàn)是檢驗(yàn)變量之間是否有顯著影響,而相關(guān)系數(shù)檢驗(yàn)是檢驗(yàn)變量之間影響的方向和程度,因此應(yīng)先進(jìn)行顯著性檢驗(yàn),再進(jìn)行相關(guān)系數(shù)檢驗(yàn)。
顯著性檢驗(yàn)即p檢驗(yàn),p值小于0.05,則認(rèn)為變量間有顯著影響。相關(guān)系數(shù)檢驗(yàn)即r檢驗(yàn),r是用以反映變量之間相關(guān)關(guān)系密切程度的統(tǒng)計(jì)指標(biāo),r的值在-1和1之間,r>0,正相關(guān);r<0,負(fù)相關(guān)。r的絕對越大,則相關(guān)性越顯著。0<|r|≤0.3 ,弱相關(guān);0.3<|r|≤0.5,低相關(guān);0.5<|r|≤0.8,顯著相關(guān);0.8<|r|≤1,高度相關(guān)。
確定了變量之間的相關(guān)關(guān)系,只是反映了因變量和自變量之間存在著非嚴(yán)格的、不確定的依存關(guān)系。要達(dá)到預(yù)測的目的,則需要找到他們之間嚴(yán)格的依存關(guān)系,即回歸方程關(guān)系來建立模型。找到一個(gè)影響因子的建立一元回歸方程,找到多個(gè)影響因子的則建立多元回歸方程。
建立的回歸預(yù)測模型是否正確、有效和可信需通過模型檢驗(yàn)來證實(shí)。一般通過驗(yàn)證模型是否滿足給定的形式化規(guī)約進(jìn)行,即將該模型和形式化規(guī)約作為模型檢驗(yàn)的輸入,將模型通過樣本預(yù)測出的值和實(shí)際值進(jìn)行遍歷計(jì)算來判斷該模型的行為是否滿足規(guī)約的要求。模型檢驗(yàn)一般包括兩個(gè)方面:一是驗(yàn)證所建模型能夠反映真實(shí)系統(tǒng)的行為特征,二是驗(yàn)證所建模型即是建模者構(gòu)想中的模型。軟件過程改進(jìn)中回歸預(yù)測模型檢驗(yàn)常用到的有擬合優(yōu)度檢驗(yàn)和線性顯著性檢驗(yàn)。
擬合優(yōu)度檢驗(yàn)屬于驗(yàn)證所建模型能夠反映真實(shí)系統(tǒng)的行為特征,是檢驗(yàn)回歸方程的預(yù)測值與實(shí)際數(shù)據(jù)擬合的優(yōu)劣程度,是用來檢驗(yàn)方程解釋Y的有效性,該檢驗(yàn)的形式化規(guī)約為R2,因此也稱為 R2檢驗(yàn)。R2是線性回歸中的回歸平方和占總平方的比例,反映了在因變量Y的變差中被估計(jì)的回歸方程所解釋的比例。0≤R2≤1,R2越大,直線擬合越好,如R2= 0.7,表示Y的變化能被X解釋70%,即R2越接近于1,回歸模型的“擬合憂度”越好,原則上如果R2低于55%,表示回歸方程式的解釋力不足,須采取進(jìn)一步分析,矯正造成這個(gè)分析結(jié)果的原因。
線性顯著性檢驗(yàn)屬于驗(yàn)證所建模型即是建模者構(gòu)想中的模型,是對模型中解釋變量Y與被解釋變量X之間的線性關(guān)系在總體上是否顯著成立做出推斷,即回歸方程中X解釋Y的有效性。該檢驗(yàn)的形式化規(guī)約為F,因此也稱為 F檢驗(yàn)。線性顯著性檢驗(yàn)中應(yīng)先檢驗(yàn)p值,p值是將觀察結(jié)果認(rèn)為有效即具有總體代表性的犯錯(cuò)概率。如p=0.05,提示樣本中變量關(guān)聯(lián)有 5%的可能是由于偶然性造成的。 0.05的p值通常被認(rèn)為是可接受錯(cuò)誤的邊界水平,如果p值高于0.05,表示回歸方程式不成立,須反復(fù)執(zhí)行分析,直到p值小于0.05時(shí)檢驗(yàn)F值才有意義。F檢驗(yàn)應(yīng)用的方法是數(shù)理統(tǒng)計(jì)學(xué)中假設(shè)檢驗(yàn),提出假設(shè):
原假設(shè)H0:b1=b2=b3=……=0(即方程不顯著)
備擇假設(shè)H1:b1、b2、b3……至少有一個(gè)不為0(即方程顯著)。
計(jì)算F值并與F的臨界值Fa進(jìn)行比較,根據(jù)給定的顯著性水平在F表中查找臨界值Fa,如果F>Fa,則拒絕原假設(shè),回歸方程是線性顯著的;反之則接受原假設(shè),回歸方程是線性不顯著,須分析原因,調(diào)整方程。
回歸預(yù)測模型在過程改進(jìn)小組分配資源進(jìn)行影響因子過程改進(jìn)時(shí)可以起到預(yù)測的作用,運(yùn)用該模型來預(yù)測X應(yīng)該改進(jìn)到什么程度,Y可以達(dá)到預(yù)期目標(biāo)。預(yù)測分為點(diǎn)預(yù)測和區(qū)間預(yù)測,點(diǎn)預(yù)測是用估計(jì)出的影響因子預(yù)測目標(biāo)變量的數(shù)值;區(qū)間預(yù)測是用估計(jì)出的影響因子預(yù)測目標(biāo)變量以多大的概率落在某個(gè)區(qū)間內(nèi),落在區(qū)間內(nèi)的概率越大,則預(yù)測的區(qū)間越大,但相對預(yù)測的精度會下降。
點(diǎn)預(yù)測相對比較簡單,將影響因子的估計(jì)值代入建立的回歸模型中,可得到目標(biāo)變量的具體估計(jì)值,這個(gè)具體的目標(biāo)變量估計(jì)數(shù)值就是預(yù)測值。區(qū)間預(yù)測需要預(yù)測一個(gè)區(qū)間,預(yù)測區(qū)間的上限為預(yù)測值加上概率度與殘差的標(biāo)準(zhǔn)差之積,下限為預(yù)測值減去概率度與殘差的標(biāo)準(zhǔn)差之積,概率度可以通過查正態(tài)分布概率表獲得。
某產(chǎn)品型敏捷軟件企業(yè)運(yùn)用回歸預(yù)測模型來協(xié)調(diào)資源進(jìn)行量化質(zhì)量過程改進(jìn)時(shí),企業(yè)高層根據(jù)業(yè)務(wù)目標(biāo)明確了2021年度的質(zhì)量目標(biāo)為控制系統(tǒng)測試缺陷密度保持不變,該質(zhì)量目標(biāo)的計(jì)算公式為:系統(tǒng)測試缺陷數(shù)/功能點(diǎn)數(shù),過程改進(jìn)小組組織公司領(lǐng)導(dǎo),項(xiàng)目經(jīng)理,資深工程人員包括需求人員、設(shè)計(jì)人員、開發(fā)人員及測試人員等,采用魚骨圖的方法對測試子過程中影響系統(tǒng)測試缺陷密度的因素進(jìn)行了分析,最終確定關(guān)鍵因素為測試人員平均經(jīng)驗(yàn)和環(huán)境差異度。
在改進(jìn)過程中該企業(yè)主要運(yùn)用了質(zhì)量管理統(tǒng)計(jì)軟件Minitab進(jìn)行數(shù)據(jù)分析、模型建立以及質(zhì)量預(yù)測。收集2021年4-6月項(xiàng)目的系統(tǒng)測試發(fā)現(xiàn)缺陷數(shù)及功能點(diǎn)數(shù),并在此基礎(chǔ)上運(yùn)用SPC方法建立了基線來量化企業(yè)的當(dāng)前質(zhì)量情況,制定當(dāng)前年度的質(zhì)量目標(biāo)均值0.185,標(biāo)準(zhǔn)差0.152,上限0.641,下限0.000。同時(shí)收集2021年4-6月份項(xiàng)目的測試人員平均經(jīng)驗(yàn)和環(huán)境差異度數(shù)據(jù),運(yùn)用Minitab“統(tǒng)計(jì)”菜單中的“相關(guān)”執(zhí)行相關(guān)性分析,判斷系統(tǒng)測試缺陷密度(Y)與測試人員平均經(jīng)驗(yàn)(X1)和環(huán)境差異度(X2)三者之間的相關(guān)性,得到p值和r值。
p值分析:自變量X1和X2之間p值=0.235>0.05,線性相關(guān)不顯著;自變量X1于應(yīng)變量Y之間p值=0.001<0.05線性相關(guān)顯著;自變量X2于應(yīng)變量Y之間p=0.001<0.05線性相關(guān)顯著。
r值分析:自變量X1和X2之間r的絕對值=0.326<0.5,線性相關(guān)不顯著;自變量X1于應(yīng)變量Y之間r的絕對值=0.766>0.5,線性相關(guān)顯著;自變量X2于應(yīng)變量Y之間r的絕對值=0.759>0.5,線性相關(guān)顯著。
相關(guān)性檢驗(yàn)結(jié)論:測試人員平均經(jīng)驗(yàn)(X1)和環(huán)境差異度(X2)之間,線性相關(guān)不顯著,可以做為兩個(gè)獨(dú)立的自變量;自變量測試人員平均經(jīng)驗(yàn)(X1)與與應(yīng)變量系統(tǒng)測試缺陷密度(Y)是線性相關(guān)的,自變量環(huán)境差異度(X2)與應(yīng)變量系統(tǒng)測試缺陷密度(Y)也是線性相關(guān)的,并且兩個(gè)自變量與應(yīng)變量相關(guān)的程度都很高,所以選擇之前分析出來的影響因素作為變量建立質(zhì)量回歸預(yù)測模型。
為了達(dá)到改進(jìn)和預(yù)測的目的,需建立二元回歸方程以明確系統(tǒng)測試缺陷密度、測試人員平均經(jīng)驗(yàn)和環(huán)境差異度三者之間嚴(yán)格的量化依存關(guān)系。運(yùn)用Minitab“統(tǒng)計(jì)”菜單中的“擬合回歸模型”,將系統(tǒng)測試缺陷密度,測試人員平均經(jīng)驗(yàn)和環(huán)境差異度放入Minitab中來建立回歸預(yù)測模型。建立的模型為:系統(tǒng)測試缺陷密度=-0.659+0.057 3測試人員平均經(jīng)驗(yàn)+ 0.988 環(huán)境差異度。同時(shí)運(yùn)用Minitab進(jìn)行擬合優(yōu)度檢驗(yàn)、F檢驗(yàn)、T檢驗(yàn)三個(gè)方面的檢驗(yàn),通過Minitab中執(zhí)行的回歸結(jié)果圖,可以觀察到 R-Sq值為87.57%>75%,模型回歸效果很好;F檢驗(yàn)中的p均為0,小于0.05,認(rèn)為回歸模型存在線性關(guān)系顯著。綜合上面的檢驗(yàn),證明該回歸預(yù)測模型正確有效,可以依據(jù)該模型進(jìn)行質(zhì)量過程改進(jìn)和資源調(diào)配。通過該量化模型可以總結(jié)出以下結(jié)論:
測試人員平均經(jīng)驗(yàn)和環(huán)境差異度都與系統(tǒng)測試缺陷密度為正相關(guān),即測試人員平均經(jīng)驗(yàn)與環(huán)境差異度的數(shù)值變大,系統(tǒng)測試缺陷密度的數(shù)值也會相應(yīng)的變大。
環(huán)境差異度的系數(shù)比測試人員平均經(jīng)驗(yàn)的系數(shù)大,即兩個(gè)變量因素中,環(huán)境差異度比測試人員平均經(jīng)驗(yàn)對應(yīng)變量系統(tǒng)測試缺陷密度的影響更大。
根據(jù)該回歸預(yù)測模型,過程改進(jìn)小組提出改進(jìn)建議,針對測試人員平均經(jīng)驗(yàn),建議多培養(yǎng)資深測試人員,建立測試人員上升通道。針對環(huán)境差異度,建議開發(fā)時(shí)盡可能使用與測試現(xiàn)場相同的應(yīng)用服務(wù)器環(huán)境;若產(chǎn)品涉及到硬件外設(shè),應(yīng)盡量借用與測試現(xiàn)場相同型號的設(shè)備或者采用模擬器對測試環(huán)境進(jìn)行模擬。
企業(yè)開始著手進(jìn)行這兩方面的改進(jìn),但這些改進(jìn)都與企業(yè)資源密切相關(guān),可以通過回歸預(yù)測模型的點(diǎn)預(yù)測和區(qū)間預(yù)測來合理調(diào)配資源進(jìn)行改進(jìn)以達(dá)成保持高質(zhì)量輸出的目標(biāo)。預(yù)測測試人員平均經(jīng)驗(yàn)和環(huán)境差異度應(yīng)該改進(jìn)到什么程度,目標(biāo)系統(tǒng)測試缺陷密度可以達(dá)到預(yù)期目標(biāo)。某項(xiàng)目難以進(jìn)行環(huán)境配置,環(huán)境差異度較大為0.65,改善環(huán)境差異度企業(yè)需要付出非常大的成本代價(jià),企業(yè)難以投入,但質(zhì)量是必須達(dá)成的硬性指標(biāo),系統(tǒng)測試缺陷密度期望在平均值和往上浮動兩個(gè)標(biāo)準(zhǔn)差的范圍,即(0.185 0,0.489 0),所以依據(jù)建立的回歸預(yù)測模型項(xiàng)目組嘗試從測試人員平均經(jīng)驗(yàn)上進(jìn)行改進(jìn)。運(yùn)用Minitab“統(tǒng)計(jì)”菜單中的“預(yù)測”功能進(jìn)行區(qū)間預(yù)測,環(huán)境差異度0.65,測試人員平均經(jīng)驗(yàn)4.5時(shí),95%的系統(tǒng)測試缺陷密度會落在 (0.187 041, 0.294 369)之間,在目標(biāo)上下限范圍以內(nèi)。通過該預(yù)測可知安排平均經(jīng)驗(yàn)為4.5的測試人員在該項(xiàng)目中可行。
在該產(chǎn)品型敏捷軟件企業(yè)的量化質(zhì)量過程改進(jìn)中,企業(yè)成功實(shí)踐并總結(jié)了以下幾條重要的質(zhì)量改進(jìn)經(jīng)驗(yàn):
在產(chǎn)品型敏捷軟件企業(yè),測試人員的專業(yè)及行業(yè)經(jīng)驗(yàn)對質(zhì)量有非常重要的作用,建立測試人員培養(yǎng)及上升機(jī)制是對高質(zhì)量產(chǎn)出的基本保證。
產(chǎn)品型敏捷軟件的應(yīng)用環(huán)境,包括應(yīng)用服務(wù)器和硬件外設(shè)對產(chǎn)出高質(zhì)量的軟件產(chǎn)品有非常大的影響,應(yīng)盡可能在公司內(nèi)部配置相關(guān)環(huán)境,使得開發(fā)時(shí)就可以使用。
因?yàn)榭蛻魹樘囟ㄐ袠I(yè),產(chǎn)品型敏捷軟件的應(yīng)用環(huán)境往往價(jià)格昂貴且更新較快或受行業(yè)限制,在軟件企業(yè)內(nèi)部配置應(yīng)用環(huán)境要付出很大的代價(jià),應(yīng)用回歸預(yù)測模型可以量化改進(jìn)環(huán)境差異度,維持軟件高質(zhì)量產(chǎn)出。
測試人員平均經(jīng)驗(yàn)和環(huán)境差異度是影響產(chǎn)品型敏捷軟件企業(yè)高質(zhì)量產(chǎn)出的兩個(gè)重要因素,但兩者的改進(jìn)都需要投入大量資源,在資源有限的情況下,可以通過回歸預(yù)測模型在這兩方面平衡調(diào)配,一方難以提升時(shí),可以從另一方面進(jìn)行著力改進(jìn)。
某產(chǎn)品型敏捷軟件應(yīng)用量化預(yù)測模型進(jìn)行質(zhì)量過程改進(jìn),在面對產(chǎn)品線增加,客戶需求變化及應(yīng)用設(shè)備升級的多重挑戰(zhàn)下,下半年截至9月,所有的軟件產(chǎn)品維持了高質(zhì)量產(chǎn)出且有所提升,均值0.120 7,標(biāo)準(zhǔn)差0.067 5,上限0.323 3,下限0.000,達(dá)到了預(yù)期量化目標(biāo)?;貧w預(yù)測模型的量化質(zhì)量過程改進(jìn)起到了很大作用,為企業(yè)高層及軟件項(xiàng)目經(jīng)理選擇合適的測試人員及配置企業(yè)內(nèi)部環(huán)境提供了決策支持。
軟件開發(fā)存在四大難題:復(fù)雜性、隱匿性、配合性和易變性,軟件過程改進(jìn)試圖要解決的問題,在過去、現(xiàn)在和將來一直存在[6]。質(zhì)量的挑戰(zhàn)將一直存在,如何既能夠維持高質(zhì)量的軟件產(chǎn)出,又能夠避免資源的浪費(fèi),對軟件行業(yè)尤其是產(chǎn)品型敏捷企業(yè)有非常重要的現(xiàn)實(shí)意義。后續(xù)仍將接合實(shí)際與理論不斷完善該模型,力圖找到更優(yōu)、更適合我國軟件行業(yè)當(dāng)前階段量化質(zhì)量改進(jìn)模型。