Показаны сообщения с ярлыком Управление рисками. Показать все сообщения
Показаны сообщения с ярлыком Управление рисками. Показать все сообщения

вторник, 16 июня 2015 г.

Тренинг Рекса Блэка "Risk Based Testing"

В январе я узнал две новости, которые зарядили май двумя события из разряда "must visit". Первая - в Минск снова едет конференция SQA Days! В 2012 году в Минске я впервые побывал на SQA Days-12 и выступил с докладом. Вторая - на конференцию приедут с докладами Рекс Блэк и Пол Джеррард! Но встал вопрос выбора, чей мастер-класс выбрать. И, как в 2008-м, когда я купил черную книгу "Ключевые процессы тестирования" (единственная книга Блэка, переведенная на русский язык), так и спустя 7 лет, я выбрал мастер-класс Risk Based Testing.

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

Конспект не претендует на полный сборник идей и мыслей, прозвучавших на тренинге. Для знакомства с техникой Risk Based Testing (RBT), дополнительно рекомендую источники:
Каждый участник получил ссылки на запись курса и сборник материалов для ревью и пересмотра. Курс состоял из 6 частей:
  1. Определение Risk Based Testing (далее - RBT)
  2. Идентификация рисков, связанных с качеством
  3. Сбор и оценка рисков
  4. Кейс-стади по RBT
  5. Как формализировать или наоборот, увеличить точность RBT
  6. Интеграция RBT в жизненный цикл разработки и тестирования
В первой части Рекс Блэк говорил о невозможности полного тестирования (как и Сэм Канер в курсе BBST: Foundations), определениях риска, quality and project risks, RBT и его преимуществах.

Риск - вероятность негативного результата (>0% и <100%)
Один человек не может знать все риски, но вместе с командой вы можете выделить большинство рисков. Вывод: не пытайтесь собрать все риски в одиночку.

Как организовать сбор рисков? Рекс Блэк предлагает серию митингов-брейнстормов "1-на-1" с заинтересованными лицами ("технарями" и "бизнесом") продолжительностью 90-120 минут каждый.

Вторая часть тренинга - идентификация рисков. Используйте фреймворки для обнаружения и классификации рисков (по аналогии с фазой тест-дизайна - чит-листы), содержащие список возможных рисков: чек-листы рисков, риски из старого стандарта качества ISO 9126 и нового стандарта ISO 25000 и другие. Пример категорий списка рисков Рекса Блэка - здесь.

Для каждой категории рисков назначается ответственный исполнитель и список тестов, которые отвечают за риск. "Граничный" риск, который попадает в две категории, делится на 2-3 риска так, чтобы каждый выделенный риск попал в отдельную категорию.

Quality risk -> test
Project risk -> manage, not test

В третьей части тренинга мы говорили о сборе и оценке рисков.

Анализ quality risks приводит к трем побочным продуктам, которые нужно собрать: проектные риски (ответственный - менеджер проекта), дефекты во входной документации (ответственный - бизнес-аналитик) и предположения, сущности (issues) и вопросы (ответственный - разработчик).

Каждый риск оценивается по двум параметрам: вероятность (Likelihood) и влияние (Impact). Есть много шкал для оценки параметров, самая распространенная - пятибальная: от 1 (наиболее вероятно) до 5 (очень маловероятно). Важно, чтобы все участники проекта:
  • знали и понимали критерии каждого балла в принятой шкале
  • при оценке риска предполагали типовой, а не наихудший сценарий (пример с порезанным пальцем)
 More "risky" features in agile must be delivered first (as early as possible).

Для оценки риска (RPN - risk priority number, номер приоритета риска) вероятность и влияние перемножаются и полученные произведения ранжируются. Риски с наименьшим произведением - самые важные. Для оценки необходимого количества тест-кейсов для каждого риска используется практический метод: от 20 для рисков с RPN = 1-2 до 0 для рисков с RPN = 16-25 (один из примеров, количество тест-кейсов зависит от проекта).

В четвертой части тренинга мы разбирали практический пример оценки рисков на реальном проекте: от анализа quality risks до "выравнивания рисков" (если риски "сваливаются" на начало или конец прямой RPN от 1 до 25).

Пятая часть тренинга рассказывает о возможных оптимизациях стратегии Risk Based Testing: формулы для эстимаций тестирования, таблица приоритетов рисков, failure mode and effect analysis (FMEA).

В шестой части тренинга Рекс Блэк говорил о применении RBT для последовательных и итеративных циклов разработки и для процесса тестирования (рассматривался generic test process, описание которого дается в ISTQB - Planning, Analysis, Design, Implementation, Execution, Evaluating exit criteria and Reporting, Closure).

RBT is ideal for sequential lifecycle.
In iterative lifecycle, you need to prioritize Bug Fix VS feature development.

Для каждой фазы процесса тестирования Рекс Блэк приводил графики и примеры оценки рисков. Например, на фазе дизайна - процент покрытия рисками с течением времени (похожа на диаграмму покрытия тест-кейсами продукта), на фазе выполнения тестов - круговые диаграммы с процентами рисков от наиболее до наименее вероятных, и для каждого процента рисков - круговая диаграмма со статусом тест-кейсов (Passed, Failed, Not Run).

