БИБЛИОТЕКА НОРМАТИВНЫХ ДОКУМЕНТОВ

ГОСТ Р ИСО/МЭК 25023-2021. Национальный стандарт Российской Федерации. Системная и программная инженерия. Требования и оценка качества систем и программной продукции (SQuaRE). Измерения качества системы и программной продукции

Приложение C

(справочное)

 

ПОДРОБНОЕ ОБЪЯСНЕНИЕ ТИПОВ ИЗМЕРЕНИЯ

 

C.1 Общие положения

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

Примечание - Для большинства внешних показателей тестирование может быть выполнено для сбора входных данных для функции измерения. Типы измерений, описанные в настоящем приложении, тесно связаны с методикой проектирования тестирования и типами тестирования, определенного в ISO/IEC/IEEE 29119-4. Относящиеся к качеству типы тестирования и сопоставление характеристик/подхарактеристик качества с типами тестирования подробно описаны в приложении A ISO/IEC/IEEE 29119-4.

 

C.2 Типы измерений размеров

C.2.1 Общие положения

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

Примечание - У программного продукта может быть много представлений размера (как любой объект, может быть измерен больше, чем в одной размерности - масса, объем, площадь поверхности, и т.д.).

 

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

C.2.2 Тип функционального размера

Функциональным размером является пример одного типа размера (одна размерность), который может иметь программный продукт. У любого экземпляра программного продукта может быть больше чем один функциональный размер в зависимости например от:

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

- использования определенного функционального метода калибровки (он изменит единицы и масштаб).

Определение понятий и процесса применения методики определения функциональных размеров (метод FSM) предоставлено в ИСО/МЭК 14143-1.

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

Несмотря на часто встречающееся утверждение, что представлены функциональные размеры, не гарантируется, что они эквивалентны функциональному размеру, полученному из применения Метода FSM, совместимого с ИСО/МЭК 14143-1. Однако они широко используются в разработке программных продуктов:

- число электронных таблиц;

- число экранов;

- число файлов или наборов данных, которые обработаны;

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

C.2.3 Тип размера программы

В этом пункте термин "программирование" представляет выражения, которые при выполнении приводят к действиям, а термин "язык" представляет тип используемого выражения.

C.2.3.1 Размер исходного кода программы

Необходимо объяснить язык программирования и указать, как обрабатываются неисполняемые операторы, такие как строки комментариев. Обычно используется следующая мера.

Операторы исходного кода, не относящиеся к комментариям (NCSS), включают исполняемые операторы и операторы объявления данных с логическими исходными операторами.

Примечания

1 Новый размер программы: разработчик может использовать недавно разработанный размер программы, чтобы представлять размер продукта разработки и работ по техническому обслуживанию.

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

 

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

- тип оператора;

- логические операторы (Logical Source Statement (LSS). LSS измеряет число инструкций программного продукта. Операторы не зависят от их отношений к строкам и не зависит от физического формата, в котором они появляются;

- физические операторы (Physical Source Statement (PSS). PSS измеряет число исходных строк программного обеспечения кода;

- атрибут оператора;

- исполняемый оператор;

- операторы объявления данных;

- операторы директивы компилятора;

- исходные операторы замечания;

- источник;

- измененные исходные операторы;

- добавленные исходные операторы;

- удаленные исходные операторы;

- недавно разработанные исходные операторы: (= добавленные исходные операторы + изменили исходные операторы);

- повторно используемые исходные операторы: (= исходный - измененный - удаленные исходные операторы).

C.2.3.2 Размер программы по количеству слов

Измерение может быть выполнено следующим образом с использованием показателя Холстеда: словарь Программы = n1 + n2; Наблюдаемая длина программы = N1 + N2, где

n1 - число отличных операторов (т.е. число отличных слов оператора, которые подготовлены и зарезервированы языком программы в исходном коде программы);

n2 - число отличных операндов (т.е. число отличных слов операнда, которые определены программистом в исходном коде программы);

N1 - общее количество операторов (т.е. число случаев отличных операторов в исходном коде программы);

N2 - общее количество операндов (т.е. число случаев отличных операндов в исходном коде программы).

C.2.3.3 Количество модулей

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

C.2.4 Тип измерения использованных ресурсов

Данный тип определяет ресурсы, используемые для работы оцениваемого программного продукта. Существуют следующие примеры:

a) объем памяти, например количество диска, или памяти, занятой временно или постоянно во время выполнения программного обеспечения;

b) загрузка ввода-вывода, например количество трафика коммуникационных данных (значащий для резервных инструментов в сети);

