Практические соображения (Practical Considerations)



Далее приведем некоторые практические соображения.

Требования к качеству программного обеспечения (Software Quality Requirements)

Начнем с факторов влияющих на результат.

Факторы влияния (Influence factors)

На планирование, управление и выбор SQM-действий и техник оказывают влияние различные факторы, среди которых:

· Область применения системы, в которой будет работать программное обеспечение (критичное для безопасности людей, критичное для бизнеса и т.п.).

· Системные и программные требования.

· Какие компоненты используются в системе – коммерческие (внешние) или стандартные (внутренние).

· Какие стандарты программной инженерии применимы в заданном контексте.

· Каковы методы и программные инструменты, применяемые для разработки и сопровождения, а также для обеспечения качества и совершенствования (продукта и процессов).

· Бюджет, персонал, организация проектной деятельности, планы и расписания для всех процессов.

· Кто целевые пользователи и каково назначение системы.

· Уровень целостности системы.

 

Информация об этих факторах влияет на то, как именно будут организованы и документированы процессы SQM, какие SQM-работы будут отобраны, какие необходимы ресурсы и каковы ограничения, накладываемые в отношении усилий, направляемых на обеспечение качества.

Гарантоспособность (Dependability)

Гарантоспособность – гарантия высокой надежности, защищенности от сбоев в случаях, когда сбой системы может привести к крайне тяжелым последствиям (такие системы называют «системы повышенной надежности», «высокой доступности» и т.п.).

Общая (совокупная) гарантоспособность системы (как сочетания аппаратной части, программного обеспечения и человеческого фактора) является главным и приоритетным требованием качества, по отношению к основной функциональности системы.    

Гарантоспособность программного обеспечения включает следующие  характеристики:

· защищенность от сбоев (fault-tolerance);

· безопасность использования (в смысле приемлемого риска для здоровья людей, бизнеса, имущества);

· информационная безопасность – защита информации от несанкционированных операций;

· доступ на чтение авторизованным пользователям (в объеме заданных для них прав);

· удобство и простота использования (usability).  

 

Надежность (reliability) также является критерием, который может быть определен в терминах гарантоспособности (см. стандарт ISO/ IEC 9126-1:2001 «Software Engineering - Product

Quality, Part 1: Quality Model»).

В обсуждении данного вопроса применяется терминология, пришедшая из области традиционных механических и электрических систем (в т.ч. не включающих программное обеспечение) и описывающая концепции опасности, рисков, целостности систем и т.п.

Уровни целостности программного обеспечения (Integrity levels of software)

Уровень целостности программного обеспечения определяется на основании возможных последствий сбоя программного обеспечения и вероятности возникновения сбоя.

Когда важны различные аспекты безопасности (применения и информационной безопасности), при разработке планов работ в области идентификации возможных очагов аварий могут использоваться техники анализа опасностей и угроз (в информационной безопасности, security).

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

Уровни целостности (например, градации целостности) предлагаются, в частности, стандартом IEEE 1012-98 «IEEE

Standard for Software Reviews».

При более детальном рассмотрении целостности программного обеспечения необходимо уделять особое внимание (выделяя соответствующие ресурсы и проводя необходимые работы) не только SQM-процессам (аудит, аттестация), но и аспектам управления требованиями.   

Весьма важны вопросы:

· управления рисками (включая планирование рисков как на этапе разработки, так и на этапе эксплуатации и сопровождения системы);

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

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


Дата добавления: 2018-10-26; просмотров: 202; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!