梅永剛, 丁劍潔, 唐 黎
(1.西安郵電大學 學生處, 陜西 西安 710121; 2.陜西學前師范學院 數學系, 陜西 西安 710061;3.西安郵電大學 通信與信息工程學院, 陜西 西安 710121)
?
基于跟蹤矩陣度量核心資產庫若干性質的方法
梅永剛1, 丁劍潔2, 唐黎3
(1.西安郵電大學 學生處, 陜西 西安 710121;2.陜西學前師范學院 數學系, 陜西 西安 710061;3.西安郵電大學 通信與信息工程學院, 陜西 西安 710121)
針對核心資產庫的度量問題,給出一種度量分析方法。通過復用跟蹤矩陣記錄核心資產的復用過程,定義核心資產一致性、產品相關性的度量及性質,結合軟件生產線開發方式,對度量可能出現的結果進行分類解釋。實例結果表明,該方法可以跟蹤核心資產庫的復用過程和復用程度,并且能篩選出一致性較高的核心資產集合,一致性較高的產品集合等。
軟件生產線;核心資產庫;一致性;相關性;度量;跟蹤矩陣
軟件生產線的開發是圍繞核心資產庫進行的,是一組具有公共的、可管理的特征集的軟件密集系統的集合[1]。核心資產庫作為生產線的生產資料,它的規模、質量、成本、覆蓋率和復用性等性能直接體現了組織生產線開發模式的有效性,因此對核心資產庫的多角度分析度量,是對其管理的重要內容。
目前,對核心資產庫的度量主要是從核心資產的屬性出發,涉及到核心資產的應用能力、功能相同性、非功能相同性、變化豐富性、以及可裁剪性等方面[2-3]。基于目標-問題-度量模式的軟件生產線管理過程[4]以及核心資產的度量元指標[5-9],數據的來源和采集方式都比較模糊,對度量元指標缺少定量的定義與計算方法。生產線開發方式的優勢在于可以實現最大化的復用,因此核心資產的復用性是衡量資產庫質量的一項重要指標[10-12]。本文擬基于復用跟蹤矩陣,給出若干核心資產的一致性和產品相關性的度量定義和方法。
假設在某個時間,將核心資產庫中m個資產r1,r2,…,rm按照入庫時間排序,記錄時間、成本、來源、類型及特征等信息。將生產線已生產的n個產品p1,p2,…,pn按生產時間先后排序。
定義1[11]產品對核心資產的復用矩陣為
U=(uij)n×m,
其中uij為復用符。若產品pi使用核心資產rj,則uij=1,否則uij=0。
復用跟蹤矩陣滿足下列性質。
性質1U是包含0、1元素的矩陣,每新生產1個產品,矩陣增加1行,每增加1項核心資產,矩陣增加1列,即矩陣大小動態變化。
性質2uij的下標反應了相對順序,i越大,表示產品pi開發的時間越晚;j越大,表示核心資產rj的入庫時間越晚。
性質3矩陣越稀疏,表明核心資產庫的整體復用率越低。
性質4核心資產rj的當前復用次數為
性質5產品pi復用的核心資產個數為
2.1定義與性質
核心資產的一致性是對核心資產的質量度量。生產領域的集中性,以及產品之間的相似性,使得核心資產之間存在一定的關系,它們并不是獨立的,可以用一致性來反映它們之間的關系。基于復用跟蹤矩陣,給出核心資產的一致性以及產品的相關性度量定義[12]。
度量1核心資產ri,rj的一致性為
其中n為產品對核心資產的復用矩陣中對應核心資產列元素的數量積。
定義2核心資產ri,rj的一致性矩陣
C=(cij)m×m,cij=C(ri,rj)。
同理,可以將兩個核心資產的一致性度量擴展到多個核心資產的一致性度量。
度量2資產ri,rj,…,rl之間的一致性為
0≤C(ri,rj,…,rl)。
核心資產的一致性滿足以下性質。
性質6兩個核心資產的一致性表明了產品同時復用這兩個資產的比例,因此cij滿足
0≤cij≤1(i≠j)。
性質7所有產品同時復用兩個資產時,這兩個核心資產的一致性為1。
性質8若核心資產集合A和B的一致性度量分別為C(A)和C(B),且A?B,則成立
C(A)≥C(B)。
度量3產品pi,pj的相關性為

其中m為產品對核心資產的復用矩陣中對應產品行元素的數量積。
定義3產品pi,pj的相關性矩陣
R=(rij)n×n,rij=R(pi,pj),
0≤rij≤1(i≠j)。
同理,可以定義一組產品的相關性度量。
度量4產品pi,pj,…,pl之間的相關性為

