Стандарты: ISO 25010, IEEE 829 | QArtel
Ко всей базеcareer
Стандарты: ISO 25010, IEEE 829 Около 10 мин чтения
Обзор
Стандарты играют ключевую роль в тестировании, обеспечивая единые подходы к определению качества и документации. ISO 25010 определяет модель качества программного обеспечения, а IEEE 829 устанавливает стандарт для тестовой документации.
ISO 25010: Модель качества программного обеспечения
Общее описание
ISO/IEC 25010:2011 (Systems and software engineering — Systems and software Quality Requirements and Evaluation (SQuaRE) — System and software quality models) определяет модель качества программного обеспечения, состоящую из 8 характеристик , каждая из которых делится на подхарактеристики.
8 характеристик качества
1. Функциональная пригодность (Functional Suitability)
Степень, с которой продукт обеспечивает функции, удовлетворяющие заявленным потребностям.
Подхарактеристика Определение Функциональная полнота (Functional Completeness)Степень покрытия функций всех указанных задач и целей пользователя (Functional Correctness)
Функциональная корректность
Степень, с которой продукт даёт точные результаты с нужной точностью
Функциональная уместность (Functional Appropriateness)Степень, с которой функции способствуют выполнению определённых задач
Проверка наличия всех требуемых функций (полнота)
Верификация корректности вычислений (корректность)
Оценка удобства рабочих процессов (уместность)
2. Эффективность производительности (Performance Efficiency) Производительность относительно используемых ресурсов при заявленных условиях.
Подхарактеристика Определение Временное поведение (Time Behaviour)Время отклика, время обработки и частота throughput при заданных условиях Использование ресурсов (Resource Utilization)Количество и тип ресурсов, используемых продуктом при выполнении функций Ёмкость (Capacity)Максимальные пределы параметров продукта
Нагрузочное тестирование (временное поведение)
Мониторинг потребления CPU, RAM, диска (ресурсы)
Стресс-тестирование (ёмкость)
3. Совместимость (Compatibility) Степень, с которой продукт может обмениваться информацией и/или выполнять функции с другими продуктами.
Подхарактеристика Определение Сопрягаемость (Co-existence)Способность эффективно сосуществовать с другими продуктами в общей среде Взаимодействие (Interoperability)Способность обмениваться и использовать информацию между двумя или более системами
Тестирование на разных браузерах и ОС (сопрягаемость)
Интеграционное тестирование API (взаимодействие)
4. Удобство использования (Usability) Степень, с которой продукт может быть использован для достижения целей с эффективностью, продуктивностью и удовлетворённостью.
Подхарактеристика Определение Распознаваемость пригодности (Appropriateness Recognizability)Способность пользователей распознать, подходит ли продукт для их нужд Усваиваемость (Learnability)Степень лёгкости изучения использования продукта Операбельность (Operability)Степень лёгкости управления и контроля продукта Защита от ошибок пользователя (User Error Protection)Степень защиты пользователей от совершения ошибок Эстетика пользовательского интерфейса (User Interface Aesthetics)Способность интерфейса нравиться пользователю Доступность (Accessibility)Степень, с которой продукт может быть использован людьми с ограниченными возможностями
Юзабилити-тестирование с реальными пользователями
A/B тестирование интерфейсов
Тестирование доступности (WCAG)
5. Надёжность (Reliability) Степень, с которой продукт выполняет заявленные функции при заданных условиях в течение заданного периода времени.
Подхарактеристика Определение Зрелость (Maturity)Степень, с которой продукт удовлетворяет потребностям в надёжности при нормальной эксплуатации Доступность (Availability)Степень, с которой продукт доступен для использования при обращении Отказоустойчивость (Fault Tolerance)Способность функционировать при наличии аппаратных или программных сбоев Восстанавливаемость (Recoverability)Способность восстанавливать данные и состояние после сбоя
Тестирование на отказоустойчивость (введение сбоев)
Тестирование резервного копирования и восстановления
Долгосрочное тестирование стабильности
6. Безопасность (Security) Степень, с которой продукт защищает информацию и данные.
Подхарактеристика Определение Конфиденциальность (Confidentiality)Обеспечение доступа только авторизованным пользователям Целостность (Integrity)Предотвращение несанкционированного доступа или изменения данных Неподотчётность (Non-repudiation)Возможность проследить действия до их исполнителя Подотчётность (Accountability)Отслеживание действий субъекта по отношению к продукту Аутентичность (Authenticity)Способность доказать подлинность личности или ресурса
Тестирование проникновения (penetration testing)
Проверка аутентификации и авторизации
Тестирование на SQL-инъекции, XSS
7. Сопровождаемость (Maintainability) Степень лёгкости внесения изменений в продукт.
Подхарактеристика Определение Модульность (Modularity)Степень, с которой система состоит из дискретных компонентов Повторная используемость (Reusability)Степень, с которой активы могут быть использованы в других системах Анализируемость (Analysability)Лёгкость оценки влияния изменений Модифицируемость (Modifiability)Степень эффективности и отсутствия дефектов при модификации Тестируемость (Testability)Лёгкость установления критериев и проведения тестов
Ревью кода на модульность
Проверка повторного использования компонентов
Оценка лёгкости написания тестов
8. Переносимость (Portability) Степень лёгкости переноса продукта из одной среды в другую.
Подхарактеристика Определение Адаптируемость (Adaptability)Способность продукта адаптироваться к различным средам Устанавливаемость (Installability)Лёгкость установки и/или удаления продукта Заменяемость (Replaceability)Степень, с которой продукт может заменить другой аналогичный продукт
Тестирование на разных платформах (адаптируемость)
Тестирование установщика (устанавливаемость)
Миграция данных (заменяемость)
Визуальная модель ISO 25010 ┌──────────────────────────────────────────────────────────────────┐
│ ISO 25010: МОДЕЛЬ КАЧЕСТВА │
├──────────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 1.Функцион. │ │ 2.Производи- │ │ 3.Совмести- │ │
│ │ пригодность │ │ тельность │ │ мость │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 4.Удобство │ │ 5.Надёжность │ │ 6.Безопас- │ │
│ │ исп. │ │ │ │ ность │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ │
│ ┌──────────────┐ ┌──────────────┐ │
│ │ 7.Сопровож- │ │ 8.Переноси- │ │
│ │ даемость │ │ вость │ │
│ └──────────────┘ └──────────────┘ │
│ │
└──────────────────────────────────────────────────────────────────┘
IEEE 829: Стандарт тестовой документации
Общее описание IEEE 829-2008 (Standard for Software and System Test Documentation) определяет набор форматов для документов, используемых в различных этапах тестирования.
Документы по IEEE 829
1. План тестирования (Test Plan) Определяет объём, подход, ресурсы и расписание тестовой деятельности.
Разделы плана тестирования:
Идентификатор плана тестирования
Ссылочные документы
Элементы, подлежащие тестированию
Функции для тестирования
Подход к тестированию
Критерии прохождения / непрохождения
Отчёты и процедуры
Требования к тестовому окружению
Укомплектование и подготовка кадров
Задачи и расписание
Риски и меры по их снижению
Утверждения
2. Спецификация тестового случая (Test Case Specification) Детализирует входные данные, ожидаемые результаты и набор шагов для отдельного тест-кейса.
Идентификатор тестового случая
Ссылочные документы
Входные данные
Ожидаемые результаты
Набор процедур
3. Спецификация тестовой процедуры (Test Procedure Specification) Определяет шаги выполнения тестовых случаев.
Идентификатор процедуры
Ссылочные документы
Требования к среде
Особые требования
Методики тестирования
Шаги процедуры
4. Отчёт о результатах тестирования (Test Report) Документирует результаты выполнения тестирования.
Идентификатор отчёта
Описание тестовых элементов
Результаты тестирования
Сводка активности
Критические события
Оценка результатов
Утверждения
5. Отчёт об инциденте (Incident Report) Фиксирует обнаруженные дефекты и отклонения.
Идентификатор инцидента
Краткое описание
Подробное описание шагов для воспроизведения
Фактический результат
Ожидаемый результат
Статус
Серьёзность (severity)
Приоритет
Контрольные точки
Структура тестовой документации ┌─────────────────────────────────────────────────────────┐
│ IEEE 829: СТРУКТУРА ДОКУМЕНТОВ │
├─────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────┐ │
│ │ Тестовый │ │
│ │ Master Plan │ │
│ └──────┬──────┘ │
│ │ │
│ ┌────┴────┐ │
│ ▼ ▼ │
│ ┌─────────┐ ┌─────────┐ │
│ │ Level │ │ Level │ ... │
│ │ Test │ │ Test │ │
│ │ Plan │ │ Plan │ │
│ └────┬────┘ └────┬────┘ │
│ │ │ │
│ ┌──┴──┐ ┌──┴──┐ │
│ ▼ ▼ ▼ ▼ │
│ ┌────┐┌────┐┌────┐┌────┐ │
│ │TCS ││TPS ││TCS ││TPS │ (Test Case/Procedure Spec) │
│ └──┬─┘└──┬─┘└──┬─┘└──┬─┘ │
│ │ │ │ │ │
│ ▼ ▼ ▼ ▼ │
│ ┌──────┐┌──────┐┌──────┐ │
│ │Test ││Incident││Test │ │
│ │Log ││Report ││Report│ │
│ └──────┘└──────┘└──────┘ │
│ │
└─────────────────────────────────────────────────────────┘
Место в жизненном цикле Этап Документ Назначение Планирование Test Plan Определение scope, подхода, ресурсов Проектирование Test Case Specification Детализация тест-кейсов Проектирование Test Procedure Specification Определение шагов выполнения Выполнение Test Log Фиксация хода выполнения Выполнение Incident Report Фиксация дефектов Завершение Test Report Итоговый отчёт
Примеры разделов документа
Пример Test Plan (фрагмент) 1. Идентификатор: TP-2024-001
2. Ссылочные документы:
- SRS v2.3
- Стратегия тестирования v1.0
3. Элементы для тестирования:
- Модуль авторизации
- Модуль управления пользователями
- API v2
4. Функции для тестирования:
- Вход в систему
- Восстановление пароля
- CRUD пользователей
5. Подход:
- Системное тестирование
- API-тестирование
- Эксплораторное тестирование
6. Критерии прохождения:
- 100% покрытие требований
- 95% тестов пройдено
- Нет критических дефектов
...
Пример Test Case Specification (фрагмент) Идентификатор: TC-AUTH-001
Ссылки: TP-2024-001
Входные данные:
- Логин: user@example.com
- Пароль: Test123!
Шаги:
1. Открыть страницу входа
2. Ввести логин
3. Ввести пароль
4. Нажать "Войти"
Ожидаемый результат:
- Пользователь авторизован
- Отображается главная страница
- В хедере отображается имя пользователя
Пример Incident Report (фрагмент) Идентификатор: INC-2024-042
Краткое описание: Ошибка при вводе спецсимволов в пароле
Шаги воспроизведения:
1. Открыть страницу регистрации
2. Ввести пароль: Test@123#
3. Нажать "Зарегистрироваться"
Фактический результат: Ошибка 500
Ожидаемый результат: Успешная регистрация
Серьёзность: Major
Приоритет: High
Статус: New
Сравнение стандартов Критерий ISO 25010 IEEE 829 Тип Модель качества Стандарт документации Назначение Определяет что измерять Определяет как документировать Фокус Качество продукта Процесс тестирования Применение Оценка качества ПО Тестовая документация Структура 8 характеристик, 31 подхарактеристика 9 типов документов Область Requirements engineering, QA Test management
Другие relevant стандарты
ISO/IEC 25000 (SQuaRE) Серия стандартов для оценки качества ПО:
25010 — Модель качества
25012 — Модель качества данных
25020 — Мера качества
25030 — Требования к качеству
25040 — Оценка качества
IEEE 1044 Стандарт классификации дефектов.
ISTQB Glossary Глоссарий терминов тестирования.
Практическое применение
Использование ISO 25010 для тестирования
Для каждого типа тестирования сопоставьте с характеристикой ISO 25010:
Тип тестирования Характеристика ISO 25010 Smoke-тестирование 1. Функциональная пригодность Нагрузочное тестирование 2. Эффективность производительности Кросс-браузерное тестирование 3. Совместимость Юзабилити-тестирование 4. Удобство использования Тестирование отказоустойчивости 5. Надёжность Пентест 6. Безопасность Ревью кода 7. Сопровождаемость Тестирование на разных ОС 8. Переносимость
Для оценки рисков используйте характеристики как области анализа
Для метрик определите показатели для каждой характеристики
Использование IEEE 829 для документации
Адаптируйте шаблоны под контекст проекта
Используйте проверочные листы для каждой секции
Версионируйте документы — отслеживайте изменения
Автоматизируйте отчёты — генерируйте из инструментов тестирования
Ключевые термины Термин Определение ISO 25010 Стандарт модели качества ПО (8 характеристик) IEEE 829 Стандарт тестовой документации SQuaRE Серия стандартов ISO 25000 для оценки качества Test Plan Документ, определяющий scope и подход тестирования Test Case Specification Детализация отдельного тест-кейса Incident Report Документ для фиксации дефектов Quality Characteristic Качество ПО по ISO 25010
Связанные темы