Факторы качества

Качество исходного кода

Вопрос 11

Покрытие кода

Покрытие кода, по своей сути, является тестированием методом белого ящика. Тестируемое ПО собирается со специальными настройками или библиотеками и/или запускается в особом окружении, в результате чего для каждой используемой (выполняемой) функции программы определяется местонахождение этой функции в исходном коде. Этот процесс позволяет разработчикам и специалистам по обеспечению качества определить части системы, которые, при нормальной работе, используются очень редко или никогда не используются (такие как код обработки ошибок и т.п.). Это позволяет сориентировать тестировщиков на тестирование наиболее важных режимов.

Тестировщики могут использовать результаты теста покрытия кода для разработки тестов или тестовых данных, которые расширят покрытие кода на важные функции.

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

Качество кода может определяться различными критериями. Некоторые из них имеют значение только с точки зрения человека. Например, то, как отформатирован текст программы, совершенно не важно для компьютера, но может иметь серьёзное значение для последующего сопровождения. Многие из имеющихся стандартов оформления кода, определяющих специфичные для используемого языка соглашения и задающие ряд правил, улучшающих читаемость кода, имеют своей целью облегчить будущее сопровождение ПО, включающее отладку и обновление. Существуют и другие критерии, определяющие, «хорошо» ли написан код, например, такие, как структурированность — степень логического разбиения кода на ряд управляемых блоков.

1. Читаемость кода

2. Лёгкость поддержки, тестирования, отладки, исправления ошибок, изменения и портируемости

3. Низкая сложность кода

4. Низкое использование ресурсов: памяти и процессорного времени

5. Корректная обработка исключительных ситуаций

6. Малое число предупреждений при компиляции и линковке

7. Методы улучшения качества кода: рефакторинг.

Фактор качества ПО — это нефункциональное требование к программе, которое обычно не описывается в договоре с заказчиком, но, тем не менее, является желательным требованием, повышающим качество программы.

Некоторые из факторов качества:

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

· Полнота. Все необходимые части программы должны быть представлены и полностью реализованы.

· Краткость. Отсутствие лишней, дублирующейся информации. Повторяющиеся части кода должны быть преобразованы в вызов общей процедуры. То же касается и документации.

· Портируемость. Лёгкость в адаптации программы к другому окружению: другой архитектуре, платформе, операционной системе или её версии.

· Согласованность. По всей программе и в документации должны использоваться одни и те же соглашения, форматы и обозначения.

· Сопровождаемость. Насколько сложно изменить программу для удовлетворения новых требований. Это требование также указывает, что программа должна быть хорошо документирована, не слишком запутана, и иметь резерв роста по использованию ресурсов (память, процессор).

· Тестируемость. Позволяет ли программа выполнить проверку приёмочных характеристик, поддерживается ли возможность измерения производительности.

· Удобство использования. Простота и удобство использования программы. Это требование относится прежде всего к интерфейсу пользователя.

· Надёжность. отсутствие отказов и сбоев в работе программ, а также простота исправления дефектов и ошибок:

· Структурированность

· Эффективность. Насколько рационально программа относится к ресурсам (память, процессор) при выполнении своих задач.

· Безопасность.