Качество программного изделия
Все рассмотренные подходы к созданию программной продукции имеют основной целью создание высококачественных программных изделий. Здесь под качеством программного изделия будем понимать его соответствие четко и явно установленным требованиям к функциональным характеристикам, соответствие стандартам, определяющим документирование и проведение разработки, а также другим характеристикам, которые предполагается получить от разработанного изделия.
В приведенном определении существенными являются следующие три момента:
1. Требования к программному изделию — это основа, на которой оценивается и измеряется качество. Нарушение или потеря каких-либо требований приводит к потере качества изделия.
2. Стандарты определяют совокупность требований и критериев разработки, указывающих, каким образом должно разрабатываться изделие. Нарушение этих требований также приводит к снижению качества.
3. Имеется также множество других (иногда и неявных) требований, на которые часто не обращают внимания, и в результате, если они упущены, качество может быть снижено.
Качество в общем случае характеризуется широким набором свойств программного изделия, который зависит от прикладной области и от категории пользователей.
Факторы, влияющие на качество изделия, классифицируются по трем аспектам программного продукта:
• рабочие характеристики;
• приспособленность к внесению изменений;
• приспособленность к изменению окружающей обстановки. К первой группе можно отнести следующие характеристики:
1. Правильность (корректность), характеризующая степень функционального соответствия программного изделия требованиям пользователя.
2. Надежность определяет вероятность того, что программное изделие будет работать без сбоев в течение определенного интервала времени или при выполнении определенного объема работы, т.е. степень уверенности в том, что программа будет выполнять предназначенные функции с требуемой точностью.
3. Эффективность характеризует оперативность выполнения функциональных задач, а также объемы компьютерных ресурсов и объем кода программы, необходимые для выполнения последней своих функций.
4. Удобство и простота использования
программного изделия отражает простоту обучения работе с изделием, простоту подготовки исходных данных и интерпретации выходных сообщений программы. Зачастую удобство и простота определяют, насколько "дружественным" является интерфейс пользователя с ЭВМ. Это свойство программного изделия характеризует:
• физические и интеллектуальные усилия, необходимые для обучения работе с рассматриваемым программным продуктом;
• время, необходимое для того, чтобы использование системы стало эффективным;
• повышение производительности труда при эксплуатации программного изделия пользователем средней квалификации;
• субъективную оценку отношения пользователя к системе.
5. Целостность определяет степень, с которой может быть проконтролирован несанкционированный доступ к данным и программам.
Перечисленные характеристики могут быть дополнены и детализированы- Например, надежность программного изделия оценивается такими дополнительными характеристиками, как восстанав-ливаемость системы после сбоев, готовность к использованию, среднее время между отказами и т.п.
Вторая группа характеристик связана с сопровождением программного изделия. В ней можно выделить следующие основные показатели:
1. Удобство и простота сопровождения в первую очередь оцениваются теми усилиями, которые необходимы для обнаружения и исправления ошибок в программном изделии. Удобство и простота сопровождения предполагает также модифицируемость,
которая означает простоту внесения изменений в изделие при изменении требований пользователя. Это свойство называют также
гибкостью программного изделия.
2. Удобство и простота тестирования
отражает усилия, необходимые для тестирования программы, с целью гарантировать то, что программа выполняет предписанные функции.
Третья группа характеристик — возможности использования программного изделия в новых окружающих условиях, включает:
1. Переносимость (мобильность) характеризует усилия, необходимые для переноса программы с одного технического изделия на другое или перенос ее в другую операционную обстановку.
2. Пригодность к повторному использованию показывает, насколько программное изделие или его часть могут быть использованы в других приложениях.
3. Совместимость определяет возможность взаимодействия с другими программными продуктами.
Одним из основных факторов, влияющих на качество программного изделия и на большинство перечисленных характеристик, является сложность программного изделия- Сложность — главная причина появления ошибок и дефектов в программном изделии и его ненадежности. В первую очередь сложность программного изделия обусловливается сложностью решаемой проблемы и зависит от сложности отдельных компонент программного изделия и связей между ними. Для повышения качества программного изделия стремятся к снижению сложности программного изделия.