[發明專利]可調節對象結構、系統框架及對既有系統轉化的方法無效
| 申請號: | 201310314973.8 | 申請日: | 2013-07-25 |
| 公開(公告)號: | CN103399742A | 公開(公告)日: | 2013-11-20 |
| 發明(設計)人: | 馬駿;陶先平;呂建 | 申請(專利權)人: | 南京大學 |
| 主分類號: | G06F9/44 | 分類號: | G06F9/44 |
| 代理公司: | 江蘇圣典律師事務所 32237 | 代理人: | 賀翔 |
| 地址: | 210008 江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 調節 對象 結構 系統 框架 既有 轉化 方法 | ||
技術領域
本發明涉及計算機軟件系統,具體是以對象式軟件系統為切入點,在現有對象結構基礎上進行調整和擴展,得到一個具有可調節能力的對象結構,從而更好的指導、支持對象式可調節系統的設計和開發:在可調節對象模型基礎上,進一步提出了一套基于代碼植入技術的將既有對象式系統透明轉換為可調節系統的技術。?
背景技術
隨著Internet的廣泛普及、無線通訊技術的迅速發展以及新型計算設備的層出不窮,計算機軟件系統所面臨的計算平臺和環境經歷了一個由早期“封閉、靜態、易控”到現如今“開放、動態、難控”的轉變歷程;為了適應“開放、動態、難控”的計算環境,要求軟件系統能夠感知其運行環境的變化并進一步調節自身的行為,即具備一定的情境感知自適應能力。?
為了能夠依據環境的變化調節軟件的行為,軟件系統自身必須首先是可調節的(adaptable)。國內外研究人員致力于可調節軟件結構的研究,出現了一批可調節軟件結構以及相應的支撐平臺或框架,為上層應用系統的開發、運行等各方面提供統一的、不同程度的支持。?
然而,現如今計算機及各種軟件應用以及普遍的存在各個應用領域,人們的日常工作和生活之中已經存在大量的應用系統。現有的這些框架、平臺確實為從無到有開發一個全新的動態可調節應用提供了一定的支持。但就如何有效的復用這些既有系統,在它們基礎上稍作修改就能添加一定的動態調節功能以滿足新的需求方面,卻沒有較好的解決方案。除此而外,計算環境“開放、動態、難控”的特征使得情境感知應用系統研發人員往往難以(甚至不可能)在設計和開發之初就預測到系統在最終部署、運行時所會遇到的各種情況,這也大大增加自適應系統的設計、開發以及后期維護的難度和開銷。為了降低系統設計、開發的難度,簡化系統后期演化與維護工作,需要能夠在系統運行的過程中,動態的添加、刪除和修改系統的行為。而現有框架也未就此提供有效的解決方案。?
發明內容
本發明所要解決的技術問題是提供一種具有可調節能力的對象結構,從而更好的指導、支持對象式可調節系統的設計和開發:在可調節對象模型基礎上,進一步提出了一套將既有對象式系統透明轉換為可調節系統的方法。通過對既有對象式應用系統進行自動轉換得到一個符合可調節對象模型的系統,新的系統在保持原有系統的功能的前提下,同時具備可調節能力;對于轉換得到的應用系統,通過獨立定義、插入或刪除一系列操作變體手段,可以實現系統行為的增量式開發和運行時刻在線(on-line)調整。
本發明所述的具有可調節能力的對象結構,該對象結構包括數據及與之對應的一系列操作,所述一系列操作中的每個操作還對應一個操作鏈,而每個操作鏈由一系列的操作變體所構成;每個操作變體提供了對應各操作的具體實現;執行某個操作時,系統首先查找操作所對應的操作鏈,然后依次執行操作鏈的各個操作變體。?
此外,本發明還提供了采用可調節對象結構的系統整體框架模型,其包括:?
Adaptable類:Adaptable類維護一個static?屬性chain_templates,用于保存該類每個方法所對應的操作鏈模板;針對chain_templates中的所有操作鏈,Adaptable類分別實現接口I_Adaptable所提供的兩個方法:insert_OV()和remove_OV?(),從而在chain_templates中的某一個操作鏈插入或刪除指定操作變體,此外,Adaptable還維護一個實例屬性ov_chains,該屬性用于記錄每個Adaptable實例對象的方法所對應的操作鏈;
OperationChain類:實現I_OperationChain接口并維護一個名為obj的屬性(),用于記錄可調節對象;OperationChain類還進一步提供了兩個額外的操作setValue()與getValue(),用于獲取或修改obj所指定的可調節對象的某個屬性的值;
一個應用系統對應一個AppMgr類實例,用于統一維護該應用運行時刻所有的可調節對象,而register_AdaptObject()?與unregister_AdaptObject()?方法是提供給可調節對象在創建以及消亡時刻向AppMgr注冊或注銷的:一個AppMgr實例還負責維護對應應用系統所會用到所有操作變體,insertOV()與removeOV()方法則是用于向指定的類的指定操作所對應的操作鏈插入或刪除特定的操作變體。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京大學,未經南京大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310314973.8/2.html,轉載請聲明來源鉆瓜專利網。





