[發明專利]一種Java項目的體系結構策略定位方法及系統有效
| 申請號: | 202110235012.2 | 申請日: | 2021-03-03 |
| 公開(公告)號: | CN112947995B | 公開(公告)日: | 2022-07-26 |
| 發明(設計)人: | 葛寧;王澤;張莉;周雨飛;趙久昂;劉澤偉 | 申請(專利權)人: | 北京航空航天大學 |
| 主分類號: | G06F8/77 | 分類號: | G06F8/77 |
| 代理公司: | 北京天達知識產權代理事務所(普通合伙) 11386 | 代理人: | 龐許倩 |
| 地址: | 100191*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 java 項目 體系結構 策略 定位 方法 系統 | ||
本發明涉及一種Java項目的體系結構策略定位方法及系統,屬于軟件體系結構策略代碼定位領域,解決了現有軟件體系結構策略代碼定位效率低下的問題。一種Java項目的體系結構策略定位方法,包括如下步驟:提取Java項目中所有Java方法的特征文本;處理所述特征文本,得到對應的特征向量;確定要定位的體系結構策略類型,將每一Java方法對應的特征向量輸入至對應于所述體系結構策略類型的體系結構策略模型,得到對應于所述體系結構策略類型的Java方法所屬的切點方法類型;基于所述所屬的切點方法類型,在所述Java項目中定位所述對應于所述體系結構策略類型的Java方法。該方法能夠提高軟件體系結構策略代碼定位的效率。
技術領域
本發明涉及軟件體系結構策略代碼定位領域,尤其涉及一種Java項目的體系結構策略定位方法及系統。
背景技術
體系結構策略(Architectural Tactics)是系統架構和設計人員在長期的設計活動中總結凝練出的、為實現系統非功能需求的普適性設計方案。這些方案在長期的設計活動中沉淀,系統設計人員將其總結和歸納為一系列面向非功能屬性設計的體系結構策略,以實現對設計方案的復用。這些體系結構策略在學術界和工業界都廣泛使用,例如在航空控制系統中,通過冗余策略保障系統對可靠性的要求。
針對系統非功能需求,設計人員在系統設計階段往往會給出系統包含的一系列體系結構策略,但是由于開發人員在實際開發和系統維護過程中,對體系結構策略設計的理解偏差導致設計中的體系結構策略實現錯誤,或者隨著系統的維護與更迭導致原有的體系結構策略被破壞,這會導致系統的質量屬性難以保證。軟件開發的現狀是,在軟件的生命周期中,設計和開發的時間只占約22%,大多數時間被用于系統維護,而在這部分時間開銷中,約50%-90%的時間和經費被開發人員用于理解程序。對于大型遺留軟件系統,缺失、過時的文檔使得開發人員無法從文檔中獲得體系結構信息,也無法掌握系統當前的狀態。唯一能夠獲得軟件系統信息的方式就是閱讀源碼,但大型系統的源碼是難以分析和理解的,會消耗非常多的人力和時間,特別是對于剛加入團隊工作的開發人員而言。即便是長期持續開發的人員,從代碼中理解體系結構并追蹤變化也是一件非常困難的事情。因此,在沒有體系結構信息的情況下,難以快速和完全理解模塊乃至系統的結構,會消耗大量的資源,并帶來巨大的風險。因此,如果能夠利用源碼自動化地定位體系結構策略,以直觀的形式呈現給開發和維護人員,則能夠幫助開發人員快速的從整體上理解系統。
對于體系結構策略的定位問題,現有的技術主要分為兩種,一是基于基本定位方法的代碼定位,二是基于機器學習的文本定位。
對于基于基本定位方法的代碼定位,目前最常用的方法就是信息檢索,信息檢索的方法是基于模型的測試的常用方法,基于模型的測試(Model-Based Testing,MBT)是結合了模型驅動架構(Model-Driven Architecture,MDA)的思想從傳統測試方法中發展而來的高效自動化測試方法。其方法的核心就是檢測模型的完整性、正確性、以及代碼與模型的一致性。信息檢索可以作為MBT的主要定位方法,主要原因是MBT中檢測模型與代碼一致性的關鍵在于模型信息和代碼信息的匹配和映射,所以在MBT中,信息檢索變得較為高效,在信息檢索的基礎上加上針對不同場景的條件約束,將會大幅提高代碼定位的查準率和查全率。
因為機器學習的文本定位方法,進行優化后的準確率可能也并不能達到自動化定位的預期效果,所以,有研究者希望通過機器學習的方法進一步提高定位的查全率和查準率。目前,針對體系結構策略的機器學習的定位方法主要是基于文本分類的方法。MehdiMirakhorli與Jane Cleland-Huang基于文本分類的方法,完成了Archie-Smart-IDE,可基于文本來定位和追蹤代碼中實現體系結構策略的所有代碼。Archie-Smart-IDE工具對系統中各種體系結構策略的識別的準確率較高,但工具的缺陷在于對體系結構策略的識別是完全基于整個代碼文件對應的文本,并不關心代碼的其他信息,也并不關心定位的粒度,即無論定位到的代碼是類、對象、方法、變量、注釋等,只要該代碼體的文本與體系結構策略的實現有關,工具就會定位出這些代碼元素。
發明內容
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京航空航天大學,未經北京航空航天大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.17sss.com.cn/pat/books/202110235012.2/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:空調控制方法、系統、空調和可讀存儲介質
- 下一篇:空調控制方法、系統和空調





