Денис Бесков. Как задавать требования к качеству ПО в цифрах?
1. Как
задавать
требования
к
качеству
ПО
в
цифрах?
Денис
Бесков,
denis.beskov@gmail.com
Школа
системного
анализа
2. Вопросы:
1. Что
такое
качество?
2. Как
его
задать?
3. Как
выбрать
конкретные
значения?
2
3. Обзор
1. Качество
как
явление
2. Модель
качества
3. Атрибуты
и
показатели
качества
продукта
4. Атрибуты
и
показатели
качества
в
использовании
5. Классы
систем
6. Профили
качества
7. Влияние
стадии
зрелости
8. «Инструкция»
по
применению
3
14. Производительность
(П)
Показатель
/
Уровень
0
1
2
3
П1.1.
Количество
одновременно
работающих
пользователей
1+
10+
100+
1
K+
П1.2.
Частота
запросов
от
пользователя
в
минуту
-‐
<=
4
<=
10
<=100
П1.3.
Количество
исполняемых
транзакций
в
секунду
-‐
3+
50+
1500+
П2.1.
Длительность
типовых
операций/
транзакций,
для
%
случаев
80%
-‐
<=
5
сек
<=
3
сек
<=
1
сек
95%
-‐
<=
10
сек
<=
5
сек
<=
3
сек
14
15. Эффективность
(Э)
Показатель
/
Уровень
0
1
2
3
Э1.
Количество
операций
/
(секунду
*
стоимость
оборудования,
k$)
-‐
3
+
5
+
15+
15
16. Надёжность
(Н)
Показатель
/
Уровень
0
1
2
3
Н1.
Вероятность
сбоя
(без
ущерба
для
безопасности)
-‐
5%
1%
0,1%
Н2.
Время
восстановления
после
сбоя
-‐
<=
5
мин
<=
30
сек
<=
5
сек
16
17. Доступность
(Д)
Показатель
/
Уровень
0
1
2
3
Д1.
Коэффициент
доступности
50%
96%
99%
99,9%
Д1.1.
Допустимое
время
простоя
в
час,
минут
30
мин
3
мин
1
мин
1
сек
Д1.2.
Допустимое
время
простоя
в
день,
часов
12
ч
1
ч
15
мин
15
сек
Д1.3.
Допустимое
время
простоя
в
месяц,
часов
360
ч
30
ч
7
ч
1
мин
17
18. Безопасность
(Б)
Показатель
/
Уровень
0
1
2
3
Б1.
Стоимость
НСД/
взлома,
k$
0
1
+
30
+
1
000
+
Б2.
Вероятность
утечки
данных
в
результате
сбоя
-‐
<
0,1%
<
0,01%
<
0,001%
18
19. Масштабируемость
(М)
Показатель
/
Уровень
0
1
2
3
М1.
Характер
зависимости
времени
выполнения
транзакций
или
стоимости
ресурсов
от
нагрузки
Степенной,
где
показатель
>
1
Линейный
Степенной,
где
показатель
<
1
Логариф-‐
мический
M2.
Стоимость
десятикратного
увеличения
мощности
системы
>
1000%
400-‐900%
<
200%
<
100%
19
21. Атрибуты
качества
использования
21
1. Скорость
работы
2. Результативность
3. Точность
4. Скорость
обучения
5. Удовлетворённость
6. Утомляемость
22. Скорость
работы
пользователя
(СР)
Показатель
/
Уровень
0
1
2
3
СР1.1
Среднее
время
выполнения
учётных*
сценариев,
в
%
случаев
80%
-‐
<
5
мин
<
3
мин
<
1
мин
95%
-‐
<
15
мин
<
5
мин
<
3
мин
СР1.2
Среднее
время
выполнения
сложных**
сценариев,
в
%
случаев
80%
-‐
<
15
мин
<
10
мин
<
5
мин
95%
-‐
<
30
мин
<
15
мин
<
10
мин
СР1.2
Среднее
время
выполнения
поисковых
сценариев,
в
%
случаев
80%
-‐
<
3
мин
<
1
мин
<
20
cек
95%
-‐
<
10
мин
<
3
мин
<
1
мин
22
*
—
учётные
сценарии
—
не
больше
2
экранов
и
20
полей
**
—
сложные
сценарии
—
не
больше
7
экранов
и
100
полей
25. Скорость
обучения
(СО)
Показатель
/
Уровень
0
1
2
3
СО1.
Длительность
обучения,
необходимая
для
доведения
результативности
до
95%
>
4
часов
<
4
часов
<
10
минут
0
мин
25
26. Удовлетворённость
(УД)
Показатель
/
Уровень
0
1
2
3
УД1.
Средняя
оценка
пользователями
Ниже
ожиданий
На
уровне
ожиданий
Выше
ожиданий
Один
из
лучших
продуктов
из
испробованных
26
27. Утомляемость
(УТ)
Показатель
/
Уровень
0
1
2
3
УТ1.
Время
непрерывной
работы,
после
которой
число
ошибок
вырастает
больше,
чем
на
20%
>
1
мин
>
5
мин
>
20
мин
>
45
мин
27
29. Классы
по
ГОСТ
28195-‐89
5012
-‐
программные
средства
управления
базами
данных;
5013
-‐
инструментально-‐технологические
средства
программирования;
5014
-‐
ПС
интерфейса
и
управления
коммуникациями;
5015
-‐
ПС
организации
вычислительного
процесса
(планирования,
контроля);
5016
-‐
сервисные
программы;
5017
-‐
ПС
обслуживания
вычислительной
техники;
503
-‐
прикладные
программы
для
научных
исследований;
504
-‐
прикладные
программы
для
проектирования;
505
-‐
прикладные
программы
для
управления
техническими
устройствами
и
технологическими
процессами;
506
-‐
прикладные
программы
для
решения
экономических
задач;
509
-‐
прочие
ПС.
29
30. Полезные
сейчас
классы
1.
Обычные
сайты:
1.1.
Home
Site
1.2.
Business
Site
2.
Мобильные
приложения:
2.1.
Consumer
Mobile
App
2.2.
Enterprise
Mobile
App
3.
Интернет-‐магазины
и
настольные
приложения:
3.1.
Consumer
WebShop
3.2.
Consumer
Desktop
App
4.
Компоненты:
4.1.
Заказной
компонент
4.2.
Тиражируемый
компонент
5.
Заказное
ПО:
5.1.
Custom
Enterprise
Desktop
App
5.2.
Custom
Enterprise
Service
6. ПО
для
компаний:
6.1.
Enterprise
Desktop
App
6.2.
Enterprise
Server
App
7.
Интернет-‐сервисы:
7.1.
B2C
SaaS
7.2.
B2B
SaaS
30
35. Инструкция
по
применению
1. Определите
класс
системы
2. Определите
уровень
зрелости
3. Выберите
нужный
профиль
качества
по
классу
системы
4. Учтите
уровень
зрелости
35
37. Стандарты
по
качеству
ПО
• ГОСТ
28195-‐89Оценка
качества
программных
средств.
Общие
положения
• ГОСТ
28806-‐90
Качество
программных
средств.
Термины
и
определения
• ISO/IEC
25010:2011,
Systems
and
software
engineering
—
Systems
and
software
Quality
Requirements
and
Evaluation
(SQuaRE)
—
System
and
software
quality
models
• ISO/IEC
25030:2007,
Software
engineering
—
Software
product
Quality
Requirements
and
Evaluation
(SQuaRE)
—
Quality
requirements
37