[發明專利]一種基于抽象模型的有限狀態機分析方法和系統在審
| 申請號: | 202011489589.8 | 申請日: | 2020-12-16 |
| 公開(公告)號: | CN112527419A | 公開(公告)日: | 2021-03-19 |
| 發明(設計)人: | 李隆;賴建新;朱慶;李世杰 | 申請(專利權)人: | XC5香港有限公司;鑒釋科技(深圳)有限公司 |
| 主分類號: | G06F9/448 | 分類號: | G06F9/448 |
| 代理公司: | 深圳市中智立信知識產權代理有限公司 44427 | 代理人: | 丁麗琴 |
| 地址: | 中國香港灣仔*** | 國省代碼: | 香港;81 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 抽象 模型 有限狀態機 分析 方法 系統 | ||
1.一種基于抽象模型的有限狀態機分析方法,其特征在于,所述分析方法包括:
S1:使用編譯技術,將根據用戶描述構建的有限狀態機模型轉換為系統可識別的表示形式,其中,該表現形式包括多個軟件單元;
S2:使用編譯技術,從該表示形式的調用關系圖上自底向上訪問所有軟件單元,在單一軟件單元內部識別有限狀態機模型相關的轉換語句,并建立單一轉換語句的后繼訪問列表;
S3:遍歷所有的軟件單元,當識別出有限狀態機模型的初始轉換語句后,根據該轉換語句的后繼訪問列表,在軟件內部按照有限狀態機轉換語句的先后關聯關系遍歷軟件單元,并依據有限狀態機狀態轉換識別錯誤并報錯。
2.根據權利要求1所述的有限狀態機分析方法,其特征在于,所述S2具體包括:
S21:判斷當前軟件單元是否還存在未訪問的語句;
S22:若存在未訪問的語句,則判斷當前語句是否為有限狀態機模型的狀態轉換關聯語句;
S23:若當前語句是有限狀態機模型的狀態轉換關聯語句,則標記當前語句為有限狀態機模型的狀態轉換關聯語句,將該語句加入到前一條轉換語句的后繼訪問列表,并將當前語句設置為前一條轉換語句。
3.根據權利要求2所述的有限狀態機分析方法,其特征在于,所述S2還包括:
S24:若當前語句不是有限狀態機模型的狀態轉換關聯語句,則判斷當前語句是否為函數調用語句;
S25:若是函數調用語句,則判斷被調用函數是否包含有限狀態機模型的轉換語句;
S26:若包含有限狀態機模型的轉換語句,則標記當前語句為有限狀態機模型的函數調用關聯語句,將該語句加入到前一條轉換語句的后繼訪問列表,并將當前語句設置為前一條轉換語句。
4.根據權利要求3所述的有限狀態機分析方法,其特征在于,所述S3包括:
S31:判斷當前軟件單元是否包含有限狀態機模型的初始轉換語句;
S32:若是,則根據該語句對應的后繼訪問列表跳轉至下一跳關聯語句,并將下一跳關聯語句標記為當前語句;
S33:判斷當前語句是否為函數調用語句;
S34:若為函數調用語句,則判斷被調用函數是否包含有限狀態機模型的轉換語句;
S35:若包含,則切換至被調用函數,并根據相應的后繼訪問列表跳轉至下一跳關聯語句,并將下一跳關聯語句標記為當前語句,如此循環判斷。
S36:若不為函數調用語句或被調用函數不包含有限狀態機模型的轉換語句,則基于有限狀態機模型的當前狀態和當前轉換語句進行狀態轉換。
5.根據權利要求4所述的有限狀態機分析方法,其特征在于,所述S36之后還包括:
S37:判斷當前有限狀態機模型的狀態是否為標識的錯誤;
S38:若是,則報告出錯。
6.根據權利要求5所述的有限狀態機分析方法,其特征在于,所述S37之后還包括:
S39:若否,則判斷當前轉換語句的后繼訪問列表是否為空,若不為空則返回執行S32;
S40:若是,則判斷是否存在上一條轉換語句;
S41:若是,則回退至上一條轉換語句,并回退有限狀態機模型的狀態,查找該語句的后繼訪問列表中未訪問的語句。
7.根據權利要求6所述的有限狀態機分析方法,其特征在于,所述S41之后還包括:
S42:判斷在該語句的后繼訪問列表中是否存在未訪問的轉換語句,若否,則返回執行S40。
8.根據權利要求5所述的有限狀態機分析方法,其特征在于,所述S40之后還包括:
S43:若否,則判斷當前語句是否有調用者;
S44:若當前語句有調用者,則切換至調用者的調用語句,并返回S42;
若當前語句沒有調用者,則返回S31。
9.根據權利要求4所述的有限狀態機分析方法,其特征在于,所述S31之后還包括:
S45:若否,則判斷是否還存在未訪問的軟件單元,若存在,則返回S31;若不存在,則結束。
10.一種基于抽象模型的有限狀態機分析系統,其特征在于,所述有限狀態機分析系統包括:構建模塊、轉換識別模塊和分析模塊;
所述構建模塊用于使用編譯技術,將根據用戶描述構建的有限狀態機模型轉換為系統可識別的表示形式,其中,該表現形式包括多個軟件單元;
所述轉換識別模塊用于使用編譯技術,從該表示形式的調用關系圖上自底向上訪問所有軟件單元,在單一軟件單元內部識別有限狀態機模型相關的轉換語句,并建立單一轉換語句的后繼訪問列表;
所述分析模塊用于遍歷所有的軟件單元,當識別出有限狀態機模型的初始轉換語句后,根據該轉換語句的后繼訪問列表,在軟件內部按照有限狀態機轉換語句的先后關聯關系遍歷軟件單元,并依據有限狀態機狀態轉換識別錯誤并報錯。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于XC5香港有限公司;鑒釋科技(深圳)有限公司,未經XC5香港有限公司;鑒釋科技(深圳)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.17sss.com.cn/pat/books/202011489589.8/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:大型壓載模塊對接裝置
- 下一篇:測試用例準備方法、裝置、計算機設備和存儲介質





