2012-07-01 9 views
4

Может ли кто-то рекомендовать инструмент для анализа, улучшения, поиска «мертвого кода», предоставления статистики и т. Д. Для исходного кода на языке COBOL на VMS/VAX OS и базе данных RDB ?Средство анализа исходного кода для COBOL на платформе VMS/VAX

Спасибо.

+0

Я думаю, было бы лучше задать этот вопрос на http://serverfault.com –

+1

Это не вопрос сервера. –

+0

@IraBaxter. Но вопрос, на который, вероятно, лучше ответить профессиональный ИТ-человек - вид человека, который висит на этом сайте и знает разработку COBOL и VMS и т. Д. –

ответ

1

Некоторые компиляторы имеют опции для обнаружения мертвого кода, поэтому у вас уже есть инструменты, которые вы хотите. Пожалуйста, имейте в виду, что будут ситуации, когда код мертв, и вы не можете сказать через статический анализ исходного кода.

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

Если a никогда не может быть 1, то это мертвый код. Статический анализ исходного кода может не найти более сложных экземпляров этого сценария, особенно если значение a происходит вне анализируемой программы - возможно, базы данных.

A cursory сканирование инструментов анализа статического исходного кода listed в Википедии показывает, что коммерческие продукты являются дорогими (в тысячах евро). Инструменты с открытым исходным кодом, как представляется, не обеспечивают значительного охвата COBOL. Возможно, вы захотите проверить их сами, поскольку я признаю, что не сделал тщательной оценки, а просто просмотрел их документацию.

COBOL - сложный язык для разбора.

+0

Практически все языки трудно разбирать, потому что они, как правило, содержат много контента и смешные правила, которые со временем случались и окостенели на месте с помощью компилятора или комитета. Это не проблема; с хорошими синтаксическими машинами и множеством эмпирических тестов, вы можете получить хорошие парсеры [У нас есть хорошие синтаксические анализаторы COBOL]. Как поставщик инструмента, мы должны оправдывать затраты на инженерное строительство инструмента против ожидаемого возврата. Для всего, что не является основным, никто не может позволить себе строить дешевые инструменты; это усугубляется проблемой, которую менеджеры и программисты не хотят платить за них. –

1

Я никогда не использовал его, но набор продуктов DecSet включает продукт под названием PCA - Performance and Coverage Analyzer. Это может быть то, что вы ищете.

+0

PCA - это анализатор производительности, он не может дать нам указания на эффективность исходного кода, и я не смог найти способ улучшить исходный код с ним. Это может быть, например. , укажите, используем ли мы слишком много вызовов БД, так что это не совсем то, что мы ищем. –