c) загрузка ЦП, например процент занятых систем команд ЦП в секунду (этот тип показателя, значащий для измерения загрузки ЦП и эффективности распространения процесса в программном продукте мультипотока, выполняющемся в параллельных/параллельных системах);

d) файлы и записи данных, например длина в байтах файлов или отчетов;

e) документы, например число страниц документа.

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

C.2.5 Определенный тип шага рабочей процедуры

Данный тип определяет статические шаги процедур, которые определены в спецификации проекта интерфейса пользователя или руководстве пользователя.

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

C.3 Тип измерения времени

C.3.1 Общие положения

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

Существует много способов измерения единицы времени, как приведенные ниже примеры:

a) Блок реального времени:

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

b) Компьютерная единица измерения времени оборудования:

Это время часов процессора компьютера, т.е. секунда, минута или час процессорного времени;

c) Официальная цифра запланированного времени:

Включает рабочее время, календарные дни, месяцы или годы;

d) Единица измерения времени компонента:

Когда есть многократные сайты, время компонента определяет отдельный сайт, и это - накопление отдельного времени каждого сайта. Эта единица обычно используется для описания надежности компонента, например уровня отказа компонента;

e) Единица системного времени:

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

C.3.2 Тип времени работы системы

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

- Прошедшее время:

При постоянном использовании программного продукта, например, в системах, работающих в течение того же самого отрезка времени каждую неделю.

- Вовремя приведенная в действие машина:

Для реального времени встроенного или программного продукта операционной системы, которое полностью используется во время работы системы.

- Нормированное машинное время:

Как в "machine powered-on time", но данные объединения от нескольких машин различных "powered-on-time" и применение поправочного коэффициента.

C.3.3 Тип времени выполнения

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

C.3.4 Тип времени пользователя

Тип времени пользователя измеряется по периодам времени, затраченным отдельными пользователями на выполнение задач с помощью операций программного продукта, по таким, как в следующих примерах:

- Время сеанса:

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

- Время выполнения задачи:

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

- Время пользователя:

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

C.3.5 Тип трудозатрат

Тип усилия - это производительное время, связанное с конкретной задачей проекта.

a) Индивидуальное усилие:

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

b) Целевая работа:

Усилия по выполнению задачи - это совокупная стоимость всего персонала проекта: разработчика, сопровождающего, оператора, пользователя или других, кто работал над выполнением указанной задачи.

C.3.6 Временной интервал типа событий

Этот тип показателя представляет собой временной интервал между одним событием и следующим за ним в течение периода наблюдения. Вместо этого показателя может использоваться частота периода времени наблюдения. Обычно это используется для описания времени между последовательно возникающими сбоями.

C.4 Тип измерения отсчета

Если атрибуты документов программного продукта считаются, то они являются статическими типами подсчета. Если подсчитываются события или действия человека, они являются кинетическими типами подсчета.

C.4.1 Число обнаруженного типа неисправности

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

C.4.2 Тип уровня структурной сложности программы

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

C.4.3 Количество обнаруженных несоответствий

Этот показатель учитывает обнаруженные непоследовательные параграфы, которые подготовлены к исследованию.

a) Количество несоответствий

Пример:

- соответствие к указанным параграфам спецификаций требований;

- соответствие, чтобы управлять, регулирование или стандарт;

- соответствие к протоколам, форматам данных, кодам символов.

b) Количество неудачных экземпляров ожидания пользователя

Измерение состоит в подсчете удовлетворенных/неудовлетворенных элементов списка, которые описывают разрывы между разумными ожиданиями пользователя и производительностью программного продукта.

Измерение использует вопросники, на которые отвечают тестировщики, клиенты, операторы или конечные пользователи, о том, какие недостатки были обнаружены.

Примерами вопросников являются следующие:

- Функция доступна или нет;

- Функция эффективно работает или нет;

- Функция полезна пользователю или нет;

- Функция ожидается, необходима или нет.

C.4.4 Тип количества изменений

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

C.4.5 Тип количества обнаруженных сбоев

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

C.4.6 Тип количества испытаний

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

C.4.7 Тип рабочего процесса пользователя

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

C.4.8 Тип результата вычисления

Этот тип определяет счет или результат арифметического вычисления. Счет может включать подсчет или вычисление весов, проверенных вкл/выкл на контрольных списках. Примерами являются оценка контрольного списка, оценка анкетного опроса, Метод Дельфи и т.д.

 

 

 

 

TOC