ГОССТАНДАРТ РОССИИ - ИНФОРМАЦИОННАЯ ТЕХНОЛОГИЯ ОЦЕНКА ПРОГРАММНОЙ ПРОДУКЦИИ ХАРАКТЕРИСТИКИ КАЧЕСТВА И РУКОВОДСТВА ПО ИХ ПРИМЕНЕНИЮ
Примечание - Ресурсы могут включать другие программные продукты, технические средства, материалы (например бумага для печати, гибкие диски) и услуги эксплуатирующего, сопровождающего или обслуживающего персонала.
4.5 Сопровождаемость (Maintainability)
Набор атрибутов, относящихся к объему работ, требуемых для проведения конкретных изменений (модификаций).
Примечание - Изменение может включать исправления, усовершенствования или адаптацию программного обеспечения к изменениям в окружающей обстановке, требованиях и условиях функционирования.
4.6 Мобильность (Portability)
Набор атрибутов, относящихся к способности программного обеспечения быть перенесенным из одного окружения в другое.
Примечание - Окружающая обстановка может включать организационное, техническое или программное окружение.
5 РУКОВОДСТВО ПО ПРИМЕНЕНИЮ ХАРАКТЕРИСТИК КАЧЕСТВА
5.1 Применяемость
Настоящий стандарт применяется для установления требований к качеству программного обеспечения и оценивания (измерения, ранжирования и оценки) программных продуктов, включая:
- определение требований к качеству программной продукции;
- оценивание технических требований к программному обеспечению при контроле за тем, чтобы требования качества были удовлетворены в процессе разработки;
- описание признаков и свойств (атрибутов) внедренного программного обеспечения (например в руководствах пользователя);
- оценивание разработанного программного обеспечения перед его поставкой;
- оценивание программного обеспечения перед приемкой.
Существуют только несколько общепринятых метрик для характеристик, описанных в настоящем стандарте. Организации и группы по стандартизации могут устанавливать свои собственные модели процесса оценивания и методы формирования и проверки метрик, связанных с этими характеристиками, для охвата различных областей применения и стадий жизненного цикла. В тех случаях, когда соответствующие метрики отсутствуют и не могут быть разработаны, иногда пользуются словесными описаниями или «приблизительными методами».
При использовании шести характеристик качества в целях описания и оценивания также необходимо установить уровни ранжирования и критерии конкретно для данной организации или для данного применения, или для того и другого.
Должны быть установлены метрики, уровни ранжирования и критерии применительно к оценке качества, когда обмениваются результатами оценивания.
Хотя отсутствует общепринятая система классификации программного обеспечения, имеется несколько общепринятых классов программного обеспечения. Важность каждой характеристики качества меняется в зависимости от класса программного обеспечения. Например, надежность наиболее важна для программного обеспечения боевых критичных систем, эффективность наиболее важна для программного обеспечения критичных по времени систем реального времени, а практичность наиболее важна для программного обеспечения диалога конечного пользователя.
Важность каждой характеристики качества также меняется в зависимости от принятых точек зрения.
5.2 Представления о качестве программного обеспечения
Имеется несколько представлений о качестве, некоторые из которых обсуждаются ниже.
5.2.1 Представление пользователя
Определение качества по ИСО 8402 отражает представление пользователя так же, как и характеристики, определенные в настоящем стандарте.
Пользователи в основном проявляют заинтересованность в применении программного обеспечения, его производительности и результатах использования. Пользователи оценивают программное обеспечение без изучения его внутренних аспектов или того, как программное обеспечение создавалось.
Пользователя могут интересовать следующие вопросы:
- Имеются ли требуемые функции в программном обеспечении?
- Насколько надежно программное обеспечение?
- Насколько эффективно программное обеспечение?
- Является ли программное обеспечение удобным для использования?
- Насколько просто переносится программное обеспечение в другую среду?
5.2.2 Представление разработчика
Процесс создания требует от пользователя и разработчика использования одних и тех же характеристик качества программного обеспечения, так как они применяются для установления требований и приемки. Когда разрабатывается программное обеспечение для продажи, в требованиях качества должны быть отражены предполагаемые потребности,
Так как разработчики отвечают за создание программного обеспечения, которое должно удовлетворять требованиям качества, они заинтересованы в качестве промежуточной продукции так же, как и в качестве конечной продукции. Для того, чтобы оценить качество промежуточной продукции на каждой фазе цикла разработки, разработчики должны использовать различные метрики для одних и тех же характеристик, потому что одни и те же метрики неприменимы для всех фаз жизненного цикла. Например, пользователь понимает эффективность в терминах времени реакции, тогда как разработчик использует в проектной спецификации термины длины маршрута и времени ожидания и доступа. Метрики, применяемые для внешнего интерфейса продукции, заменимы метриками, применяемыми для ее структуры.
Представление пользователя должно также включать представление о характеристиках качества, требуемое тем, кто сопровождает программное обеспечение.
5.2.3 Представление руководителя
Руководитель может быть более заинтересован в общем качестве, чем в конкретной характеристике качества, и по этой причине будет нуждаться в определении важности значений, отражающих коммерческие требования для индивидуальных характеристик.
Руководителю может также потребоваться сопоставление повышения качества с критериями управляемости, такими как плановая задержка или перерасход стоимости, потому что он желает оптимизировать качество в пределах ограниченной стоимости, трудовых ресурсов и установленного времени.
5.3 Модель процесса оценивания
Схема 1 отражает основные этапы, требуемые для оценивания качества программного обеспечения, начиная с характеристик качества, определенных в настоящем стандарте. Ряд детальных процедур, таких как анализ и проверка метрик, на схеме 1 не показаны.
Процесс состоит из трех стадий: установление (определение) требований к качеству, подготовка к оцениванию и процедура оценивания. Данный процесс может применяться в любой подходящей фазе жизненного цикла для каждого компонента программной продукции.
5.3.1 Установление требований к качеству
Целью начальной стадии является установление требований в терминах характеристик качества и возможных комплексных показателей (подхарактеристик). Требования выражают потребности внешнего окружения для рассматриваемой программной продукции и должны быть определены до начала разработки. Так как программная продукция разделяется на основные компоненты, требования для продукции в целом могут отличаться от требований для отдельных компонентов.
5.3.2 Подготовка к оцениванию
Целью второй стадии является подготовка основы для оценивания.
5.3.2.1 Выбор метрик (показателей) качества
Способ, которым определялись характеристики качества, не допускает их непосредственного измерения. Существует потребность в установлении метрик (показателей), которые соотносятся с характеристиками программной продукции. Каждый количественный признак и каждое количественно оцениваемое взаимодействие программного обеспечения с его окружением, которые соотносятся с характеристикой, могут быть приняты в качестве метрики (показателя).
Метрики могут по-разному зависеть от окружения и фаз процесса разработки, в которых они используются. Метрики, используемые в процессе разработки, должны быть соотнесены с соответствующими метриками пользователя, потому что метрики из представления пользователя являются решающими.
5.3.2.2 Определение уровней ранжирования
Количественные признаки могут быть измерены, используя метрики качества. Результат, т.е. измеренное значение, отображается в масштабе. Данное значение не показывает уровень удовлетворения требований. Для этой цели данные шкалы должны быть разделены на диапазоны, соответствующие различным степеням удовлетворения требований (см. схему 2). Так как качество относится к конкретным потребностям, общие уровни ранжирования невозможны. Они должны определяться для каждого конкретного оценивания.