李英梅,付 偉,邢 愷
(哈爾濱師范大學(xué))
構(gòu)件的質(zhì)量和可復(fù)用性度量模型*
李英梅,付 偉,邢 愷
(哈爾濱師范大學(xué))
討論了構(gòu)件質(zhì)量模型的度量,從而提出了專門針對軟件構(gòu)件質(zhì)量模型的可操作的可復(fù)用性度量模型.度量模型和方法可作為構(gòu)件用戶在管理及使用構(gòu)件時對構(gòu)件進行評價.
構(gòu)件;可復(fù)用性;度量模型
軟件復(fù)用(Software Reuse)的概念早在1968年的NATO軟件工程會議上就已經(jīng)提出可復(fù)用庫的思想.軟件復(fù)用是利用事先建立好的軟部件創(chuàng)建新軟件系統(tǒng)的過程.系統(tǒng)地開發(fā)可復(fù)用的軟部件,系統(tǒng)地使用這些軟部件作為構(gòu)筑模塊,來建立新的系統(tǒng).軟件復(fù)用度量是軟件復(fù)用技術(shù)中不可分割的一部分,在軟件復(fù)用開發(fā)中占據(jù)重要地位.軟件復(fù)用開發(fā)與傳統(tǒng)的軟件開發(fā)方式不同,從而影響到軟件度量,因此需要新的軟件復(fù)用度量方法,軟件復(fù)用度量的研究已經(jīng)引起學(xué)術(shù)界的廣泛重視.隨著軟件復(fù)用實踐的深入,可復(fù)用構(gòu)件數(shù)量不斷增加,構(gòu)件庫規(guī)模也不斷擴大.構(gòu)件的質(zhì)量和可復(fù)用度將影響到最終的軟件質(zhì)量,但是目前缺乏對構(gòu)件質(zhì)量和可復(fù)用性有效的評價模型.
就是為了提高構(gòu)件質(zhì)量和可復(fù)用性,對軟件構(gòu)件質(zhì)量及構(gòu)件的可復(fù)用性的度量模型進行研究,試圖給出科學(xué)的、精確的評測標(biāo)準(zhǔn).
對于軟件構(gòu)件的度量是構(gòu)件技術(shù)不可分割的一部分,在基于構(gòu)件的軟件開發(fā)中的應(yīng)用具有以下的作用:
(1)定量理解系統(tǒng)的體系結(jié)構(gòu)和詳細(xì)設(shè)計,利用度量反饋信息以構(gòu)造出更好的系統(tǒng);
(2)提供構(gòu)件項目開發(fā)成本,是估算和進度預(yù)計的良好基礎(chǔ);
(3)可以系統(tǒng)的將生產(chǎn)率、可維護性和可復(fù)用性等定量化來評估構(gòu)件技術(shù)在軟件開發(fā)中的應(yīng)用.
構(gòu)件的度量主要有3個內(nèi)容:
(1)構(gòu)件的質(zhì)量和可復(fù)用性度量(quality and reusability metrics)
構(gòu)件的質(zhì)量和可復(fù)用性度量包括前期度量和后期度量.前期度量在構(gòu)件的開發(fā)期進行,主要基于靜態(tài)程序度量,考察構(gòu)件的內(nèi)部屬性;而后期度量則在構(gòu)件已被復(fù)用后進行,主要基于復(fù)用用戶的反饋信息,考察構(gòu)件的外部屬性,構(gòu)件度量模型可以是建立外部屬性和內(nèi)部屬性之間合理聯(lián)系的一個間接度量方法模型.前期度量所得的內(nèi)部屬性值可以根據(jù)這個模型推導(dǎo)出外部屬性值,這些數(shù)值和后期度量得到的外部屬性值可以進行比較.通過計算反饋信息和估算信息的差值來評價模型的準(zhǔn)確度,而且還可以進一步指導(dǎo)調(diào)整度量模型的權(quán)值以提高模型的準(zhǔn)確性.
(2)復(fù)用度量(reusemetrics)
一套對采用復(fù)用技術(shù)開發(fā)的項目級和機構(gòu)級復(fù)用效果進行評價的復(fù)用度量.復(fù)用度量的指標(biāo)包括:為軟件增加可復(fù)用性帶來的附加成本、可復(fù)用構(gòu)件的復(fù)用次數(shù)、各種可復(fù)用構(gòu)件(分析、設(shè)計、代碼、測試可復(fù)用構(gòu)件)的構(gòu)成比例、可復(fù)用構(gòu)件被修改后復(fù)用的次數(shù)、復(fù)用對于項目進度的影響等,這些度量有助于使軟件復(fù)用的成本合理化,并為估計下一個項目的進度和成本提供經(jīng)驗.
(3)對構(gòu)件所需的相關(guān)信息的度量
例如,對可復(fù)用構(gòu)件的使用、問題報告、失敗的查詢和其他構(gòu)件配置管理所需的數(shù)據(jù)的度量,為構(gòu)件進行配置管理和維護提供依據(jù).
構(gòu)件作為一種軟件產(chǎn)品,應(yīng)該考慮軟件的質(zhì)量要素,同時由于構(gòu)件是軟件復(fù)用的一個基本單元,開發(fā)時運用了面向?qū)ο蠹夹g(shù),所以需要參考面向?qū)ο蠖攘糠椒?對構(gòu)件質(zhì)量模型的度量將討論構(gòu)件可復(fù)用性的相關(guān)特性、子特性的具體度量.
根據(jù)上述原則并以要素準(zhǔn)則度量模型為基礎(chǔ),參考《ISO/IEC9126 軟件工程產(chǎn)品質(zhì)量》[7]對軟件產(chǎn)品質(zhì)量進行全面的規(guī)定說明和評價,構(gòu)件的質(zhì)量模型包括以下六個特性:功能性、可靠性、易用性、效率、維護性、可移植性(見表1).
表1 構(gòu)件的質(zhì)量模型
對于構(gòu)件質(zhì)量模型所提出的度量,必須客觀、準(zhǔn)確、有效,并且通用,適用于各種類型構(gòu)件.
構(gòu)件庫的構(gòu)件質(zhì)量模型包括功能性、可靠性、易用性、效率、維護性和可移植性特性,度量方法可以參照ISO/IEC9126軟件質(zhì)量度量,可復(fù)用性是構(gòu)件區(qū)別于軟件的最大特性.
文獻(xiàn)[4]中指出了可復(fù)用性詳細(xì)的子特性特征,表2是可復(fù)用性的度量表,對其說明如下:
表2 可復(fù)用性相關(guān)子特性度量表
(1)每個度量元都有其度量方法和類型.使用3種度量類型,分別是P(Presence布爾值,是/否),I(Integer整型,數(shù)字),R(Ratio比).
(2)度量的影響是指該度量所得值對于評價準(zhǔn)則來說所產(chǎn)生的影響,例如,有特殊硬件依賴,構(gòu)件的環(huán)境獨立性就低.但是這個影響并不是某一個方面的,在影響一方面的屬性時也會影響到另一方面的屬性.比如說構(gòu)件字節(jié)數(shù)很大,構(gòu)件規(guī)模就大,可移植性就差;但同時構(gòu)件的復(fù)雜性就可能較小,其易理解性就好.所以,這里的影響僅僅針對于其所對應(yīng)的子特性.
(3)表中的度量值都可以從代碼和構(gòu)件使用說明書中得到.一些度量值可以直接得到,如,NOB等,一些需要經(jīng)過計算間接得到,如COI.
(4)構(gòu)件的可復(fù)用性的度量結(jié)果就可通過下式算得:
其中,ωRi(i=1,…,5)是權(quán)值,可以根據(jù)實際情況而定,F(xiàn)i(i=1,2,……)代表互操作性、可定制性、成熟度、易理解性、復(fù)雜性、環(huán)境獨立性、構(gòu)件規(guī)模等子特性.
與此類似的,進一步可以得到質(zhì)量的度量公式:
其中,ωk(k=1,…,6)是權(quán)值,Pi(i=1,2,……)代表質(zhì)量、功能性、可靠性、易用性、效率、維護性、可移植性.通過上式的計算,就可以得到構(gòu)件的質(zhì)量度量結(jié)果.故此,這個質(zhì)量模型及度量方法可以較好地評價構(gòu)件質(zhì)量信息.
隨著軟件復(fù)用實踐的深入,可復(fù)用構(gòu)件數(shù)量不斷增加,構(gòu)件庫規(guī)模也不斷擴大.構(gòu)件的質(zhì)量和可復(fù)用度將影響到最終的軟件質(zhì)量,但是目前缺乏對構(gòu)件質(zhì)量和可復(fù)用度有效的評價模型.
分析了構(gòu)件的度量,包括構(gòu)件度量的作用,構(gòu)件開發(fā)的特點對其度量的影響及構(gòu)件度量的內(nèi)容.并重點討論了構(gòu)件質(zhì)量模型的度量,從而提出了一個構(gòu)件質(zhì)量和可復(fù)用性度量模型.該模型是專門針對軟件構(gòu)件質(zhì)量模型的可操作的度量方法,重點描述了構(gòu)件可復(fù)用性的度量,但仍需要進一步量化及實踐檢驗.
[1]楊芙清,朱冰,梅宏.軟件復(fù)用.軟件學(xué)報,1995(9):525-533.
[2]桑大勇.基于部件的軟件重用技術(shù)研究.西安電子科技大學(xué)博士學(xué)位論文,1998.
[3]錢樂秋,張涌.軟件復(fù)用度量綜述.計算機應(yīng)用與軟件,2002(4):1-3.
[4]毛國蓓,李雪靜,等.基于軟件構(gòu)件質(zhì)量模型的度量及應(yīng)用.計算機應(yīng)用與軟件,2005(5):1-4.
[5]梅宏,謝濤,等.青鳥構(gòu)件庫的構(gòu)建度量.軟件學(xué)報,2000(11):634-641.
[6]王欣,楊根興,朱三元.構(gòu)件軟件的質(zhì)量和度量.華東理工大學(xué)學(xué)報,2000(10):543-546.
[7]王世安.軟件構(gòu)件的可復(fù)用性量化評價模型研究.計算機工程與設(shè)計,2008,10(29):2576 -2580.
[8]Erich Gamma,Richard Helm,Ralph Johnson,John Vlissides.Element of reuseable software[M].Addison - Wesley,1995.
[9]Weber H.Uniformity and invariance in support of reuse.IEEE Trans.on SE,1993,18(7):2 -7.
[10]Krueger C W.Sofware reuse.ACM Computer Surveys,1992.
[11]Frakes W,Terry C.Software Reuse:Metrics and Models.ACM Computing Surveys,1996,28(2):415 ~435.
The Model of Component Quality and Reusability Measurement
Li Yingmei,F(xiàn)u Wei,Xing Kai
(Harbin Normal University)
In this article,the metrics model of the component quality is discussed,thus a reusability metrics model is proposed,as well a set of quality attributes and associated metrics which focus on component reusability are difined.The model and method are references for the users.
Component;Reusability;Metrics model
2010-10-25
*黑龍江省教育廳科研基金項目(11531245)
(責(zé)任編輯:李佳云)