1 апреля 2021 5850
Приоритизация на основе оценки рисков — это важный шаг на пути достижения максимальной эффективности в кратчайшие сроки. Последовательное и правильное применение этого подхода обеспечивает оптимизацию всего процесса разработки программного обеспечения. Одна из важнейших задач заключается в определении возможности тестирования требований к ПО. Однако еще более важной и сложной задачей является приоритизация и категоризация требований с целью планирования и оптимизации процессов разработки и тестирования.
Приоритизация на основе оценки рисков: максимальная эффективность в кратчайшие сроки

Приоритизация на основе оценки рисков — это важный шаг на пути достижения максимальной эффективности в кратчайшие сроки. Последовательное и правильное применение этого подхода обеспечивает оптимизацию всего процесса разработки программного обеспечения. Одна из важнейших задач заключается в определении возможности тестирования требований к ПО. Однако еще более важной и сложной задачей является приоритизация и категоризация требований с целью планирования и оптимизации процессов разработки и тестирования.

Если Вы хотите:

  • определить возможность тестирования ваших требований

  • количественно определить критичность требований

  • понять важность требований в вашем проекте до начала разработки

  • сократить расходы на тестирование дефектов, которые можно выявить на начальном этапе разработки ПО

Значит вам нужно использовать метод приоритизации на основе оценки рисков.

Этот метод поможет вам уточнить, переопределить и приоритизировать требования до начала разработки и тестирования.

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

Определение возможности тестирования требований

Как часто вы видели, чтобы менеджеры проектов или руководители групп тестирования старались понять, насколько приемлемы для тестирования те или иные требования к ПО? Или чтобы требования анализировались в рамках «командного упражнения»? Ответом, скорее всего, будет «Очень редко».

Однако это одна из главных задач управления тестированием, от успеха решения которой зависит эффективность всего процесса тестирования.

Чтобы удостовериться, что требования будут тестируемыми, необходимо убедиться в их полноте, непротиворечивости, корректности, выполнимости и однозначности. Если они удовлетворяют этим пяти критериям, можно с уверенностью сказать, что данные требования являются тестируемыми и все члены вашей команды могут их понять и однозначно интерпретировать.

Определение возможности тестирования требований — это первый шаг процесса приоритизации на основе оценки рисков. Следующий вопрос: На каком этапе жизненного цикла разработки ПО или Agile-процесса необходимо определять тестируемость требований? Ответ вполне очевиден. На этапе анализа или планирования спринта бизнес-аналитики должны собрать все требования, а команда тестировщиков должна проверить эти требования и убедиться, что они являются значимыми и могут быть протестированы.

Скорее всего, на этапе анализа в случае жизненного цикла разработки ПО состав команды тестировщиков еще не определен, а в случае Agile не определен состав команды Scrum. Однако рекомендуется определить, по крайней мере, ключевых членов команды: руководителя группы, инженеров по тестированию и разработчиков, которые могут работать над уточнением требований.

Если все требования являются тестируемыми и вы в этом уверены, то это хорошая новость. Однако, если есть какие-то нетестируемые требования, то их можно сделать тестируемыми, применив метод приоритизации на основе оценки рисков.

Делаем требования тестируемыми

Например, одно из требований определено следующим образом: «Приложение должно выдавать сообщение о статусе или отключать пользователя в случае отсутствия его активности в течение примерно 60 секунд».

Если вы внимательно посмотрите на это определение, то увидите некоторые неоднозначности. У вас могут возникнуть следующие вопросы.

  1. О каком приложении идет речь?
  2. Должно оно только выдавать сообщение о статусе, или отключать пользователя, или делать и то и другое?
  3. Указан временной интервал «примерно 60 секунд». И неизбежно возникает вопрос: нужно ли отключать пользователя, если никакой активности нет на протяжении 50 секунд?

Из-за этих неоднозначностей данное требование невозможно протестировать. Члены команды могут интерпретировать его по-разному. Разработчики могут реализовать одну возможность, а тестировщики будут тестировать какую-то другую. В результате выпускаемый продукт не удовлетворит заказчика и не будет иметь никакой ценности. Ваша задача - сделать требование абсолютно ясным.

