[發明專利]一種基于子樹分解的軟件產品線產品派生方法有效
| 申請號: | 201710344221.4 | 申請日: | 2017-05-16 |
| 公開(公告)號: | CN107301040B | 公開(公告)日: | 2020-09-29 |
| 發明(設計)人: | 王立松;王銘;魏歐 | 申請(專利權)人: | 南京航空航天大學 |
| 主分類號: | G06F8/70 | 分類號: | G06F8/70;G06F8/20;G06N3/00 |
| 代理公司: | 南京鐘山專利代理有限公司 32252 | 代理人: | 戴朝榮 |
| 地址: | 211106 江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 子樹 分解 軟件 產品線 產品 派生 方法 | ||
本發明提供了一種基于子樹分解的軟件產品線產品派生方法。所述基于子樹分解的軟件產品線產品派生方法包括如下步驟:從待進行產品派生的產品線提取得到特征模型;采用遺傳算法對所述特征模型進行特征選擇,形成新的解集;將步驟二得到的所有解集,按照特征模型變異對應的解釋,轉換為對應的產品配置,并交由產品線其他工序生成最終產品。本發明的有益效果:所述基于子樹分解的軟件產品線產品派生方法可以在遺傳算法的框架下高效地對具體的軟件產品線工程特征模型進行產品派生。
技術領域
本發明屬于計算機技術領域,具體地涉及一種基于子樹分解的軟件產品線產品派生方法。
背景技術
軟件產品線是一組相關聯的系列產品,也被稱為產品家族。各軟件產品擁有共同的核心資產,產品家族中產品成員之間的差異被稱為可變性。通常使用特征模型來描述這樣的一個產品集合,特征往往對應著系統的功能模塊,組成構件等。而產品是由一組選定的特征構成,特征模型定義了特征與特征之間的約束關系,判定由特征生成產品的有效性。對于軟件產品線而言,產品派生是指從其領域工程所得到的特征模型上選擇合適的特征,然后由選擇的特征構建軟件產品的過程。如何復用核心資產并高效率的進行軟件產品的派生是研究軟件產品線的重要目的。目前主流算法是利用多目標優化算法來進行特征選擇。
在具體應用領域,一個合法(沒有約束違反情況)的產品才是能實際可行的方案。產品有效率將是軟件產品線特征模型選擇問題的一個很重要的評估指標。現有算法,例如Sayyad以及Henard等人的研究中,最終種群的有效個體比率(VR)指標則表現不佳。具體到問題本身,由于當前對特征模型進行基因編碼時,當前算法大部分對特征模型進行直接編碼,基因節點之間的相關性太高,交叉變異過程中難以保持子代的有效性,進而導致最終解集的產品有效率較低的情況出現。
發明內容
本發明的目的在于針對現有技術的缺陷,提供基于子樹分解的軟件產品線產品派生方法。
本發明的技術方案如下:一種基于子樹分解的軟件產品線產品派生方法,包括如下步驟:
a、從待進行產品派生的產品線提取得到特征模型;
b、采用遺傳算法對所述特征模型進行特征選擇,形成新的解集;
c、將步驟b得到的所有解集,按照特征模型變異對應的解釋,轉換為對應的產品配置,并交由產品線其他工序生成最終產品。
優選地,在步驟b具體包括如下步驟:
b1、根據步驟a得到的特征模型獲得所有特征樹子樹;
b2、隨機選擇所述特征模型中的一個特征樹子樹,并將所述特征樹子樹對應的基因位進行交叉操作;
b3、將交叉得到的個體進行單點變異操作,融合親代個體與子代個體形成一個新種群,對所述新種群中的所有個體進行適應度計算,按照適應度大小排序從而得到新的解集。
優選地,在步驟b1中具體包括如下步驟:
b11、建立所述特征樹子樹的根節點集合,其中,所述根節點集合是特征樹所有節點組成的集合;
b12、從跨子樹約束集合中取出一條約束,對所述約束中的對應特征樹上的兩個節點求取最小公共祖先節點,并將所述兩個節點到所述最小公共祖先節點路徑上的所有節點從所述根節點集合中移除;
b13、不斷重復步驟b12直到所述跨子樹約束集合為空,則所述根節點集合中包含所有的特征樹子樹的根節點。
優選地,在步驟b2中具體包括如下步驟:
b21、從所述特征樹子樹的根節點集合中移除特征樹的根節點;
b22、對所有特征樹子樹所含的節點數進行計數,按照輪盤選擇算法選擇待交叉的子樹根節點,得到所有待交叉的基因位;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京航空航天大學,未經南京航空航天大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710344221.4/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:操作系統內核的加載方法和裝置
- 下一篇:一種定制系統功能的方法及系統





