> -- Валерий Лаптев писал(а):
> Да, обычно работающим программерам подобные метрики ни к чему. Но это же интереснейшая научная работа!Снпачала, как тут было в одной теме, набираем факты: считаем метрики и связываем этот набор чисел с нечеткими значениями какого-нить показателя внутреннего качества. Например, модифицируемость. Поскольку экспертов несколько, и наборы метрик считать на многих проектах - собирается более-менее объективная статистика. А потом уже можно забацать систему - и пусть она оценивает, например, курсовой проект или дипломный.  А то и тестовое задание при приеме в фирму...

При обучении системы уровень сигнала будет неразличим на уровне шума. Ведь особенности конкретной задачи и личный стиль программиста гораздо существеннее сказываются на значениях метрик, чем качество программирования. Соответственно, выданные системой оценки будут абсолютно случайными. Shit in - shit out. Более того, соответствие программной архитектуры задаче, наличие проблемных мест в алгоритме, правильность выбора структур данных, полнота выявления возможных исключительных ситуаций, степень оптимизации по памяти и по времени - всё это не оценить автоматически рассчитываемыми метриками. Вывод: метрики бесполезны, а автоматизация оценки применима только к совершенно одинаковым задачам - при том, что оцениваются только конечные результаты (память, время) и прохождение множества тщательно сконструированных тестов.