Чтобы иметь возможность его протестировать, необходимо составить список всех вопросов (неоднозначностей) и попросить бизнес-аналитиков найти на них ответы. Получив ответы, нужно обновить требования и передать их обновленную спецификацию всем членам команды. Выполнив эту задачу, мы можем перейти к процессу приоритизации требований на основе оценки рисков.

Сущность приоритизации на основе оценки рисков

Приоритизация на основе оценки рисков — это процесс, выполняемый с целью

  • Проверить, являются ли требования тестируемыми
  • Понять, что именно нужно тестировать
  • Приоритизировать требования в зависимости от их критичности. Под критичностью понимается критичность для бизнес», а не с технической точки зрения.

Мы уже обсудили пункт первый этого определения выше. Вам понятно, как нужно оценивать требования по пяти важнейшим параметрам тестируемости и как затем их можно трансформировать в тестируемые требования.

Второй пункт определения: что именно нужно тестировать применительно к данным требованиям. В жизненном цикле разработки ПО каждое требование связано с определенным риском.  Предположим, у вас есть такое требование: «Измените шрифт на веб-сайте компании». Даже это, на первый взгляд, простое требование сопряжено с определенным риском. Нам нужно понять, какие шаги необходимо предпринять, чтобы исключить этот риск.

Третий пункт — это суть процесса приоритизации на основе оценки рисков. При приоритизации на основе оценки рисков мы присваиваем численные значения некоторым входным параметрам каждого требования. Это параметры «Влияние» и «Вероятность». 

Например, у вас есть 100 требований. Вы присваиваете численные значения этим входным параметрам для всех 100 требований. Обычно эти два параметра оцениваются по шкале от 1 до 3: 1 — низкий уровень, а 3 — высоки» уровень.

«Влияние» указывает на важность требования. С какими последствиями есть вероятность столкнуться, если это требование не будет правильно реализовано в готовом продукте? Такого рода последствия обозначаются словом «влияние».

Например, если уровень влияния «высокий», то ему можно присвоить значение 3. Если уровень «низкий», то его можно оценить как 1. В случае среднего уровня влияния, значение будет 2. Точно так же оценивается параметр «Вероятность».

«Вероятность» указывает на возможность возникновения сбоев или ошибок на этапе промышленной эксплуатации. Она также оценивается по шкале от 1 до 3.

Теперь на основе оценок, присвоенных параметрам «Влияние» и «Вероятность», для каждого требования рассчитываются уровни риска по следующей простой формуле:

Уровень риска = Влияние * Вероятность

Очевидно, что по этой формуле максимальный уровень риска равен 9 (т.е. Влияние * Вероятность = 3*3 = 9), а минимальный уровень риска равен 1. Таким образом, уровни риска варьируются в пределах от 1 до 9.

Определив уровни риска, мы можем разделить требования по группам с высоким, средним и низким уровнями риска, руководствуясь указанными ниже правилами.

Модель оценки и категоризации

Обратите внимание, что в зависимости от компании, в которой вы работаете, эти параметры и модель оценки могут различаться.

В левой части таблицы приведены правила категоризации требований, а в правой части показаны преобразования и сочетания, которые возможны при уровнях риска «Высокий», «Средний» и «Низкий».

Процесс приоритизации на основе оценки рисков

Приоритизация на основе оценки рисков — это процесс, осуществляемый под управлением руководителя группы тестирования. Он должен обеспечить эффективное проведение приоритизации на основе оценки рисков в рамках жизненного цикла разработки ПО. Этот процесс состоит из трех шагов.

Шаг 1. В конце этапа анализа руководитель группы тестирования передает членам команды перечень всех требований. Каждый член команды проверяет требования на предмет ясности. Руководитель группы организует совещание со всеми членами команды, а также с бизнес-аналитиками, заинтересованными лицами и разработчиками.