0≤R(pi,pj,…,pl)≤1。
產品的相關性滿足以下性質。
性質9兩個產品的相關性表明了它們復用相同資產的比例,因此rij滿足
0≤rij≤1(i≠j)。
性質10兩個產品同時復用了所有核心資產時,這兩個產品的相關性為1。
性質11若產品集合A,B對應的相關性分別為R(A)和R(B),且A?B,則成立
R(A)≥R(B)。
從上面的定義可以看出,一致性是針對核心資產定義的,表明一組核心資產被所有產品同時復用的比例;相關性是針對產品定義的,表明一組產品復用所有核心資產的比例,它們都是生產線開發方式復用性的體現。核心資產的一致性越高,表明它們被產品同時使用的可能性越大,產品使用越多的相同的核心資產,因此,核心資產庫中資產的一致性愈高,表明這條生產線產品的相關性愈強。
2.2度量結果分析
(1) 核心資產的一致性
若度量結果較高,說明本組資產被同時使用的頻率較高。需考慮在核心資產庫中提供聯合下載本組資產的功能,是否有合并資產的可能。
若度量結果較低,說明本組資產被同時使用的頻率較低。
原因1資產性質本身適應于不同的應用領域。
原因2入庫時間相隔較長,缺乏同時使用機會。
可以根據每個資產入庫時的記錄,如時間、成本、來源、類型和特征等信息判定,若是原因2引起的度量結果,則需進一步跟蹤度量。
(2) 產品相關性
若度量結果較高,說明兩個產品在開發過程中共享了較多的核心資產。若產品中出現了缺陷或風險,則需在另一個產品中及時排除或規避,考慮分享更多的產品管理經驗。
若度量結果較低,說明兩個產品在開發過程中沒有共享較多的資產。
原因1產品性質。
原因2產品開發間隔時間較長,核心資產庫規模限制。
可以根據產品的應用領域,具體架構模塊等信息來判定,若是原因2引起的度量結果,則需進一步跟蹤度量。
數據來源于某家軟件公司[11],計劃重新建立核心資產庫以便適應生產線開發方式。新建核心資產庫中資產12項,開發相關產品10項,對核心資產的一致性以及產品相關性進行分析,篩選出一致性較高的核心資產以及相關性較高的產品,為生產線的管理提供信息。
根據定義1,建立開發過程中的復用跟蹤矩陣

根據度量1,計算出任意一對核心資產的一致性,給出定義2中的一致性矩陣

一致性較高的核心資產組有
(c2,c5)、(c5,c9)、(c6,c9),
可以考慮將它們合并,或提供聯合下載功能。
根據度量3,計算任意一對產品的相關性,給出定義3中的相關性矩陣

相關性較高的產品組有
(p1,p7)、(p5,p6)、(p5,p7)、
(p5,p9),(p6,p8)、(p7,p9),
這些產品組在風險管理、后期維護過程中所采取的策略都有較高的復用可能,可相互參考。
引入復用跟蹤矩陣記錄了核心資產的復用過程,給出了多個核心資產的一致性,產品的相關性等度量定義及其相關性質,并對資產的一致性和產品的相關性度量可能結果進行分析解釋。實例結果表明,該度量方法可以篩選出一致性高的核心資產和相關性高的產品,進而達到管理策略的復用。
[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]丁劍潔,郝克剛,侯紅,等,基于度量的軟件生產線管理研究[J].計算機科學,2011,38(1):156-157. DOI:10.3969/j.issn.1002-137X.2011.01.036.
[5]金星波.基于軟件庫的軟件生產線模型研究[J/OL].吉林大學學報:信息科學版,2014, 32 (4): 441-445[2016-03-20]. http://dx.chinadoi.cn/10.3969/j.issn.1671-5896.2014.04.019.
[6]寧安良,侯紅,魚濱,等,軟件產品線度量及應用研究[J/OL].計算機應用與軟件,2007,24 (9):60-63[2016-03-20]. http://dx.chinadoi.cn/10.3969/j.issn.1000-386X.2007.09.022.
[7]聶坤明,張莉,樊志強.軟件產品線可變性建模技術系統綜述[J/OL]. 軟件學報. 2013,24(9):2001-2019[2016-03-20]. http://dx.chinadoi.cn/10.3724/SP.J.1001.2013.04433.
[8]張濤.軟件產品線關鍵技術研究[D/OL].西安:西北工業大學,2006:4-126.http://cdmd.cnki.com.cn/Article/CDMD-10699-2007172238.htm.
[9]蔣濤,應晶,吳明暉,等.一種面向特征增量的軟件產品線分析方法[J/OL].浙江大學學報(工學版),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] 屈慶明,趙昊翔,潘金貴.基于生產線方式的軟件開發[J/OL].計算機科學,2005,32(4):209-211[2016-03-20]. http://dx.chinadoi.cn/10.3969/j.issn.1002-137X.2005.04.064.
[11] 丁劍潔,郝克剛,王金柱.基于跟蹤矩陣度量核心資產庫復用性的方法[J].計算機應用與軟件,2013,30(2):189-191.DOI: 10.3969/j.issn.1000-386x.2013.02.049.
[12] 丁劍潔.軟件生產線度量技術應用研究[D].西安:西北大學,2012:3-114.
[責任編輯:祝劍]
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
陜西學前師范學院科研基金資助項目(2013KJ060)
梅永剛(1979-),男,碩士,講師,從事應用數學研究。E-mail:mygang@xupt.edu.cn
丁劍潔(1979-),女,博士,副教授,從事軟件度量和軟件過程管理研究。
TP311
A
2095-6533(2016)05-0055-04