專利名稱:注解插入系統(tǒng)及其方法
注解插入系統(tǒng)及其方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種注解插入系統(tǒng),特別是一種應(yīng)用于對軟件源代碼自動插入注解的系統(tǒng)。
背景技術(shù):
在軟件設(shè)計中,編碼階段和測試階段是軟件開發(fā)生命周期中重要的組成部分,這 兩個階段是軟件從設(shè)想到實現(xiàn)再到最終成品的重要環(huán)節(jié)。程序開發(fā)人員在了解軟件源代碼 的時候,希望通過一些邏輯和程序語言進行識別,但是在較復(fù)雜的軟件中不易檢查源代碼 中的函數(shù)正確性。 編碼是智能高密集的行為過程,由于程序開發(fā)工程師的習(xí)慣不同,開發(fā)時間緊迫, 開發(fā)出來的源代碼常常存在缺少注釋的情況。在軟件測試中分兩部分1、驗證,即證實源代 碼按照要求格式編寫,其中源代碼注釋也是需要驗證的重要環(huán)節(jié);2、確認(rèn),即證實源代碼已 實現(xiàn)了需求定義。另外,在軟件使用過程中,由于一些原因,可能要對軟件進行升級或管理 維護,但是對于非開發(fā)人員來說,沒有注釋的源程序的閱讀和管理維護都是非常不方便的。
發(fā)明內(nèi)容
本發(fā)明目的在于提供一種注解插入系統(tǒng),特別是一種應(yīng)用于對軟件源代碼自動插 入注解的系統(tǒng)。
本發(fā)明提供一種注解插入系統(tǒng),該系統(tǒng)包括 —查找模塊,其用于查找源代碼中的函數(shù),該查找模塊包括一數(shù)據(jù)庫,其用于存 儲與源代碼相對應(yīng)的函數(shù)及相關(guān)信息;一比對單元,其用于將查找模塊查找出的函數(shù)與數(shù) 據(jù)庫中函數(shù)相比對,并提取比對到的相對應(yīng)函數(shù)相關(guān)信息;一存儲單元,其用于存儲上述比 對單元提取出的函數(shù)相關(guān)信息; —插入模塊,其用于將存儲于存儲單元上的函數(shù)相關(guān)信息插入源代碼,該插入模
塊上設(shè)有一整理單元,其用于將存儲于存儲單元上函數(shù)相關(guān)信息進行整理成注解。 特別的是,所述源代碼為一定標(biāo)準(zhǔn)格式的代碼,該源代碼為通過語法、參數(shù)、功能
檢查后并按照一定順序編排的代碼。 特別的是,所述查找模塊根據(jù)源代碼編寫的語法、函數(shù)的定義及實現(xiàn)原理確定源 代碼中的函數(shù)。 特別的是,所述數(shù)據(jù)庫內(nèi)函數(shù)與源代碼內(nèi)函數(shù)編排方式相一致。 特別的是,所述查找模塊在函數(shù)數(shù)據(jù)庫內(nèi)提取的相關(guān)信息包括函數(shù)名稱、作用、
參數(shù)信息、返回值。 特別的是,所述整理單元將該函數(shù)相關(guān)信息依函數(shù)名稱、作用、參數(shù)信息、返回值 四者順序排列并整理成注解。 本發(fā)明還提出一種用注解插入系統(tǒng)的方法,該方法包括下列步驟
(1)查找模塊查找源代碼中的函數(shù);
(2)比對單元將查找到的函數(shù)與數(shù)據(jù)庫中函數(shù)進行比對; (3)比對單元提取比對得到的函數(shù)的相關(guān)信息并存儲至存儲單元; (4)整理單元將提取出的函數(shù)相關(guān)信息整理成注解; (5)插入模塊將注解插入源代碼; (6)判斷查找是否結(jié)束,如判斷結(jié)果為"是",則結(jié)束,如判斷結(jié)果為"否",則返回步 驟(1)繼續(xù)進行查找。 與現(xiàn)有技術(shù)相比較,本發(fā)明通過一查找模塊查找軟件源代碼中函數(shù),查找該函數(shù) 相對應(yīng)的信息,并通過一插入模塊將查找的信息整理成注解插入源代碼中,實現(xiàn)測試需求 與源代碼統(tǒng)一,完善源代碼驗證測試工作,為后續(xù)確認(rèn)工作做準(zhǔn)備。
圖1為本發(fā)明注解插入系統(tǒng)結(jié)構(gòu)示意圖。
圖2為本發(fā)明注解插入系統(tǒng)的方法流程圖。
具體實施方式
參圖1所示,為本發(fā)明注解插入系統(tǒng)結(jié)構(gòu)示意圖。 本發(fā)明提供一種注解插入系統(tǒng),適用于對軟件源代碼自動插入注解的系統(tǒng),于本 實施例,所述源代碼為一定標(biāo)準(zhǔn)格式的代碼,該源代碼為通過語法、參數(shù)、定義、功能檢查后 美化并按照一定順序編排的代碼,該注解插入系統(tǒng)包括 —查找模塊l,其用于查找源代碼中的函數(shù),該查找模塊1根據(jù)源代碼編寫的語 法、函數(shù)的定義及實現(xiàn)原理查找源代碼中的函數(shù),于本實施例,該查找模塊1查找函數(shù)的方 法為正則表達式識別法;該查找模塊l還包括一數(shù)據(jù)庫ll,其用于存儲與源代碼相對應(yīng)的 函數(shù)及相關(guān)信息,于本實施例,該數(shù)據(jù)庫11中函數(shù)與源代碼中函數(shù)編排方式相一致;一比 對單元12,其用于將查找模塊1查找出的函數(shù)與數(shù)據(jù)庫11中函數(shù)相比對,并提取比對的數(shù) 據(jù)庫11中函數(shù)的相關(guān)信息,于本實施例,提取的該函數(shù)相關(guān)信息包括函數(shù)名稱、作用、參 數(shù)信息、返回值;一存儲單元13,其用于存儲上述比對單元12提取出的函數(shù)相關(guān)信息;
—插入模塊2,其用于將存儲于存儲單元13上的函數(shù)相關(guān)信息插入至源代碼,該 插入模塊2上設(shè)有一整理單元21 ,其用于將存儲于存儲單元13上函數(shù)相關(guān)信息進行整理成 注解,于本實施例,所述整理單元21將該函數(shù)相關(guān)信息依函數(shù)名稱、作用、參數(shù)信息、返回 值的順序進行整理成注解形式。 參圖2所示,為本發(fā)明注解插入系統(tǒng)的方法流程圖。本發(fā)明還提供一種注解插入 系統(tǒng)的方法,該方法包括下列步驟 步驟100 :啟動該系統(tǒng),上述查找模塊1對源代碼順序查找該源代碼中的函數(shù),于 本實施例,所述查找模塊1通過正則表達式識別法方法識別函數(shù),并確定函數(shù)的起始、結(jié)束 位置; 步驟101 :所述查找模塊1上比對單元1 2將該查找到的函數(shù)與查找模塊1上數(shù) 據(jù)庫11中函數(shù)進行比對,于本實施例,該比對單元12在源代碼的函數(shù)中提取關(guān)鍵詞,該關(guān) 鍵詞包括函數(shù)名稱、參數(shù)信息、返回值,該比對單元12將提取出的關(guān)鍵詞與數(shù)據(jù)庫11中函 數(shù)相比對,搜索出與源代碼中函數(shù)相對應(yīng)的函數(shù)及函數(shù)相關(guān)信息;
步驟102 :比對單元12提取比對得到相對應(yīng)的函數(shù)的相關(guān)信息,并存儲至上述存 儲單元13上,于本實施例,該函數(shù)相關(guān)信息包括函數(shù)名稱、作用、參數(shù)信息、返回值;
步驟103 :所述插入模塊2上整理單元21將提取出的函數(shù)相關(guān)信息整理成注解, 于本實施例,該整理單元21將該函數(shù)相關(guān)信息依函數(shù)名稱、作用、參數(shù)信息、返回值的順序 進行整理成注解; 步驟104 :所述插入模塊2將整理后的注解插入至源代碼,于本實施例,該插入模 塊2將整理的注解插入源代碼中函數(shù)起始位置。 步驟105 :查找模塊判斷查找是否結(jié)束,如判斷結(jié)果為"是",則結(jié)束,如判斷結(jié)果 為"否"則返回步驟100繼續(xù)進行查找。
權(quán)利要求
一種注解插入系統(tǒng),適用于對軟件源代碼自動插入注解的系統(tǒng),其特征在于,該注解插入系統(tǒng)包括一查找模塊,其用于查找源代碼中的函數(shù),該查找模塊包括一數(shù)據(jù)庫,其存儲與源代碼相對應(yīng)的函數(shù)及相關(guān)信息;一比對單元,其用于將查找模塊查找出的函數(shù)與數(shù)據(jù)庫中函數(shù)相比對,并提取查找模塊比對到的相對應(yīng)函數(shù)的相關(guān)信息;一存儲單元,其用于存儲上述比對單元提取出的函數(shù)相關(guān)信息;一插入模塊,其用于將存儲于存儲單元上的函數(shù)的相關(guān)信息插入源代碼,該插入模塊上設(shè)有一整理單元,其用于將存儲于存儲單元上函數(shù)相關(guān)信息進行整理成注解形式。
2. 如權(quán)利要求1所述的注解插入系統(tǒng),其特征在于所述源代碼為一定標(biāo)準(zhǔn)格式的代 碼,該源代碼為通過語法、參數(shù)、功能檢查后美化并按照一定順序編排的代碼。
3. 如權(quán)利要求1所述的注解插入系統(tǒng),其特征在于所述查找模塊根據(jù)源代碼編寫的 語法、函數(shù)的定義及實現(xiàn)原理確定源代碼中的函數(shù)。
4. 如權(quán)利要求3所述的注解插入系統(tǒng),其特征在于所述查找模塊查找函數(shù)的方法為 正則表達式識別法。
5. 如權(quán)利要求2所述的注解插入系統(tǒng),其特征在于所述數(shù)據(jù)庫內(nèi)函數(shù)與源代碼內(nèi)函 數(shù)編排方式相一致。
6. 如權(quán)利要求5所述的注解插入系統(tǒng),其特征在于所述查找模塊在函數(shù)數(shù)據(jù)庫內(nèi)提 取的相關(guān)信息包括函數(shù)名稱、作用、參數(shù)信息、返回值。
7. 如權(quán)利要求1所述的注解插入系統(tǒng),其特征在于所述整理單元將該函數(shù)相關(guān)信息 依函數(shù)名稱、作用、參數(shù)信息、返回值的順序整理成注解。
8. —種注解插入系統(tǒng)的方法,其特征在于,該方法包括下列步驟(1) 查找模塊查找源代碼中的函數(shù);(2) 比對單元將查找到的函數(shù)與數(shù)據(jù)庫中函數(shù)進行比對;(3) 比對單元提取比對得到的函數(shù)的相關(guān)信息并存儲至存儲單元;(4) 整理單元將提取出的函數(shù)相關(guān)信息整理成注解;(5) 插入模塊將注解插入源代碼;(6) 判斷查找是否結(jié)束,如判斷結(jié)果為"是",則結(jié)束,如判斷結(jié)果為"否",則返回步驟 (1)繼續(xù)進行查找。
全文摘要
本發(fā)明提供一種注解插入系統(tǒng),該系統(tǒng)包括一查找模塊,其用于查找軟件源代碼中的函數(shù),該查找模塊包括一數(shù)據(jù)庫,其用于存儲與源代碼相對應(yīng)的函數(shù)及相關(guān)信息;一比對單元,其用于將查找模塊查找出的函數(shù)與數(shù)據(jù)庫中函數(shù)相比對,并提取查找模塊在數(shù)據(jù)庫中查找到的函數(shù)的相關(guān)信息;一存儲單元,其用于存儲上述比對單元提取出的函數(shù)的相關(guān)信息;一插入模塊,其用于將上述查找模塊查找到的函數(shù)相關(guān)信息整理成注解并插入至源代碼,該插入模塊上設(shè)有一整理單元,其用于將存儲于存儲單元上的函數(shù)相關(guān)信息進行整理成注解。本發(fā)明對源代碼進行自動插入注解,實現(xiàn)測試需求與源代碼統(tǒng)一,完善源代碼驗證測試工作,為后續(xù)確認(rèn)工作做準(zhǔn)備。
文檔編號G06F9/44GK101739243SQ20081014760
公開日2010年6月16日 申請日期2008年11月19日 優(yōu)先權(quán)日2008年11月19日
發(fā)明者張嘉怡, 楊柳, 齊武 申請人:成都宇達電通有限公司