[發明專利]一種軟件演化中的系統功能行為一致性分析方法及系統有效
| 申請號: | 201710966545.1 | 申請日: | 2017-10-17 |
| 公開(公告)號: | CN107797814B | 公開(公告)日: | 2021-03-26 |
| 發明(設計)人: | 鄭交交;秦江龍;李彤;林英;謝仲文;莫啟;王曉芳;成蕾;劉妙;楊真諦;鄭明;李響 | 申請(專利權)人: | 云南大學 |
| 主分類號: | G06F8/65 | 分類號: | G06F8/65;G06F8/71;G06F9/448 |
| 代理公司: | 昆明金科智誠知識產權代理事務所(普通合伙) 53216 | 代理人: | 胡亞蘭 |
| 地址: | 650091 云*** | 國省代碼: | 云南;53 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 軟件 演化 中的 系統 功能 行為 一致性 分析 方法 | ||
本發明屬于軟件演化技術領域,公開了一種軟件演化中的系統功能行為一致性分析方法及系統,采用Petri?net來對待演化軟件系統進行形式化建模,之后將相應的系統Petri網模型轉化為狀態遷移圖(Petri?net可達圖),其中的每一個狀態就是相應的系統行為狀態,然后基于狀態遷移圖來進行系統演化一致性分析,因此該方法是從系統行為層而不是構件行為層出發去分析演化前后是否保證了一致性。本發明與直接分析系統的Petri?net模型相比,更加簡單而且易于理解;可以讓系統在運行時刻以盡可能小的代價進行軟件的動態配置和更新。
技術領域
本發明屬于軟件演化技術領域,尤其涉及一種軟件演化中的系統功能行為一致性分析方法及系統。
背景技術
構造性和演化性是軟件的兩個基本特性。在如今這個科學技術飛速發展的時代,本發明的計算機軟件也發生著重大變化,日新月異。隨著用戶需求、運行環境等因素的不斷變化,軟件系統在運行中需要做出相應的改變以適應新的需求和環境,這就表示本發明的軟件需要不斷地進行演化來達到新的要求繼而可以繼續被使用。軟件演化被分為靜態演化和動態演化:靜態演化是指整個軟件系統停止運行,然后對其進行演化,演化完成后再重新啟用系統,目前已有相對完整的方案和可行技術,但是這種方式在現在這種多變的環境中,所需的資源和時間成本太高,所以現如今主要關注軟件動態演化;動態演化的目標在于可以讓系統在運行時刻以盡可能小的代價進行軟件的動態配置和更新,即系統中不受動態演化實施影響的部分仍可以繼續提供服務,而受影響的部分則須暫停服務而無法正常工作。
目前,實施軟件動態演化依然面臨著挑戰。演化必須保證實施動態演化前后的系統一致性,只有保證了演化前后系統的一致性,演化后的系統才可以替代演化前的系統。系統一致性主要涉及到系統的狀態遷移問題,主要包括內部一致性和外部一致性:內部一致性是指構件在演化前后的內部狀態是否保持了一致,是否可以繼續運行完成相應的任務;外部一致性是指在演化前后的系統中演化構件與其他構件之間的交互保持一致。
構件系統由不同的構件組成的,遵循高內聚低耦合的原則,各個構件之間通過交互來實現互連互通,使整個系統可以正常運作,完成相應事務。系統行為不受約束的改變可能導致系統出錯,因此在演化時引入某些約束條件對于系統正確運行有著很重要的意義。在這里,本發明把通過保留系統行為的特征來保證系統運行正確性的約束條件稱為一致性約束規則。本發明針對整個系統功能不變的情況,通過描述構件的功能行為和構件間的交互行為,這兩者一起構成了相應的系統行為,并在系統行為層面而不是在構件行為層面進行一致性判定,來保證系統的功能行為的延續。當演化后系統的功能行為是延續了原系統功能行為的情況下,系統行為執行的正確性就可以得到保證。這樣,不需要對替換的構件行為進行嚴格的行為約束,又保證了運行時的系統行為不會因此偏離原來的系統而產生錯誤。
目前,對軟件演化和交互行為的分析有許多,如文獻和通過在新構件和原來的構件間建立相容性和替換性,通過局部構件行為的一致性來實現全局的系統行為的一致性,保證原來系統環境下對新構件使用不會導致系統行為出錯。而文獻和文獻都是通過找出演化前后的理論模型之間的不一致,然后去對這些不一致進行分析修改,使得最終的演化結果保持一致性。不同的是文獻是分析行為概要文件來找到不一致,再通過改變傳播模型來使得最終的演化滿足一致性,并且用Petri網建模驗證了這一想法,文獻是在云領域通過龐大的基數集和經驗找出功能模型的不一致,然后去對這些不一致進行修改而達到最終的一致,并且介紹了一個支持自動根據現成的數據集進行不一致性檢測并提出解決方案的工具。這類方法的實現有一定難度,并且對相關技術和硬件條件的要求相對較高。文獻提出一個基于非功能特征的軟件動態演化框架,但演化的準確性和有效性有待提高。
綜上所述,現有技術存在的問題是:現在軟件演化在多變的環境中,所需的資源和時間成本高;現有軟件系統演化前后行為狀態不滿足一致性,導致演化后的系統偏離既定的功能目標,引發不可知的問題發生;
通過分析新構件和原構件的關系來保持一致性的方法缺乏全局考慮,沒有考慮一些其他因素,比如接口,結構等,沒有從系統角度出發去分析一致性問題;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于云南大學,未經云南大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710966545.1/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種軟件敏捷開發方法及系統
- 下一篇:車載設備的升級方法、車載設備和升級設備





