亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于可信性的模塊化軟件開發(fā)費(fèi)用分配算法*

        2020-06-22 12:29:50馬艷芳王夢月
        關(guān)鍵詞:可信性分配費(fèi)用

        馬艷芳,王夢月,周 偉,陳 亮

        (1.淮北師范大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,安徽 淮北 235000;2.淮北師范大學(xué)數(shù)學(xué)科學(xué)學(xué)院,安徽 淮北 235000)

        1 引言

        在網(wǎng)絡(luò)技術(shù)快速發(fā)展的時代,軟件在人們的生活中扮演著重要角色[1]。軟件系統(tǒng)廣泛地應(yīng)用到各行各業(yè)中,尤其是交通、軍事、金融等重要領(lǐng)域[2]。然而,軟件系統(tǒng)的失效和故障給人們的生活帶來很多不利影響,有時甚至?xí){到生命安全。由此,軟件質(zhì)量問題受到了人們的高度關(guān)注。軟件可信性作為衡量軟件質(zhì)量的重要指標(biāo),在軟件工程中占有重要的地位。

        軟件可信性是20世紀(jì)90年代引入軟件工程領(lǐng)域的新概念,最早是由Laprie[3]提出并與軟件可靠性作區(qū)分。目前,國內(nèi)外專家在軟件可信性的定義方面尚未達(dá)成共識。美國國家研究委員會給出了一個與軟件可信性有關(guān)的定義[4]。他們認(rèn)為即使在環(huán)境發(fā)生崩潰、操作人員出現(xiàn)操作失誤等情況下,一個系統(tǒng)也能按照預(yù)期的方式運(yùn)行,則該系統(tǒng)是可信的。國家自然科學(xué)基金委員會于2007年批準(zhǔn)立項(xiàng)了“可信軟件基礎(chǔ)研究”重大研究計(jì)劃[1]。該項(xiàng)目委員會認(rèn)為可信軟件是指系統(tǒng)的動態(tài)行為及其結(jié)果總是符合人們的預(yù)期,并在受到干擾時仍能提供連續(xù)服務(wù)的軟件?!翱尚拧笔窃趥鹘y(tǒng)的安全、可靠等概念基礎(chǔ)上發(fā)展起來的一個相對較新的學(xué)術(shù)概念。王懷民等[5]對可信軟件的概念作了進(jìn)一步補(bǔ)充,他們認(rèn)為如果一個軟件系統(tǒng)的行為總是和用戶的預(yù)期相符合,則稱軟件是可信的,并把軟件的可信性定義為軟件按照用戶預(yù)期提供安全可靠服務(wù)的能力。陶紅偉[6]從最終用戶的角度出發(fā),認(rèn)為軟件可信性是軟件的行為和結(jié)果符合用戶預(yù)期,并在受到干擾時仍能提供連續(xù)服務(wù)的能力。由此可見,人們雖然對軟件可信性的理解不同,但是都認(rèn)為軟件可信性可以反映軟件質(zhì)量的好壞,可以作為衡量軟件質(zhì)量的重要標(biāo)準(zhǔn)。

        目前,國內(nèi)外學(xué)者已經(jīng)在軟件可信性方面取得很多研究成果。軟件可信性度量與評估是對軟件的可信性進(jìn)行量化評價(jià),通過量化評估可以為增加軟件研發(fā)的可信性提供依據(jù)[6]。王婧等[7]提出了一套面向航天型號軟件的可信性度量模型以及分級評價(jià)方法,并已成功地運(yùn)用于航天型號軟件的可信性評估。郎波等[8]提出了軟件可信分級模型,能夠?qū)浖目尚判詣澐值燃?,為軟件可信評估機(jī)制提供理論依據(jù)與方法。軟件可信性可以通過一系列的屬性來刻畫。為了確定屬性的權(quán)重,張俊等[9]在保證各屬性重要度的基礎(chǔ)上,結(jié)合屬性之間的相互影響程度,建立了屬性權(quán)重分配模型。陶紅偉[6]將屬性分為關(guān)鍵屬性和非關(guān)鍵屬性,建立了基于屬性的軟件可信性度量模型。隨著“軟件過程也是軟件”的提出,王德鑫等[10]從過程的實(shí)體、行為以及制品方面提取軟件可信的證據(jù),提出了軟件過程可信度量模型。隨著組件化軟件開發(fā)方法的發(fā)展,Mubarak等[11]提出了一種嚴(yán)格的以組件為中心的可信軟件系統(tǒng)開發(fā)的新過程模型。Huang等[12]基于組件之間不同的連接方式建立了軟件可信性度量模型。Wang等[2]提出了一種基于組件的可信度更新模型,該模型根據(jù)用戶的反饋計(jì)算組件的可信程度,更新的權(quán)重由用戶數(shù)量決定。軟件可信屬性可分為功能屬性和非功能屬性,用戶對非功能屬性的滿足程度直接影響軟件質(zhì)量的好壞[1]。由此,羅新星等[13]提出了一種基于關(guān)鍵非功能屬性的軟件可信性度量模型。張璇等[14]基于利益相關(guān)者對非功能屬性的優(yōu)先級約束和基線約束,提出了非功能屬性權(quán)衡代價(jià)分析方法,該方法可以幫助利益相關(guān)者選擇最優(yōu)策略。而為了保證軟件的可信性,軟件需求分析人員需要確定軟件中各個單元的可信性需求,由此軟件的可信性分配問題成為需要解決的問題[15]。樓俊鋼等[16]為了對可信性屬性進(jìn)行量化分配,在三角模糊數(shù)和層次分析法的基礎(chǔ)上,提出了一種模糊層次分析法。Ma等[15]建立了基于屬性的可信性分配模型及其可信分配算法,并已應(yīng)用于嵌入式航天軟件中,足以證明其有效性且對軟件可信性的研究有指導(dǎo)作用。在文獻(xiàn)[6]的基礎(chǔ)上,Tao等[17]進(jìn)一步提出了基于子屬性的軟件可信性分配模型。黃杜娟[18]在保證達(dá)到用戶給定的軟件系統(tǒng)可信性目標(biāo)的情況下,研究如何分配構(gòu)成系統(tǒng)各個子系統(tǒng)的可信性指標(biāo),使得軟件所需開發(fā)費(fèi)用最小。

        近年來,軟件系統(tǒng)的結(jié)構(gòu)越來越復(fù)雜,模塊化開發(fā)方法已成為開發(fā)軟件產(chǎn)品的主要發(fā)展趨勢之一。作為軟件的使用者,用戶在安裝系統(tǒng)的時候可以根據(jù)個人的需求選擇模塊。由此可見,模塊化軟件的可信性研究非常重要。Alexopoulos等[19]提出了一個基于模塊化軟件的完整軟件系統(tǒng)可信度評估模型。但是,隨著軟件系統(tǒng)越來越龐大,開發(fā)軟件系統(tǒng)的費(fèi)用與日劇增。在實(shí)際生活中,軟件系統(tǒng)必須是在用戶給定的開發(fā)費(fèi)用內(nèi)開發(fā)完成,而在研究模塊化軟件的可信性時上述模型卻忽視了軟件開發(fā)費(fèi)用。因此,在用戶給定的開發(fā)費(fèi)用內(nèi)如何合理分配各模塊的開發(fā)費(fèi)用,使得軟件系統(tǒng)可信性達(dá)到最優(yōu),是一個很有意義的研究課題。

        2 模塊化軟件

        軟件系統(tǒng)體系結(jié)構(gòu)是系統(tǒng)的全局視圖和主要結(jié)構(gòu)。研究其層次設(shè)計(jì)時,依據(jù)研究的范圍將體系結(jié)構(gòu)整體分解為多個組成部分。文獻(xiàn)[20]給出了軟件體系結(jié)構(gòu)的層次框架圖,如圖1所示。

        Figure 1 Hierarchical framework of software architecture圖1 軟件體系結(jié)構(gòu)的層次框架圖

        軟件體系結(jié)構(gòu)自上而下逐層分解直至模塊。模塊是功能完整、可重用的對象,通常只關(guān)注模塊外的功能和交互特征,不需要了解模塊的內(nèi)部結(jié)構(gòu)。每個模塊既可以單獨(dú)使用,也可以進(jìn)行組合使用。模塊化軟件由多個功能獨(dú)立的模塊組成,模塊之間的相互作用形成軟件系統(tǒng)的所有功能。模塊通過順序、分支、并行和循環(huán)的方式連接,進(jìn)而構(gòu)成軟件系統(tǒng)。

        3 模塊的可信性費(fèi)用預(yù)估模型

        提高模塊的可信性需花費(fèi)一定的費(fèi)用,只有確定了模塊的可信性與費(fèi)用的關(guān)系才能在用戶給定的開發(fā)費(fèi)用內(nèi)得到系統(tǒng)最優(yōu)可信性。因此,確定模塊的可信性與費(fèi)用之間的關(guān)系是首要任務(wù)。

        一方面,可靠性是屬于可信性的一個重要屬性,研究可信性的同時也在研究可靠性;另一方面,提高模塊可信性的費(fèi)用很大程度上花費(fèi)在提高可靠性上,由此,根據(jù)可靠性與費(fèi)用之間的關(guān)系,建立模塊的可信性費(fèi)用預(yù)估模型[1]。因此,借鑒文獻(xiàn)[21]中的可靠性與費(fèi)用之間的關(guān)系,下面給出模塊可信性費(fèi)用預(yù)估函數(shù)的定義:

        定義1假設(shè)T∈(0,1)是模塊的可信性,f∈(0,1)是模塊的復(fù)雜度,D是模塊開發(fā)的初始成本,令:

        (1)

        則稱C(T)是模塊的可信性費(fèi)用預(yù)估函數(shù)。

        由式(1)可知,模塊結(jié)構(gòu)簡單,開發(fā)難度小,其所需開發(fā)費(fèi)用低;相反,模塊結(jié)構(gòu)復(fù)雜,開發(fā)難度大,其所需開發(fā)費(fèi)用相對較高;當(dāng)模塊的可信性越接近于最大可信性時,開發(fā)費(fèi)用會迅速增加到無窮大。

        式(1)滿足1986年Dale等[22]提出的費(fèi)用函數(shù)性質(zhì),模塊的可信性費(fèi)用預(yù)估函數(shù)性質(zhì)如下所示:

        性質(zhì)1假設(shè)一個軟件系統(tǒng)由n個模塊組成,第i(1≤i≤n)個模塊的可信性為Ti,記C(T′i)-C(Ti)表示將模塊的可信性從Ti提高到T′i所需要的費(fèi)用,0

        (1)提高模塊可信性的費(fèi)用是非負(fù)的,即C(T′i)-C(Ti)≥0;

        (3)當(dāng)0

        證明

        (3)計(jì)算可得C(T′i)-C(Ti)+C(T″i)-C(T′i) =C(T″i)-C(Ti)。

        4 軟件可信性與費(fèi)用分配模型

        4.1 軟件可信性與費(fèi)用分配問題描述

        假設(shè)一個軟件系統(tǒng)由n個模塊M1,M2,…,Mn組成,每個模塊在進(jìn)行組裝之前已初步開發(fā)完成,具有一定的可信性。軟件工程師對各模塊可信性進(jìn)行評估,此階段評估值可作為各模塊的初始可信性,令模塊Mi的初始可信性為Ti.min,其中1≤i≤n,0

        開發(fā)人員會首先根據(jù)所需模塊的可信性指標(biāo)制定各個模塊的開發(fā)計(jì)劃。因此,如果開發(fā)人員決定開發(fā)某個模塊時,才會投入資源制定開發(fā)計(jì)劃,提高模塊的可信性直到最大可信性;而若對某個模塊的可信性要求不高,則不需要浪費(fèi)資源制定開發(fā)計(jì)劃,保證模塊的初始可信性即可。因此,利用0-1背包問題的思想,令一個n元0/1數(shù)組x=[x1,x2,…,xi,…,xn]表示各個模塊的開發(fā)情況,xi=1表示分配開發(fā)費(fèi)用Wi開發(fā)模塊Mi并達(dá)到其最大可信性Ti.max;xi=0表示沒有分配開發(fā)費(fèi)用給模塊Mi,此時模塊Mi的可信性為初始可信性Ti.min。

        各模塊根據(jù)不同的組合方式構(gòu)成一個復(fù)雜的軟件系統(tǒng),而軟件系統(tǒng)的可信性由各模塊可信性及其組成方式所決定。由此,令g表示各模塊之間的不同組成方式的函數(shù),模塊的可信性分別為T1,T2,…,Tn,得目標(biāo)函數(shù)和約束條件為:

        T=maxg(T1,T2,…,Tn)

        (2)

        其中,Ti是模塊Mi的可信性,當(dāng)xi=0時,Ti=Ti.min;當(dāng)xi=1時,Ti=Ti.max。Wi是提高模塊Mi到最大可信性的所需費(fèi)用;W為軟件開發(fā)費(fèi)用。根據(jù)最優(yōu)解x=[x1,x2,…,xn],將模塊可信性代入式(2),即得到軟件系統(tǒng)的最優(yōu)可信性。

        4.2 順序結(jié)構(gòu)下的軟件可信性與費(fèi)用分配模型

        在順序結(jié)構(gòu)中,每個模塊相互獨(dú)立,依次執(zhí)行[12],如圖2所示。軟件系統(tǒng)中一個模塊的錯誤將導(dǎo)致系統(tǒng)出錯,即模塊的可信性越低,系統(tǒng)的可信性越低。因此,采用連乘各模塊可信性的方法求解系統(tǒng)的最優(yōu)可信性。

        Figure 2 Software system with sequence structure圖2 順序結(jié)構(gòu)的軟件系統(tǒng)

        得目標(biāo)函數(shù)和約束條件為:

        (3)

        根據(jù)最優(yōu)解x=[x1,x2,…,xn],將模塊可信性代入式(3),即得到軟件系統(tǒng)的最優(yōu)可信性。

        根據(jù)模塊的個數(shù)和用戶給定的開發(fā)費(fèi)用進(jìn)行子問題的劃分。設(shè)Fi(y)max表示存在并只開發(fā)前i個模塊,開發(fā)費(fèi)用y不超過W時系統(tǒng)的最大可信性,分2種情況考慮:

        (1)不開發(fā)第i個模塊,那么只能開發(fā)前(i-1)個模塊,此時開發(fā)費(fèi)用仍為y,則系統(tǒng)的最大可信性是Fi-1(y)max;

        (2)使用開發(fā)費(fèi)用Wi開發(fā)了第i個模塊,此時剩下的開發(fā)費(fèi)用(y-Wi)用于開發(fā)前(i-1)個模塊。

        由此,得到順序結(jié)構(gòu)下的軟件可信性與費(fèi)用分配問題的遞推關(guān)系:

        Fi(y)max=max{Fi-1(y)max·

        Ti.min,Fi-1(y-Wi)max·Ti.max}

        F0(y)max=1,0≤y≤W

        Fi(y)max=-∞,y<0

        其中,F(xiàn)0(y)max是不開發(fā)任何一個模塊的系統(tǒng)可信性,理論上F0(y)max=0。因?yàn)轫樞蚪Y(jié)構(gòu)下的軟件系統(tǒng)可信性是連乘所有模塊的可信性得到的,在遞推過程中,當(dāng)i=1時,F(xiàn)1(y)max=max{F0(y)max·T1.min,F0(y-W1)max·T1.max},為了使F0(y)max·T1.min≠0,F0(y-W1)max·T1.max≠0,令F0(y)max=1(0≤y≤W)。當(dāng)軟件系統(tǒng)只由一個模塊組成時,若y

        算法1順序結(jié)構(gòu)下的軟件可信性與費(fèi)用分配算法

        Input:n,W,w[n]={W1,…,Wn},r[n]={T1.min,…,Tn.min},t[n]={T1.max,…,Tn.max}。

        Output:最優(yōu)解x[n],最大可信性V[n][W]。

        1.forj←1toWdo

        2.V[0][j]←0;

        3.fori←1tondo

        4.forj←1toWdo

        5.ifj

        6.V[i][j]←V[i-1][j]*r[i];

        7.elseV[i][j]←max(V[i-1][j]*r[i],V[i-1][j-w[i]]*t[i]);

        8.endif

        9.endfor

        10.endfor

        11.j←W;

        12.fori←nto1 step -1do

        13.ifV[i][j]/r[i]>V[i-1][j]then

        14.x[i]←1;j←j-w[i];

        15.elsex[i]←0;

        16.endif

        17.endfor

        18.returnx[n],V[n][W]

        算法分析:時間效率為O(nW)??臻g效率為用于存儲二維數(shù)組的空間大小,即為O(nW)。

        4.3 分支結(jié)構(gòu)下的軟件可信性與費(fèi)用分配模型

        在分支結(jié)構(gòu)中,每次運(yùn)行時,系統(tǒng)會以一定的概率選擇其中的一個分支來運(yùn)行[12],而概率信息代表每個模塊的運(yùn)行次數(shù),如圖3所示。

        Figure 3 Software system with branch structure圖3 分支結(jié)構(gòu)的軟件系統(tǒng)

        得目標(biāo)函數(shù)和約束條件為:

        (4)

        根據(jù)模塊的個數(shù)和用戶給定的開發(fā)費(fèi)用進(jìn)行子問題的劃分,劃分方法與4.2節(jié)的順序結(jié)構(gòu)下的劃分方法相同。由此,得到分支結(jié)構(gòu)下的軟件可信性與費(fèi)用分配問題的遞推關(guān)系:

        Fi(y)max=max{Fi-1(y)max+piTi.min,

        Fi-1(y-Wi)max+piTi.max}

        F0(y)max=0,0≤y≤W

        Fi(y)max=-∞,y<0

        其中,F(xiàn)0(y)max是不開發(fā)任何一個模塊的系統(tǒng)最大可信性,即F0(y)max=0。當(dāng)軟件系統(tǒng)只由一個模塊組成時,若y

        算法2分支結(jié)構(gòu)下的軟件可信性與費(fèi)用分配算法

        Input:n,W,w[n]={W1,…,Wn},r[n]={T1.min,…,Tn.min},t[n]={T1.max,…,Tn.max}。

        Output:最優(yōu)解x[n],最大可信性V[n][W]。

        1.forj←1toWdo

        2.V[0][j]←0;

        3.fori←1tondo

        4.forj←1toWdo

        5.ifj

        6.V[i][j]←V[i-1][j]+pi*r[i];

        7.elseV[i][j]←max(V[i-1][j]+pi*r[i],V[i-1][j-w[i]]+pi*t[i]);

        8.endif

        9.endfor

        10.endfor

        11.j←W;

        12.fori←nto1 step -1do

        13.ifV[i][j]-pi*r[i]>V[i-1][j]then

        14.x[i]←1;j←j-w[i];

        15.elsex[i]←0;

        16.endif

        17.endfor

        18.returnx[n],V[n][W]

        算法分析:時間效率為O(nW)。空間效率為用于存儲二維數(shù)組的空間大小,即為O(nW)。

        4.4 并行結(jié)構(gòu)下的軟件可信性與費(fèi)用分配模型

        在并行結(jié)構(gòu)中,存在2種基本情況。第1種是與并行,只有當(dāng)所有模塊都運(yùn)行成功時,整個系統(tǒng)才是成功的。與并行結(jié)構(gòu)下的軟件可信性與費(fèi)用分配模型同4.2節(jié)的順序結(jié)構(gòu)下的模型相同。第2種是或并行,只要有一個模塊運(yùn)行成功即可[12],如圖4所示。

        Figure 4 Software system with or parallel structure圖4 或并行結(jié)構(gòu)的軟件系統(tǒng)

        得目標(biāo)函數(shù)和約束條件為:

        (5)

        根據(jù)最優(yōu)解x=[x1,x2,…,xn],將模塊可信性代入式(5),即可得到軟件系統(tǒng)的最優(yōu)可信性。

        由此,得到或并行結(jié)構(gòu)下的軟件可信性與費(fèi)用分配問題的遞推關(guān)系:

        Fi(y)min=min{Fi-1(y)min·(1-Ti.min),

        Fi-1(y-Wi)min·(1-Ti.max)}

        F0(y)min=1,0≤y≤W

        Fi(y)min=-∞,y<0

        算法3或并行結(jié)構(gòu)下的軟件可信性與費(fèi)用分配算法

        Input:n,W,w[n]={W1,…,Wn},r[n]={T1.min,…,Tn.min},t[n]={T1.max,…,Tn.max}。

        Output:最優(yōu)解x[n],最小可信性M[n][W]。

        1.forj←1toWdo

        2.M[0][j]←0;

        3.fori←1tondo

        4.forj←1toWdo

        5.ifj

        6.M[i][j]←M[i-1][j]*(1-r[i]);

        7.elseM[i][j]←min(M[i-1][j]*(1-r[i]),M[i-1][j-w[i]]*(1-t[i]));

        8.endif

        9.endfor

        10.endfor

        11.j←W;

        12.fori←nto1 step -1do

        13.ifM[i][j]/(1-r[i])

        14.x[i]←1;j←j-w[i];

        15.elsex[i]←0;

        16.endif

        17.endfor

        18.returnx[n],M[n][W]

        算法分析:時間效率為O(nW)??臻g效率為用于存儲二維數(shù)組的空間大小,即為O(nW)。

        4.5 循環(huán)結(jié)構(gòu)下的軟件可信性與費(fèi)用分配模型

        軟件系統(tǒng)中的一個或多個模塊被重復(fù)執(zhí)行時就構(gòu)成了一個循環(huán)體[12]。假設(shè)循環(huán)體為A,循環(huán)次數(shù)是t,如圖5所示。

        Figure 5 Software system with loop structure圖5 循環(huán)結(jié)構(gòu)的軟件系統(tǒng)

        循環(huán)體A是由模塊M1,M2,…,Mn組成,模塊之間的組合方式可能是順序、分支或并行。利用式(3)~式(5)可得到循環(huán)體A的可信性。令TA表示循環(huán)體的可信性,若循環(huán)體A為順序結(jié)構(gòu),則TA=TS;若循環(huán)體A為分支結(jié)構(gòu),則TA=TB;若循環(huán)體A為并行結(jié)構(gòu),則TA=TP。假設(shè)循環(huán)次數(shù)為t,且t≥1,得目標(biāo)函數(shù)和約束條件為:

        (6)

        根據(jù)最優(yōu)解x=[x1,x2,…,xn],將模塊可信性代入式(6),即得到軟件系統(tǒng)的最優(yōu)可信性。

        目前,基于軟件可信性討論開發(fā)費(fèi)用分配的研究尚少,大部分研究聚焦于軟件可信性的分配方法。然而,在軟件開發(fā)過程中,提高軟件系統(tǒng)的可信性需要花費(fèi)巨大的成本,所以在軟件開發(fā)過程中,考慮軟件開發(fā)費(fèi)用的分配具有十分重要的意義。

        (1)文獻(xiàn)[15]在基于用戶給定的軟件系統(tǒng)可信性目標(biāo)的基礎(chǔ)上,建立了軟件屬性的可信性分配模型,具體如下所示:

        其中,yi=y*+k(αi-αmin)是第i個屬性的可信性;y*是第i個屬性必須滿足的最低可信性;αi是第i個屬性的權(quán)重;αmin是最小權(quán)重;k是屬性的可信增長率,所有屬性的可信增長率相同;T*是用戶給定的軟件系統(tǒng)必須滿足的可信性目標(biāo)。

        步驟1令屬性集合N={1,2,…,n},M>1=?。

        步驟3將可信增長率k代入式y(tǒng)i=y*+k(αi-αmin),i∈N-M>1,求得各個屬性的可信性。如果yi>1,則重新賦值yi=1,并將第i個屬性放入集合M>1,M>1=M>1∪{i}。

        重復(fù)步驟2~步驟3,直到所有屬性的可信性小于或等于1,即屬性的可信性分配結(jié)束。

        然而,該模型只考慮了屬性的可信性分配,并未考慮軟件開發(fā)費(fèi)用的分配問題。

        (2)文獻(xiàn)[2]提出了一種基于用戶反饋的軟件可信性更新模型,具體如下所示:

        其中,Tn是更新后的軟件可信性;Tu是用戶反饋的可信性;T0是軟件原始的可信性;ω0是軟件原始的可信性權(quán)重;n是用戶個數(shù);ωu(n)是用戶反饋的權(quán)重。

        該模型根據(jù)用戶的反饋和用戶數(shù)量重新分配屬性的權(quán)重,計(jì)算更新后的軟件可信性,然而,該模型也并未考慮軟件開發(fā)費(fèi)用分配這個重要的問題。

        (3)文獻(xiàn)[18]是在滿足用戶給定的軟件可信性目標(biāo)的前提下,研究如何分配各個子系統(tǒng)的可信性,使得軟件所需開發(fā)費(fèi)用最小,提出的模型如下所示:

        s.t.f(Ti)≥Tobj

        其中,E是軟件系統(tǒng)的開發(fā)費(fèi)用,Ei是第i個子系統(tǒng)的開發(fā)費(fèi)用,f表示各子系統(tǒng)之間的組成方式,Ti是第i個子系統(tǒng)的可信性,Tobj是用戶給定的軟件系統(tǒng)的可信性目標(biāo)。然而,在實(shí)際軟件開發(fā)過程中,軟件系統(tǒng)是在給定的開發(fā)費(fèi)用內(nèi)開發(fā)完成的。

        軟件開發(fā)費(fèi)用是研究軟件開發(fā)必須優(yōu)先考慮的重要因素。在用戶給定的軟件開發(fā)費(fèi)用內(nèi)如何實(shí)現(xiàn)軟件系統(tǒng)的可信性最優(yōu)化具有重要的研究意義,然而,當(dāng)前關(guān)于這一方面尚無更好的研究成果。

        5 算例分析

        Figure 6 Automatic ticketing system圖6 自動售票系統(tǒng)

        假設(shè)用戶給定的軟件開發(fā)費(fèi)用為70,各模塊初始開發(fā)費(fèi)用為5。模塊的復(fù)雜度fi、初始可信性Ti,min、最大可信性Ti,max及達(dá)到最大可信性Wi所需的費(fèi)用如表1所示。

        Table 1 Complexity,initial trustworthiness,maximum trustworthiness and corresponding cost表1 復(fù)雜度、初始可信性、最大可信性及達(dá)到最大可信性所需的費(fèi)用

        可得模塊M1和M2組成的登錄功能的初始可信性為0.96,最大可信性為0.99,所需花費(fèi)為20。同理可得,模塊M3和M4組成的訂票功能的初始可信性為0.64,最大可信性為0.92,所需花費(fèi)為25。模塊M1和M2組成或并行結(jié)構(gòu)后,再與模塊M3和M4組成的分支結(jié)構(gòu)順序連接,最后依次再與模塊M5,M6,M7順序連接構(gòu)成,則整個系統(tǒng)的結(jié)構(gòu)可看作是順序結(jié)構(gòu),利用式(2)可得目標(biāo)函數(shù)為:TS=max[1-(1-T1)(1-T2)]·[(p3T3+p4T4)]2·T5·T6·T7。

        由算法1可得,最優(yōu)解為x=[0,1,1,1,0],即分別分配開發(fā)費(fèi)用0,0,15,10,20,25,0給模塊M1,M2,M3,M4,M5,M6和M7,則T1=0.8,T2=0.8,T3=0.99,T4=0.9,T5=0.99,T6=0.99,T7=0.9,可得TS=0.78,即軟件系統(tǒng)的最優(yōu)可信性為0.78。

        6 結(jié)束語

        軟件開發(fā)費(fèi)用分配是軟件可信性工程中的重要環(huán)節(jié)。首先建立模塊的可信性費(fèi)用預(yù)估模型。其次,根據(jù)軟件系統(tǒng)的不同結(jié)構(gòu)特點(diǎn),建立順序、并行、分支和循環(huán)結(jié)構(gòu)下的軟件可信性與費(fèi)用分配模型和分配算法。在給定的軟件開發(fā)費(fèi)用內(nèi),利用動態(tài)規(guī)劃進(jìn)行費(fèi)用分配,使得軟件系統(tǒng)的可信性最優(yōu)。該模型不僅可以運(yùn)用于簡單系統(tǒng),也可以運(yùn)用于大型復(fù)雜系統(tǒng)。如何確定模型的參數(shù),則是需要進(jìn)一步深入探討的問題。同時,在今后的工作中,還需要通過實(shí)際項(xiàng)目中的應(yīng)用來進(jìn)一步檢驗(yàn)該模型的有效性和可操作性。

        猜你喜歡
        可信性分配費(fèi)用
        可變情報(bào)板發(fā)布內(nèi)容可信性檢測系統(tǒng)探究
        基于可信性的鍋爐安全質(zhì)量綜合評價(jià)研究
        在區(qū)間上取值的模糊變量的可信性分布
        應(yīng)答器THR和TFFR分配及SIL等級探討
        遺產(chǎn)的分配
        關(guān)于發(fā)票顯示額外費(fèi)用的分歧
        中國外匯(2019年21期)2019-05-21 03:04:22
        一種分配十分不均的財(cái)富
        績效考核分配的實(shí)踐與思考
        Five golden rules for meeting management
        監(jiān)理費(fèi)用支付與項(xiàng)目管理
        中國公路(2017年16期)2017-10-14 01:04:53
        精品久久久久香蕉网| 久久精品这里就是精品| 国产精品亚洲精品专区| 亚洲免费女女在线视频网站| 欧美性猛交xxxx乱大交极品| 成人午夜视频精品一区| 99精品国产兔费观看久久99| 男人天堂av在线成人av| 午夜福利电影| 日韩不卡av高清中文字幕| 一区二区三区国产97| 国产影院一区二区在线| 欧美午夜理伦三级在线观看| 屁屁影院ccyy备用地址| 精品久久久久久无码国产| 丝袜人妻无码中文字幕综合网| 粉色蜜桃视频完整版免费观看在线| 日韩精品中文一区二区三区在线| 成人毛片av免费| 成人免费视频在线观看| 日韩人妻无码精品系列专区无遮| 久久黄色精品内射胖女人| 亚洲av成人一区二区三区本码| 成年免费a级毛片免费看| 国产精品久久久久av福利动漫 | 国产精品亚洲专区无码web | 人妻无码ΑV中文字幕久久琪琪布 尤物AV无码色AV无码麻豆 | 女女同性av一区二区三区| 精品人妻va一区二区三区| 久久亚洲av无码西西人体| 又爽又黄禁片视频1000免费| 在线一区二区三区视频观看| 天堂免费av在线播放| 亚洲av无码无限在线观看| 国产老熟女狂叫对白| 国产男女乱婬真视频免费| 视频国产自拍在线观看| 欧美成人国产精品高潮| 一夲道无码人妻精品一区二区| 国产精品一区二区韩国AV | 亚洲一区二区三区av天堂|