Шаг 2. На этом совещании каждый высказывается по поводу всех требований и предлагает значения вводных параметров («Влияние» и «Вероятность»).

Скорее всего, у членов команды будут разные оценки некоторых требований. В этом случае такие требования нужно обсудить и постараться прийти к единому мнению. Если кто-то продолжает настаивать на своем мнении, рекомендуется для начала выбрать более высокую оценку.

Шаг 3. Руководитель группы консолидирует все мнения и передает результаты приоритизации на основе оценки рисков с указанием уровня риска (высокий, средний и низкий) для каждого требования. Эти результаты могут быть представлены в следующем виде.

Результаты приоритизации

Исходя из этих данных, команды начинают работать над разработкой, тестированием и реализацией.

Преимущества приоритизации на основе оценки рисков

  • Этот процесс позволяет определить тестируемость требований и  сделать требования тестируемыми, если они не соответствуют критериям тестируемости.

  • Можно сосредоточиться на задачах тестирования уже на этапе анализа требований.

  • Все заинтересованные лица получают актуальную информацию о требованиях.

  • Можно выявить критические важные требования. После этого можно больше внимания уделить тестированию данных требований.

  • Возможно получить количественную оценку информации о рисках в рамках проекта.

  • Кроме того, можно оптимизировать пользовательское приемочное тестирование, пропустив на этом этапе тесты требований с низким приоритетом. Однако для этого необходимо определить приемлемый уровень для бизнес-подразделений и привлечь их на свою сторону.

  • Это поможет вам оптимизировать процесс тестирования.

Выводы

Приоритизация на основе оценки рисков — это метод, с помощью которого можно проанализировать требования еще на этапе сбора требований. Благодаря применению этого метода вы сможете сосредоточиться на тестировании и минимизировать количество дефектов, которые возникают в системе из-за неточных формулировок требований. При этом вы можете определить приоритеты и категории требований. Это поможет вам оптимизировать пользовательское приемочное тестирование. Приоритизация требований является основой тестирования и повышает эффективность процесса разработки ПО.

Автор статьи
Yogesh Sanjeevan Kshirsagar
Principal Consultant

Оригинал статьи

Последние статьи в блоге

Платформа сертификации IBS признана лучшим digital-решением для корпоративного обучения

Центр сертификации IBS стал обладателем Гран-при премии «Смарт пирамида» — одной из самых престижных российских премий за достижения в области обучения и развития человеческого капитала.

20 декабря 2024

Учебный центр IBS получил сертификат ГОСТ Р ИСО 9001-2015

В октябре 2024 года Учебный центр IBS получил сертификат соответствия ГОСТ Р ИСО 9001-2015. Это важное достижение подтверждает, что мы придерживаемся высоких стандартов качества и результативно управляем образовательными процессами организации.

19 декабря 2024

9 курсов со скидкой до 50%

Друзья, в январе стартует 9 курсов, обучение на которых можно купить со скидкой до 50%*! 

15 декабря 2024

8 заблуждений про тестирование

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

15 декабря 2024

Путь к Fullstack-тестировщику: что нужно знать о ручном и автоматизированном тестировании?

Тестирование программного обеспечения — одна из самых востребованных областей в IT. И часто новички и даже опытные специалисты, желающие строить свою карьеру в этом направлении, часто сталкиваются с вопросом: какое тестирование выбрать — ручное, автоматизированное или Fullstack? У каждого из этих направлений свои особенности, преимущества и требования к знаниям. В этой статье рассмотрим каждое из направлений, их плюсы и минусы, области применения и навыки, необходимые для успеха.

15 декабря 2024

Совет по развитию сертификации ИТ-специалистов при АПКИТ аккредитовал «Платформу сертификации IBS»

Директор департамента обучения и развития IBS Владимир Гернер участвовал в заседании Совета по сертификации ИТ-специалистов при АПКИТ.

Новости Жизнь компании
08 октября 2024

Java-сертификация: IBS в сравнении с Oracle

Игорь Судакевич рассказывает, почему сертификаты могут стать важным инструментом для достижения карьерных целей.

Новости
04 октября 2024

Исследование IBS: число новых ИТ-решений в реестре ПО выросло в 2023 году более чем на треть

Анализируем ситуацию на рынке российского ПО.

Жизнь компании
01 октября 2024

6 суперспособностей Fullstack-тестировщиков, которые напоминают навыки животных

Читайте о скиллах, которые делают тестировщиков востребованными на рынке труда.

27 сентября 2024

5 мифов о системных аналитиках

Вместе с Екатериной Тихомировой, специалистом по системному и бизнес-анализу, разбираемся, чем занимаются системные аналитики.

20 сентября 2024

Методология 12 факторов: как успешно разрабатывать облачные приложения

Андрей Бирюков рассказывает о методологии, которая помогает разрабатывать качественные, устойчивые и эффективные веб-приложения.

12 сентября 2024

Баги, которые стали фичами

Многие вещи, которые мы используем ежедневно, были случайно открыты. В честь дня тестировщика рассказываем про 5 багов, которые стали фичами.

09 сентября 2024

Шаблоны облачного проектирования

Читайте про наиболее популярные шаблоны облачного проектирования: шаблон Bulkhead и шаблон Sidecar.

06 сентября 2024

Бесплатные мини-курсы ко Дню знаний

Друзья, поздравляем с Днём знаний! Желаем любопытства, открытий и новых побед!

02 сентября 2024

5 курсов со скидкой 30%

Друзья, в сентябре стартует 5 курсов со скидкой 30%*

29 августа 2024

Исследование IBS: на одну вакансию в Java-разработке приходится 4 резюме

По данным исследования рекрутингового центра IBS, наибольшая конкуренция среди соискателей наблюдается среди Python-разработчиков: на одну вакансию приходится 10 резюме. В менее конкурентной среде находятся Java-разработчики (4 резюме на одну вакансию). Самыми дефицитными являются специалисты по языку Go: менее 2 резюме на одну вакансию.

28 августа 2024

Индексирование баз данных в PostgreSQL: погружение в тему

В продолжение серии статей об устройстве системы управления базами данных (СУБД) PostgreSQL (раз, два) смотрим, как ускорить выполнение запросов к базе данных с помощью индексов.

28 августа 2024

Книги для системных и бизнес-аналитиков, а также будущих и нынешних архитекторов

Наш коллега, архитектор информационных систем Сергей Политыко, поделился полезными книжными рекомендациями.

Жизнь компании
19 августа 2024

Сценарии кибератак с использованием ИИ. Внутренний периметр.

Кибератаки, направленные на внутренние периметры организаций, становится особенно актуальной темой. Внутренние атаки могут происходить как от злоумышленников с доступом к ресурсам, так и извне, используя уязвимости внутренней инфраструктуры. Использование ИИ в таких атаках позволяет автоматизировать и улучшить процесс поиска уязвимостей, создать вредоносный код и разработать методы социальной инженерии, что увеличивает скорость и масштаб атак. Расскажем про сценарии таких атак подробнее.

16 августа 2024

Сценарии кибератак с использованием ИИ. Внешний периметр

Сценарии кибератак по внешнему периметру представляют собой модели и методы, которые злоумышленники используют для незаконного доступа к информационным системам и данным компаний через их внешние интерфейсы и сети. Это как если бы ваша компания была неприступной крепостью, а за ее воротами стояла бы армия хорошо обученных солдат-магов, которые способны разрушить крепость по щелчку пальцев. Вы уверены, что ваши высокие стены и глубокие рвы вас спасут от подобной армии?

09 августа 2024

Не нашли, что искали? — Просто напишите, и мы поможем

Продолжая, я подтверждаю, что ознакомлен с Условиями использования и Порядком обработки персональных данных
Корпоративное обучение Оценка персонала Сертификация О нас Стань тренером Блог
Пользователь только что записался на курс ""
Спасибо!
Форма отправлена успешно.