
- •Санкт-петербургский государственный ордена трудового красного знамени институт точной механики и оптики (технический университет)
- •Б.С.Падун Конспект лекций по дисциплине "Качество и тестирование программного обеспечения"
- •Глава 6. Основные требования, предъявляемые к программному
- •Введение
- •Раздел 1. Основные понятия и определения
- •1.1. Два класса систем
- •1.2. Классификация проблем проектирования сложных программных систем
- •1.3. Задачи функциональные, структурного построения, технологии разработки и эксплуатации программных систем.
- •1.4. Основные комплексы программных систем
- •1.5. Роль систем программирования, отладки и функционального контроля при проектировании и функционировании программных систем
- •1.6. Основные требования к программным компонентам программных систем
- •Глава 2. Качество программного обеспечения Качество исходного кода
- •Факторы качества
- •С точки зрения пользователя
- •2.1. Анализ эффективности функционирования программных систем
- •2.2. Основные характеристики качества программного обеспечения.
- •2.3. Показатели качества этапа проектирования программных систем
- •2.4. Показатели качества этапа эксплуатации программных систем
- •Вычислительная сложность
- •2.5. Показатели качества этапа сопровождения программных систем
- •Глава 5. Разработка и внедрение пакетов прикладных программ
- •5.1. Стадия исследования и обоснования создания сапр
- •5.2. Стадия технического задания
- •5.3. Стадия эскизного проекта
- •5.4. Стадия технического проекта
- •5.5. Стадия рабочего проекта
- •5.6. Стадия изготовления несерийных компонент
- •5.7. Стадия введения в действие комплекса средств автоматизации проектирования
- •5.8. Стадия сопровождение программных систем
Глава 2. Качество программного обеспечения Качество исходного кода
Качество кода может определяться различными критериями. Некоторые из них имеют значение только с точки зрения человека. Например, то, как отформатирован текст программы, совершенно не важно для компьютера, но может иметь серьёзное значение для последующего сопровождения. Многие из имеющихся стандартов оформления кода, определяющих специфичные для используемого языка соглашения и задающие ряд правил, улучшающих читаемость кода, имеют своей целью облегчить будущее сопровождение ПО, включающее отладку и обновление. Существуют и другие критерии, определяющие, «хорошо» ли написан код, например, такие, как структурированность — степень логического разбиения кода на ряд управляемых блоков:
читаемость кода,
лёгкость поддержки, тестирования, отладки, исправления ошибок, изменения и импортируемость,
низкая сложность кода,
низкое использование ресурсов: памяти и процессорного времени,
корректная обработка исключительных ситуаций,
малое число предупреждений при компиляции и сборке и пограммы,
Методы улучшения качества кода: рефакторинг.
Факторы качества
Фактор качества ПО — это нефункциональное требование к программе, которое обычно не описывается в договоре с заказчиком, но, тем не менее, является желательным требованием, повышающим качество программы.
Некоторые из факторов качества:
понятность. Назначение ПО должно быть понятным, из самой программы и документации;
полнота. Все необходимые части программы должны быть представлены и полностью реализованы;
краткость. Отсутствие лишней, дублирующейся информации. Повторяющиеся части кода должны быть преобразованы в вызов общей процедуры. То же касается и документации;
импортируемость. Лёгкость в адаптации программы к другому окружению: другой архитектуре, платформе, операционной системе или её версии;
согласованность. По всей программе и в документации должны использоваться одни и те же соглашения, форматы и обозначения;
сопровождаемость. Насколько сложно изменить программу для удовлетворения новых требований. Это требование также указывает, что программа должна быть хорошо документирована, не слишком запутана, и иметь резерв роста по использованию ресурсов (память, процессор);
тестируемость. Позволяет ли программа выполнить проверку приёмочных характеристик, поддерживается ли возможность измерения производительности;
удобство использования. Простота и удобство использования программы. Это требование относится прежде всего к интерфейсу пользователя;
надёжность. Отсутствие отказов и сбоев в работе программ, а также простота исправления дефектов и ошибок;
структурированность;
эффективность. Насколько рационально программа относится к ресурсам (память, процессор) при выполнении своих задач;
безопасность.
С точки зрения пользователя
Помимо технического взгляда на качество ПО, существует и оценка качества с позиции пользователя. Для этого аспекта качества иногда используют термин «юзабилити». Довольно сложно получить оценку юзабилити для заданного программного продукта. Наиболее важные вопросов, влияющий на оценку:
является ли пользовательский интерфейс интуитивно понятным?
насколько просто выполнять простые, частые операции?
насколько легко выполняются сложные операции?
выдаёт ли программа понятные сообщения об ошибках?
всегда ли программа ведёт себя так как ожидается?
имеется ли документация и насколько она полна?
является ли интерфейс пользователя само-описательным/само-документирующим?
Всегда ли задержки с ответом программы являются приемлемыми?
Основные требования, предъявляемые к программному продукту со стороны пользователя. Оценка и сравнительный анализ программных систем.
Анализ эффективности функционирования программных систем. Основные характеристики качества программных систем. Показатели качества этапа проектирования программных систем. Показатели качества этапа эксплуатации программных систем. Показатели качества этапа сопровождения программных систем.
Оптимизация программ: оптимизация памяти, выражений, циклов и программ.
Контроль в системах программирования: синтаксический, семантический и программ.