2012-07-01 80 views
4

有人可以推薦一種分析,改進,查找「死代碼」的工具,爲VMS/VAX OS和RDB數據庫上COBOL語言的源代碼提供統計信息等?VMS/VAX平臺上的COBOL源代碼分析工具

謝謝。

+0

我認爲這可能會更好問這個問題http://serverfault.com –

+1

這不是一個服務器的問題。 –

+0

@IraBaxter但是它的一個問題可能會更好地由專業IT人員回答 - 那種在該網站上閒逛並知道COBOL開發和VMS等的人 –

回答

1

有些編譯器可以選擇定位死代碼,所以你可能已經有了你想要的工具。請記住,會出現代碼已死且無法通過靜態源代碼分析進行分析的情況。

if a = 1 
    move 'error' to out-message 
end-if 

如果a永遠不會是1,那麼這是死代碼。靜態源代碼分析可能找不到更復雜的此場景實例,特別是如果a的值來自正在分析的程序之外 - 可能是數據庫。

A 粗略掃描靜態源代碼分析工具listed在維基百科顯示商業產品是pricy(千歐元)。開源工具似乎沒有提供太多的COBOL覆蓋。你可能想要自己檢查一下,因爲我承認我沒有做一個徹底的評估,而是隻是掃描他們的文檔。

COBOL是一種難以解析的語言。

+0

幾乎所有的語言都很難分析,因爲它們往往有很多內容和有趣的規則隨時間發生,並通過編譯器或委員會僵化到位。這不是問題;通過良好的解析機制和大量的實證測試,您可以獲得優秀的解析器[我們擁有良好的COBOL解析器]。作爲工具供應商,我們必須證明構建工具的工程成本與預期收益之間的正確性。對於任何不是主流的東西,沒有人能夠負擔得起廉價的工具;這是由經理和程序員不想爲他們支付的問題加劇的。 –

1

我從來沒有使用過它,但DecSet套件產品包含一款名爲PCA - Performance and Coverage Analyzer的產品。這可能是你正在尋找的。

+0

PCA是性能分析器,它不能給我們指示源代碼的效率,我找不到一個方法來改進它的源代碼。它可以,例如, ,表明我們是否使用「太多」的數據庫調用,所以它不是我們正在尋找的。 –