[發(fā)明專利]一種程序代碼復查方法及引擎有效
| 申請?zhí)枺?/td> | 201610166031.3 | 申請日: | 2016-03-22 |
| 公開(公告)號: | CN105786710B | 公開(公告)日: | 2018-10-16 |
| 發(fā)明(設計)人: | 陳豪;楊曉輝;王安定;郭鑄;楊煜光;周小平;吳紹杰 | 申請(專利權)人: | 中國銀行股份有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 王學強 |
| 地址: | 100818 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 程序代碼 復查 方法 引擎 | ||
本發(fā)明公開一種程序代碼復查方法及引擎,所述方法包括:讀取任一待復查程序代碼;根據(jù)所述待復查程序代碼的語法規(guī)則,識別所述待復查程序代碼中的詞組后,為所述待復查程序代碼構建語法樹;遍歷所述語法樹,根據(jù)預設的復查規(guī)則,對所述待復查程序代碼進行復查。與現(xiàn)有技術相比,本發(fā)明通過為待復查程序構建語法樹,對語法樹進行復查規(guī)則的匹配,實現(xiàn)程序代碼的自動化復查,在保證復查準確性的同時,節(jié)約了企業(yè)成本。
技術領域
本發(fā)明涉及數(shù)據(jù)處理領域,具體涉及一種程序代碼復查方法及引擎。
背景技術
程序代碼復查是指對程序開發(fā)人員開發(fā)出的程序代碼的正確性的檢查,旨在發(fā)現(xiàn)程序代碼中可能存在的程序缺陷。
目前,業(yè)內對程序代碼復查的技術還不成熟,通常為復查人員根據(jù)代碼復查文檔進行人工復查。由于對復查人員有專業(yè)要求,導致企業(yè)成本較大。另外,人工復查的方式使得復查結果的準確性得不到保證。所以,當前亟需一種準確高效的程序代碼復查方式,能夠有效代替?zhèn)鹘y(tǒng)的人工復查。
發(fā)明內容
為解決上述問題,本發(fā)明提供了一種程序代碼復查方法及引擎。
本發(fā)明提供了一種程序代碼復查方法,所述方法包括:
讀取任一待復查程序代碼;
根據(jù)所述待復查程序代碼的語法規(guī)則,識別所述待復查程序代碼中的詞組后,為所述待復查程序代碼構建語法樹;
遍歷所述語法樹,根據(jù)預設的復查規(guī)則,對所述待復查程序代碼進行復查。
優(yōu)選地,所述遍歷所述語法樹,根據(jù)預設的復查規(guī)則,對所述待復查程序代碼進行復查,包括:
遍歷所述語法樹,查詢并定位復查規(guī)則中包括的目標語句;
判斷所述目標語句是否符合所述復查規(guī)則。
優(yōu)選地,所述判斷所述目標語句是否符合所述復查規(guī)則,包括:
利用所述復查規(guī)則對應的復查子程序,對所述目標語句進行復查。
優(yōu)選地,所述方法還包括:
輸出所述待復查程序代碼在復查過程中的執(zhí)行狀態(tài)。
優(yōu)選地,所述待復查程序代碼包括PL\SQL程序代碼。
本發(fā)明還提供了一種程序代碼復查引擎,所述引擎包括:
讀取模塊,用于讀取任一待復查程序代碼;
識別模塊,用于根據(jù)所述待復查程序代碼的語法規(guī)則,識別所述待復查程序代碼中的詞組;
構建模塊,用于為所述待復查程序代碼構建語法樹;
復查模塊,用于遍歷所述語法樹,根據(jù)預設的復查規(guī)則,對所述待復查程序代碼進行復查。
優(yōu)選地,所述復查模塊包括:
查詢定位子模塊,用于遍歷所述語法樹,查詢并定位復查規(guī)則中包括的目標語句;
判斷子模塊,用于判斷所述目標語句是否符合所述復查規(guī)則。
優(yōu)選地,所述判斷子模塊具體用于:
利用所述復查規(guī)則對應的復查子程序,對所述目標語句進行復查。
優(yōu)選地,所述引擎還包括:
輸出模塊,用于輸出所述待復查程序代碼在復查過程中的執(zhí)行狀態(tài)。
優(yōu)選地,所述引擎用于對PL\SQL程序代碼復查。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國銀行股份有限公司,未經中國銀行股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610166031.3/2.html,轉載請聲明來源鉆瓜專利網。





