ГОСТ Р 56920—2016
Приложение С
(справочное)
Тестирование в различных моделях жизненного цикла
С.1 Общие сведения
Это приложение дает примеры того, «сак тестирование может вписаться в различные модели жизненного
цикла разработки программного обеспечения. Для каждого конкретного проекта идентифицируются необходимые
этапы разработки и/или действий, что и определяет, как относительно друг друга они будут выполняться в тече
ние жизненного цикла разработки. Совокупность этапов разработки и их взаимосвязь называют «моделью
жиз ненного цикла разработки» или «моделью жизненного цикла».
В течение многих лет а индустрии программного обеспечения используется ряд моделей жизненного цикла.
Типичными моделями жизненного цикла являются (список неисчерпывающий):
- динамичная;
- эволюционная;
- последовательная (т. е. каскадная модель).
Выполняемые во время разработки действия примерно одни и те же для всех моделей жизненного цикла;
основные различия заключаются в определении предметов действий, количестве, характере подготавливаемой
документации и частоте, с которой они повторяются в течение жизненного цикла разработки.
П р и м е ч а н и е — Стандартизация различных моделей жизненного цикла не является целью настоящего
стандарта, в намерения которого входит оказание поддержки тем. кто реализует эти жизненные циклы, в создании
условий для тестирования.
С.2 Динамичная разработка и тестирование
С.2.1 Принципы динамичной разработки
Динамичная разработка обычно соответствует нижеперечисленным принципам:
- разработка по этапам — результатом каждого цикла являются полезные и применимые продукты;
- цикличность разработки — в ходе разработки допускается развитие требований (то есть изменение и
добавление).
- разработка ориентирована на людей — опора на качество проектной группы (например, разработчиков и
тестеров), а не на точно определенные процессы; обеспечение самоуправления быстрой и динамичной команды;
ежедневное взаимодействие группы разработчиков с бизнес-заинтересованными сторонами.
- инженерно-техническое совершенство — достигается посредством дисциплинированного подхода к раз
работке. интеграции и тестированию продуктов.
Существует множество методик и схем динамичной разработки, включая: Экстремальное программирова
ние (ХР). Scrum, Crystal. КапЬапи Feature-Driven Development. В то время как все они используют различные под
ходы. они следуют принципам динамичной разработки, изложенным в манифесте динамичной разработки
(Agile Manifesto, см. httpf/cagHemanlfesto.org/). Поскольку в рамках настоящего стандарта невозможно
рассмотреть его использование при реализации всех методов и схем динамичной разработки, то в качестве
примера в настоящем стандарте будет использована схема метода Scrum. Метод Scrum не является
методологией разработки (то есть он не предлагает лучших методов описания требований или записи кода), а
определен как схема менеджмента проектов, в которой разработчиками используется динамичная методология
(часто используется ХР).
Проект Scrum состоит из множества итераций, называемых спринтами. Результатом каждого спринта
обычно является новая функциональность, которая может быть предоставлена пользователям, как показано на
рисунке
С.1
. Подобная новая функциональность может представлять собой улучшение предшествующей функци
ональности или дополнение ее новыми возможностями. Продолжительность каждого спринта обычно составляет
от одной до четырех недель. Зачастую количество слринтов в начале проекта неизвестно, поскольку в начале
типичных динамичных проектах требования не определены полностью. В ходе проекта требования развиваются.
Требования потребителя собираются в Портфеле Продукта обычно в виде истории пользователей.
Модель процесса тестирования, определенная в настоящем стандарте, применима для тестирования, про
изводимого в проектах, выполняемых соответственно модели динамичной разработки.
С.2.2 Менеджмент тестирования в динамичной разработке
Организационная Стратегия Тестирования должна отражать факт соответствия разработки модели дина
мичной разработки. В организации, где разработка выполняется с использованием в различных проектах разных
моделей разработки, в том числе и динамичной, как правило, имеется определенная Организационная Стратегия
Тестирования для динамичной разработки. Организационная Стратегия Тестирования проектов для динамичной
разработки должна использовать специфические понятия динамичной разработки, такие как «портфель продук-
32