И на десерт - еще одна практическая часть, работа с требованиями "почти реального" проекта. И автографы для желающих и фотография с Рексом Блэком на память.

Тренинг прошел быстро и продуктивно: прошло 8 часов, и за окном светило уже вечернее солнце. А мы, вооружившись методом Risk Based, готовились применить полученные знания на практике и встретиться с Рексом Блэком завтра, уже на первом дне SQA Days. Но это уже другая, не менее интересная история. Продолжение следует. Лета, и оставайтесь с Qastugama!


суббота, 30 марта 2013 г.

Встреча минского QA Club. Риск-менеджмент, или кто не пьет шампанского.

23го марта состоялась очередная встреча минского QA Club'а. За 2 недели до встречи участники получили анкеты, в которых могли оставить все волнующие их вопросы касательно темы - "Управление рисками" от Елены Асташкевич.

Так как я был первый раз на встрече клуба, поэтому сразу расскажу про специфику и плюсы клубных встреч.
  •  выбирается одна тема на 2-3 часа, разбирается довольно подробно и обстоятельно. Это не обзорный доклад на конференции на 20-40 минут, где ты ухватываешь идею + пару тезисов. Подходит и для тех, кто "не в теме", и для более опытных и готовых поделиться.
  • каждый желающий может во время доклада задавать вопросы по теме и комментировать. Таким образом, доклад обогащается взглядом и опытом другого участника. Так как тема большая, это еще и возможность "передышки" докладчику - довольно сложно рассказывать непрерывно 2 часа :)
  • докладчик имеет большой практический опыт в теме, которую он рассказывает. Не все спикеры на конференциях именно практики.
  • после доклада все участники могут принять участие в обсуждении темы. Так называемый "круглый стол", обмен мнениями. Имхо. В отличие от конференций, более ровный состав "клубовцев", и дискуссия получается довольно интересной.
Встреча получилась интересной и продуктивной, за что большое спасибо организатору и руководителю QA Club'a в Минске Наташе Савастюк, Лене Асташкевич - как докладчику, за интересный, подробный доклад и за практические советы из собственного опыта, а также остальным участникам за живую дискуссию, и особенно наиболее активным - Сергею, Антону, Екатерине. Очень рекомендую встречи клуба, обязательно по возможности и сам постараюсь бывать.

А чуть ниже - конспект встречи.

Риски неизбежны (c), и особенно следует отметить риски на fixed-price проектах.

"Основная проблема разработки ПО - это риск." Кент Бэк

Что же дает управление рисками:
  • большая вероятность достижения целей
  • уверенность, доверие заказчика, что все под контролем
  • лучшая управляемость проектом
  • вклад в будущие проекты за счет опыта
    командный дух
  • навык думать вперед, а просто решать текущие проблемы

И в каких случаях нужно управление рисками:
  • большие объемные системы
  • изменяющиеся и неясные требования
  • новые технологии в проекте
  • сложность системы
  • неправильная оценка проекта
  • высокая зависимость от определенных людей
  • "новый опыт" для организации

Риск - неопределенное событие, которое при наступлении влияет минимум на 1 цель проекта: содержание, сроки, стоимость, качество.

Затем Лена рассказала про основные фазы управления рисками и специфику УР в Agile-проектах.

1. Планирование - начинается на старте проекта (на стадии Pre-sale - стоимость проекта за счет дополнительного анализа увеличивается, но со временем можно использовать наработки предыдущих проектов).

Категории рисков - см. PMBOK

Как оценивать риски:
- Перемножение трех атрибутов:
Случай * Вероятность * Воздействие = Важность
- Шкала оценки рисков (от 0 до 100 процентов, можно разделить на интервалы, каждому интервалу дать название: например, от "крайне маловероятно" до "очень вероятно")
- Оценка последствий, измерять в том, что важно: деньги, сроки, качество
- Матрица учета последствий риска - например:
Может использоваться и более точная матрица 3x3 (в Скраме) до много * много :) (PMBOK) - пример
- Матрица "угрозы - возможности"

2. Идентификация рисков.

Для идентификации рисков можно использовать следующие мероприятия:
- Мозговой штурм
- Метод Дельфи
- SWOT-анализ
- выявление рисков через катастрофы
Отличный результат может давать ретроспектива.

3. Качественный анализ рисков.

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

Величина затрат = Вероятность риска * оценка стоимости риска
 Для учета рисков при оценке проектов, используем 4 стоимости, которые нам позволяют предположить ту, которая нас ждет:
- оптимистичная стоимость проекта
- стоимость проекта, ожидаемая управлением
- наиболее вероятная стоимость
- наихудший вариант  

4. Планирование реагирования на риски.

Стратегии реагирования:
- Уклонение
- Передача
- Снижение
- Принятие
- Использование
- Улучшение

5. Мониторинг и управление рисками.

Рекомендуемая литература от автора доклада:
- Тони Демарко "Вальсируя с медведями"
- PMI
- PMBOK
- ISTQB Advanced Level Syllabus, Chapter "Risk Management"

Update от 1.06.2013 - презентация от Елены: