Индикатор дефекта программного обеспечения
Индикатор дефекта программного обеспечения — это шаблон, который можно найти в исходном коде и который тесно связан с дефектом программного обеспечения , ошибкой или упущением в исходном коде компьютерной программы, которая может привести к ее неисправности. При проверке исходного кода компьютерных программ не всегда возможно выявить дефекты напрямую, но часто встречаются закономерности, иногда называемые антишаблонами , указывающие на наличие дефектов.
Некоторые примеры индикаторов дефектов программного обеспечения:
- Отключенный код: код был написан, и программист отключил или выключил его, не указав, почему он был отключен, а также когда и будет ли он снова включен.
- Слишком сложная процедура: программа (метод, модуль, подпрограмма, процедура или любой именованный блок кода) содержит более 10 двоичных терминов в условных операторах. [1]
- Неиспользуемые переменные. Переменные, на которые нет ссылок, являются сильным индикатором других ошибок. [2]
- Количество отдельных коммиттеров: количество уникальных разработчиков, внесших свой вклад в историю коммитов проекта. Это метрика процесса, полезная для выявления дефектов программного обеспечения. [3]
См. также
[ редактировать ]- Цикломатическая сложность
- Антипаттерн
- Компьютерная программа
- Компьютерное программирование
- Поток управления
- Программная инженерия
Ссылки
[ редактировать ]- ^ Уильям Т. Уорд: «Предотвращение дефектов программного обеспечения с использованием метрики сложности Маккейба», Hewlett-Packard Journal , апрель 1989 г., стр. 64-69: Сложность потока управления коррелирует с низкой надежностью и частыми ошибками.
- ^ Дэвид Н. Кард, Виктор Э. Черч и Уильям В. Агрести: «Эмпирическое исследование практик проектирования программного обеспечения», Транзакции IEEE по разработке программного обеспечения , SE-12, вып. 2, февраль 1986, стр. 264–71: 46 процентов программ без неиспользуемых переменных не имели ошибок по сравнению с 17–29 процентами программ с одной или несколькими неиспользуемыми переменными.
- ^ Мадейски, Лех и Мариан Юречко. «Какие показатели процесса могут значительно улучшить модели прогнозирования дефектов? Эмпирическое исследование». Журнал качества программного обеспечения 23.3 (2015): 393–422. Веб.