梅永剛, 丁劍潔, 唐 黎
(1.西安郵電大學(xué) 學(xué)生處, 陜西 西安 710121; 2.陜西學(xué)前師范學(xué)院 數(shù)學(xué)系, 陜西 西安 710061;3.西安郵電大學(xué) 通信與信息工程學(xué)院, 陜西 西安 710121)
?
基于跟蹤矩陣度量核心資產(chǎn)庫若干性質(zhì)的方法
梅永剛1, 丁劍潔2, 唐黎3
(1.西安郵電大學(xué) 學(xué)生處, 陜西 西安 710121;2.陜西學(xué)前師范學(xué)院 數(shù)學(xué)系, 陜西 西安 710061;3.西安郵電大學(xué) 通信與信息工程學(xué)院, 陜西 西安 710121)
針對核心資產(chǎn)庫的度量問題,給出一種度量分析方法。通過復(fù)用跟蹤矩陣記錄核心資產(chǎn)的復(fù)用過程,定義核心資產(chǎn)一致性、產(chǎn)品相關(guān)性的度量及性質(zhì),結(jié)合軟件生產(chǎn)線開發(fā)方式,對度量可能出現(xiàn)的結(jié)果進(jìn)行分類解釋。實(shí)例結(jié)果表明,該方法可以跟蹤核心資產(chǎn)庫的復(fù)用過程和復(fù)用程度,并且能篩選出一致性較高的核心資產(chǎn)集合,一致性較高的產(chǎn)品集合等。
軟件生產(chǎn)線;核心資產(chǎn)庫;一致性;相關(guān)性;度量;跟蹤矩陣
軟件生產(chǎn)線的開發(fā)是圍繞核心資產(chǎn)庫進(jìn)行的,是一組具有公共的、可管理的特征集的軟件密集系統(tǒng)的集合[1]。核心資產(chǎn)庫作為生產(chǎn)線的生產(chǎn)資料,它的規(guī)模、質(zhì)量、成本、覆蓋率和復(fù)用性等性能直接體現(xiàn)了組織生產(chǎn)線開發(fā)模式的有效性,因此對核心資產(chǎn)庫的多角度分析度量,是對其管理的重要內(nèi)容。
目前,對核心資產(chǎn)庫的度量主要是從核心資產(chǎn)的屬性出發(fā),涉及到核心資產(chǎn)的應(yīng)用能力、功能相同性、非功能相同性、變化豐富性、以及可裁剪性等方面[2-3]?;谀繕?biāo)-問題-度量模式的軟件生產(chǎn)線管理過程[4]以及核心資產(chǎn)的度量元指標(biāo)[5-9],數(shù)據(jù)的來源和采集方式都比較模糊,對度量元指標(biāo)缺少定量的定義與計(jì)算方法。生產(chǎn)線開發(fā)方式的優(yōu)勢在于可以實(shí)現(xiàn)最大化的復(fù)用,因此核心資產(chǎn)的復(fù)用性是衡量資產(chǎn)庫質(zhì)量的一項(xiàng)重要指標(biāo)[10-12]。本文擬基于復(fù)用跟蹤矩陣,給出若干核心資產(chǎn)的一致性和產(chǎn)品相關(guān)性的度量定義和方法。
假設(shè)在某個時(shí)間,將核心資產(chǎn)庫中m個資產(chǎn)r1,r2,…,rm按照入庫時(shí)間排序,記錄時(shí)間、成本、來源、類型及特征等信息。將生產(chǎn)線已生產(chǎn)的n個產(chǎn)品p1,p2,…,pn按生產(chǎn)時(shí)間先后排序。
定義1[11]產(chǎn)品對核心資產(chǎn)的復(fù)用矩陣為
U=(uij)n×m,
其中uij為復(fù)用符。若產(chǎn)品pi使用核心資產(chǎn)rj,則uij=1,否則uij=0。
復(fù)用跟蹤矩陣滿足下列性質(zhì)。
性質(zhì)1U是包含0、1元素的矩陣,每新生產(chǎn)1個產(chǎn)品,矩陣增加1行,每增加1項(xiàng)核心資產(chǎn),矩陣增加1列,即矩陣大小動態(tài)變化。
性質(zhì)2uij的下標(biāo)反應(yīng)了相對順序,i越大,表示產(chǎn)品pi開發(fā)的時(shí)間越晚;j越大,表示核心資產(chǎn)rj的入庫時(shí)間越晚。
性質(zhì)3矩陣越稀疏,表明核心資產(chǎn)庫的整體復(fù)用率越低。
性質(zhì)4核心資產(chǎn)rj的當(dāng)前復(fù)用次數(shù)為
性質(zhì)5產(chǎn)品pi復(fù)用的核心資產(chǎn)個數(shù)為
2.1定義與性質(zhì)
核心資產(chǎn)的一致性是對核心資產(chǎn)的質(zhì)量度量。生產(chǎn)領(lǐng)域的集中性,以及產(chǎn)品之間的相似性,使得核心資產(chǎn)之間存在一定的關(guān)系,它們并不是獨(dú)立的,可以用一致性來反映它們之間的關(guān)系?;趶?fù)用跟蹤矩陣,給出核心資產(chǎn)的一致性以及產(chǎn)品的相關(guān)性度量定義[12]。
度量1核心資產(chǎn)ri,rj的一致性為
其中n為產(chǎn)品對核心資產(chǎn)的復(fù)用矩陣中對應(yīng)核心資產(chǎn)列元素的數(shù)量積。
定義2核心資產(chǎn)ri,rj的一致性矩陣
C=(cij)m×m,cij=C(ri,rj)。
同理,可以將兩個核心資產(chǎn)的一致性度量擴(kuò)展到多個核心資產(chǎn)的一致性度量。
度量2資產(chǎn)ri,rj,…,rl之間的一致性為
0≤C(ri,rj,…,rl)。
核心資產(chǎn)的一致性滿足以下性質(zhì)。
性質(zhì)6兩個核心資產(chǎn)的一致性表明了產(chǎn)品同時(shí)復(fù)用這兩個資產(chǎn)的比例,因此cij滿足
0≤cij≤1(i≠j)。
性質(zhì)7所有產(chǎn)品同時(shí)復(fù)用兩個資產(chǎn)時(shí),這兩個核心資產(chǎn)的一致性為1。
性質(zhì)8若核心資產(chǎn)集合A和B的一致性度量分別為C(A)和C(B),且A?B,則成立
C(A)≥C(B)。
度量3產(chǎn)品pi,pj的相關(guān)性為
其中m為產(chǎn)品對核心資產(chǎn)的復(fù)用矩陣中對應(yīng)產(chǎn)品行元素的數(shù)量積。
定義3產(chǎn)品pi,pj的相關(guān)性矩陣
R=(rij)n×n,rij=R(pi,pj),
0≤rij≤1(i≠j)。
同理,可以定義一組產(chǎn)品的相關(guān)性度量。
度量4產(chǎn)品pi,pj,…,pl之間的相關(guān)性為
0≤R(pi,pj,…,pl)≤1。
產(chǎn)品的相關(guān)性滿足以下性質(zhì)。
性質(zhì)9兩個產(chǎn)品的相關(guān)性表明了它們復(fù)用相同資產(chǎn)的比例,因此rij滿足
0≤rij≤1(i≠j)。
性質(zhì)10兩個產(chǎn)品同時(shí)復(fù)用了所有核心資產(chǎn)時(shí),這兩個產(chǎn)品的相關(guān)性為1。
性質(zhì)11若產(chǎn)品集合A,B對應(yīng)的相關(guān)性分別為R(A)和R(B),且A?B,則成立
R(A)≥R(B)。
從上面的定義可以看出,一致性是針對核心資產(chǎn)定義的,表明一組核心資產(chǎn)被所有產(chǎn)品同時(shí)復(fù)用的比例;相關(guān)性是針對產(chǎn)品定義的,表明一組產(chǎn)品復(fù)用所有核心資產(chǎn)的比例,它們都是生產(chǎn)線開發(fā)方式復(fù)用性的體現(xiàn)。核心資產(chǎn)的一致性越高,表明它們被產(chǎn)品同時(shí)使用的可能性越大,產(chǎn)品使用越多的相同的核心資產(chǎn),因此,核心資產(chǎn)庫中資產(chǎn)的一致性愈高,表明這條生產(chǎn)線產(chǎn)品的相關(guān)性愈強(qiáng)。
2.2度量結(jié)果分析
(1) 核心資產(chǎn)的一致性
若度量結(jié)果較高,說明本組資產(chǎn)被同時(shí)使用的頻率較高。需考慮在核心資產(chǎn)庫中提供聯(lián)合下載本組資產(chǎn)的功能,是否有合并資產(chǎn)的可能。
若度量結(jié)果較低,說明本組資產(chǎn)被同時(shí)使用的頻率較低。
原因1資產(chǎn)性質(zhì)本身適應(yīng)于不同的應(yīng)用領(lǐng)域。
原因2入庫時(shí)間相隔較長,缺乏同時(shí)使用機(jī)會。
可以根據(jù)每個資產(chǎn)入庫時(shí)的記錄,如時(shí)間、成本、來源、類型和特征等信息判定,若是原因2引起的度量結(jié)果,則需進(jìn)一步跟蹤度量。
(2) 產(chǎn)品相關(guān)性
若度量結(jié)果較高,說明兩個產(chǎn)品在開發(fā)過程中共享了較多的核心資產(chǎn)。若產(chǎn)品中出現(xiàn)了缺陷或風(fēng)險(xiǎn),則需在另一個產(chǎn)品中及時(shí)排除或規(guī)避,考慮分享更多的產(chǎn)品管理經(jīng)驗(yàn)。
若度量結(jié)果較低,說明兩個產(chǎn)品在開發(fā)過程中沒有共享較多的資產(chǎn)。
原因1產(chǎn)品性質(zhì)。
原因2產(chǎn)品開發(fā)間隔時(shí)間較長,核心資產(chǎn)庫規(guī)模限制。
可以根據(jù)產(chǎn)品的應(yīng)用領(lǐng)域,具體架構(gòu)模塊等信息來判定,若是原因2引起的度量結(jié)果,則需進(jìn)一步跟蹤度量。
數(shù)據(jù)來源于某家軟件公司[11],計(jì)劃重新建立核心資產(chǎn)庫以便適應(yīng)生產(chǎn)線開發(fā)方式。新建核心資產(chǎn)庫中資產(chǎn)12項(xiàng),開發(fā)相關(guān)產(chǎn)品10項(xiàng),對核心資產(chǎn)的一致性以及產(chǎn)品相關(guān)性進(jìn)行分析,篩選出一致性較高的核心資產(chǎn)以及相關(guān)性較高的產(chǎn)品,為生產(chǎn)線的管理提供信息。
根據(jù)定義1,建立開發(fā)過程中的復(fù)用跟蹤矩陣
根據(jù)度量1,計(jì)算出任意一對核心資產(chǎn)的一致性,給出定義2中的一致性矩陣
一致性較高的核心資產(chǎn)組有
(c2,c5)、(c5,c9)、(c6,c9),
可以考慮將它們合并,或提供聯(lián)合下載功能。
根據(jù)度量3,計(jì)算任意一對產(chǎn)品的相關(guān)性,給出定義3中的相關(guān)性矩陣
相關(guān)性較高的產(chǎn)品組有
(p1,p7)、(p5,p6)、(p5,p7)、
(p5,p9),(p6,p8)、(p7,p9),
這些產(chǎn)品組在風(fēng)險(xiǎn)管理、后期維護(hù)過程中所采取的策略都有較高的復(fù)用可能,可相互參考。
引入復(fù)用跟蹤矩陣記錄了核心資產(chǎn)的復(fù)用過程,給出了多個核心資產(chǎn)的一致性,產(chǎn)品的相關(guān)性等度量定義及其相關(guān)性質(zhì),并對資產(chǎn)的一致性和產(chǎn)品的相關(guān)性度量可能結(jié)果進(jìn)行分析解釋。實(shí)例結(jié)果表明,該度量方法可以篩選出一致性高的核心資產(chǎn)和相關(guān)性高的產(chǎn)品,進(jìn)而達(dá)到管理策略的復(fù)用。
[1]CLEMENTS P, NORTHROP L. Software Product Lines: Practices and Patterns[M]. Reading, MA: Addison-Wesley, 2002:9-12.
[2]JIN S H, JI H K, RHEW S Y, et al. A framework for evaluating reusability of core asset in product line engineering[J/OL]. Information and Software Technology 2007,49(7):740-760[2016-03-20]. http://dx.doi.org/10.1016/j.infsof.2006.08.008.
[3]ZUBROW D, CHASTEK G J. Measures for Software Product Lines[R/OL].[2016-03-20].http://www.sei.cmu.edu/publications/pubweb.html.
[4]丁劍潔,郝克剛,侯紅,等,基于度量的軟件生產(chǎn)線管理研究[J].計(jì)算機(jī)科學(xué),2011,38(1):156-157. DOI:10.3969/j.issn.1002-137X.2011.01.036.
[5]金星波.基于軟件庫的軟件生產(chǎn)線模型研究[J/OL].吉林大學(xué)學(xué)報(bào):信息科學(xué)版,2014, 32 (4): 441-445[2016-03-20]. http://dx.chinadoi.cn/10.3969/j.issn.1671-5896.2014.04.019.
[6]寧安良,侯紅,魚濱,等,軟件產(chǎn)品線度量及應(yīng)用研究[J/OL].計(jì)算機(jī)應(yīng)用與軟件,2007,24 (9):60-63[2016-03-20]. http://dx.chinadoi.cn/10.3969/j.issn.1000-386X.2007.09.022.
[7]聶坤明,張莉,樊志強(qiáng).軟件產(chǎn)品線可變性建模技術(shù)系統(tǒng)綜述[J/OL]. 軟件學(xué)報(bào). 2013,24(9):2001-2019[2016-03-20]. http://dx.chinadoi.cn/10.3724/SP.J.1001.2013.04433.
[8]張濤.軟件產(chǎn)品線關(guān)鍵技術(shù)研究[D/OL].西安:西北工業(yè)大學(xué),2006:4-126.http://cdmd.cnki.com.cn/Article/CDMD-10699-2007172238.htm.
[9]蔣濤,應(yīng)晶,吳明暉,等.一種面向特征增量的軟件產(chǎn)品線分析方法[J/OL].浙江大學(xué)學(xué)報(bào)(工學(xué)版),2009 ,43 (12): 2142-2148[2016-03-20]. http://www.cnki.com.cn/Article/CJFDTotal-ZDZC200912006.htm.DOI: 10.3785/j.issn.1008-973X.2009.12.003.
[10] 屈慶明,趙昊翔,潘金貴.基于生產(chǎn)線方式的軟件開發(fā)[J/OL].計(jì)算機(jī)科學(xué),2005,32(4):209-211[2016-03-20]. http://dx.chinadoi.cn/10.3969/j.issn.1002-137X.2005.04.064.
[11] 丁劍潔,郝克剛,王金柱.基于跟蹤矩陣度量核心資產(chǎn)庫復(fù)用性的方法[J].計(jì)算機(jī)應(yīng)用與軟件,2013,30(2):189-191.DOI: 10.3969/j.issn.1000-386x.2013.02.049.
[12] 丁劍潔.軟件生產(chǎn)線度量技術(shù)應(yīng)用研究[D].西安:西北大學(xué),2012:3-114.
[責(zé)任編輯:祝劍]
Track matrix based measurement on a number of properties of core asset library
MEI Yonggang1,DING Jianjie2,TANG Li3
(1.Students’ Affairs Division, Xi’an University of Posts and Telecommunications, Xi’an 710121, China;2.Mathematic Department, Shaanxi Xueqian Normal Institute, Xi’an 7100061, China;3.School of Communication and Information Engineering,Xi’an University of Posts and Telecommunications, Xi’an 710121, China)
A measurement analysis is proposed for the measurement of core asset library. Based on the basis of reuse track matrix, the definition and properties of core assets consistency, product correlations are given combined with the software product line development to classify and explain the possible measurement results. Example results show that this method can track the reuse process of core asset library, reuse, and select set higher consistency core assets, high consistency of product collection, etc.
software product line, core asset library, consistency, relativity, measurement, track matrix
10.13682/j.issn.2095-6533.2016.05.011
2016-06-03
陜西學(xué)前師范學(xué)院科研基金資助項(xiàng)目(2013KJ060)
梅永剛(1979-),男,碩士,講師,從事應(yīng)用數(shù)學(xué)研究。E-mail:mygang@xupt.edu.cn
丁劍潔(1979-),女,博士,副教授,從事軟件度量和軟件過程管理研究。
TP311
A
2095-6533(2016)05-0055-04