Народная мудрость гласит: кто не рискует, тот не пьет шампанского. Действительно, опасность провала подстерегает нас в любой деятельности – неважно, тестируем ли мы ПО или выпекаем печеньки на продажу. В этой статье мы рассмотрим проектные риски с точки зрения тестирования. Для начала определим разницу между рисками и проблемами проекта. Представим себе ситуацию: мы попали под дождь, зонтика у нас нет, нам холодно и мокро, нужно срочно что-то решать. Так вот, это уже проблема, с которой мы столкнулись из-за того, что утром проигнорировали риск выпадения осадков и вышли из дома, не взглянув на прогноз погоды. Попробуем понять, как можно подготовиться к неожиданностям заранее и выйти сухим из воды.
Риски: негативные и позитивные
PMBOK дает определение: «Риск проекта – это неопределенное событие или условие, наступление которого отрицательно или положительно сказывается на целях проекта, таких как содержание, расписание, стоимость и качество». Соответственно, риски могут быть как негативными, так и позитивными.
По клику на картинку откроется полная версия.
В первую очередь поговорим о негативных рисках. Итак, негативный риск – это риск, который может привести к ухудшению ситуации (поменять в худшую сторону продукт, увеличить сроки тестирования, повысить стоимость работ, снизить качество).
Примеры таких рисков в тестировании:
- неверная оценка трудозатрат;
- изменение требований со стороны заказчика в ходе реализации;
- увольнение/перераспределение людей;
- низкая продуктивность;
- несогласованность плана релиза.
Если с пониманием важности учета негативных рисков все просто, то о позитивных мы обычно не задумываемся. Позитивные риски – это риски, влекущие за собой возможность улучшить продукт, сократить сроки работ, снизить их стоимость, а также повысить качество. Позитивные риски могут заключаться в случайных событиях (например, срок выхода продукта продлили законодательно). Они же возникают при осознании нами негативных рисков (например, мы предположили, что недооценим трудозатраты, и это выльется в увеличение сроков; на самом же деле мы их оценили верно или даже переоценили).
Управление рисками
В общем случае управление рисками состоит из:
- выявления рисков, которые могут помешать целям проекта;
- анализа;
- планирования;
- мониторинга и контроля.
На примере управления негативными рисками разберем каждый пункт более подробно. Выявление (идентификацию) рисков можно проводить различными способами. Перечислим лишь некоторые из них:
- экспертная позиция ТМ-а;
- мозговой штурм;
- в рамках ретроспективы;
- SWOT-анализ.
Что бы вы ни выбрали, на выходе у вас должен получиться список рисков, который проще всего представить в следующем формате: «Причина риска» – «Название риска» – «Последствия».
Далее мы анализируем этот список. Для определения наиболее опасных для проекта рисков нужно обозначить вероятность наступления и серьезность последствия каждого из них (например, по десятибалльной шкале); произведение этих двух величин даст нам важность риска. В случае необходимости можно систематизировать риски по причинам, следствию или стратегии работы (см. ниже) для более глубокого анализа, но в данной статье мы ограничимся простой сортировкой по важности.
Определившись со списком рисков, переходим к самому важному этапу – планированию. Выбираем стратегию работы с рисками из четырех возможных:
- снижение риска (выстраиваем такой план действий, чтобы последствия риска сократились до приемлемых с нашей точки зрения размеров);
- уклонение от риска (изменяем план работ так, чтобы вообще избежать риска);
- принятие риска (готовимся к риску исключительно морально, ничего не делаем);
- передача ответственности на третью сторону (согласуем с внешним или внутренним заказчиком возможные последствия наступления риска).
Рассмотрим эти стратегии на конкретном примере. Предположим, что у нас на проекте есть всего один тестовый стенд, который периодически «падает» и стопорит все тестирование. Возможные стратегии для этого риска будут выглядеть так:
- снижение – анализируем причины падения, подключаем выделенного специалиста по инфраструктуре, работаем над ошибками сборок;
- уклонение – согласовываем настройку второго стенда;
- принятие – закладываем простой в планируемые трудозатраты;
- передача ответственности – информируем заказчика о том, что ответственность за сроки работы в этих условиях возлагается на него.
При любой из стратегий у нас появляется «план Б», для оценки эффективности которого и планирования дальнейшей работы нужно на регулярной основе проводить мониторинг и контроль. Выбираем периодичность и актуализируем список наших рисков: вычеркиваем устаревшие, добавляем новые, корректируем важность, работаем над стратегией.
Теперь обратим внимание на позитивный риск. Представим, что мы изначально заложили в план тестирования негативный риск «падения» стенда; у нас приготовлены ресурсы (люди, время, запасной стенд) для работы с этим риском. В этот момент у нас появляется позитивный риск – есть вероятность, что стенд будет стабилен. Даже при отсутствии планирования негативного риска любое возможное положительное событие (которое дает шанс сделать больше, лучше, быстрее, дешевле) будет для нас позитивным риском. В случае возникновения такого события ТМ-у нужно заранее представлять список видов деятельности, на реализацию которых можно направить освободившиеся плановые запасы ресурсов. Это может быть ревью тест-кейсов/чек-листов, обучение, неприоритетные виды тестирования, тестирование неприоритетного функционала, усиление других проектов и т. д.
Подводные камни
Нельзя не отметить, что работа с рисками рискованна сама по себе. Так, поднимая тему рисков недоступности инфраструктуры, мы сразу провоцируем появление у руководства вопросов к сотрудникам, отвечающим за инфраструктуру. С одной стороны, мы освещаем деятельность коллег в неприглядном свете, но с другой – вносим вклад в стабилизацию процесса. Или, например, наши коллеги рапортуют о том, что все идет отлично, и никаких препятствий не возникает («Победа будет за нами!») – и на фоне победных реляций наш список рисков слегка бледнеет. Однако реальность такова, что либо мы управляем рисками, либо риски управляют нашим тестированием.
Выводы
Учет возможных рисков потребует от вас ощутимых трудозатрат на начальном этапе (когда вы будете отлаживать процессы выявления и анализа рисков и определяться со стратегией) и регулярной работы по актуализации в дальнейшем. На этом пути трудно найти универсальные решения – они будут зависеть от размера и специфики вашего проекта. Бесспорно одно: управление рисками дает возможность контролировать расход ресурсов – то есть, в конечном итоге экономить время и деньги заказчика.