В бизнес анализе выделяют следующие типы требований

Contents

  • 1 Сбор требований
  • 2 Выжимка по процессу формирования требований
    • 2.1 Схема процесса разработки с уровнями требований
    • 2.2 Формирование и анализ требований
    • 2.3 Аттестация требований
    • 2.4 Подготовка к интервью по сбору требований у заказчика
  • 3 Классификация и описание требований на пути от бизнеса к технической реализации
    • 3.1 Компания — Бизнес-требования
    • 3.2 Заказчик — Документ требований заинтересованных лиц
    • 3.3 Пользователь — Требования пользователя
      • 3.3.1 Проблемы при формировании пользовательских требований
    • 3.4 Системные требования
    • 3.5 Функциональные требования
    • 3.6 Нефункциональных требований
    • 3.7 Требования предметной области
    • 3.8 Требования к продукту
    • 3.9 Организационные требования
    • 3.10 Требования к интеграции
      • 3.10.1 Интеграция через ESB
      • 3.10.2 Интеграция точка-точка
      • 3.10.3 Интеграция данных
    • 3.11 Требования к пользовательскому интерфейсу
  • 4 Управление требованиями
    • 4.1 Классификация изменяемых требований
    • 4.2 Процесс управления изменениями
  • 5 Кто читает документацию
  • 6 Как правильно сформулировать и контролировать цель проекта?
  • 7 Документы процесса разработки и управления требованиями (по Вигерсу)
    • 7.1 Документы процесса разработки требований
    • 7.2 Документы процесса управления требованиями
    • 7.3 Пример дорожной карты совершенствования процессов работы с требованиями
  • 8 Документ по управлению требованиями

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

Сбор требований

Прежде чем начинать проект, обязательно нужно знать, какой результат (продукт) вы хотите получить. И порой этот продукт необходимо описать самым тщательным образом. Иными словами, нужно знать, какие требования заказчик предъявляет к продукту. Полный набор этих требований называют каталогом требований, или спецификацией.
Крупные и сложные проекты обычно насчитывают тысячи требований. Бизнес-анализ как раз и позволяет выявлять проблемы и определять, что требуется для их преодоления. В крупных проектах, таких, как разработка программного обеспечения, сбор требований является одним из важнейших этапов жизненного цикла проекта, котоорыый может занять несколько недель/месяцев.
Для выявления требований проводится серия структурированных интервью с заказчиками, которые позволяют точно определить их пожелания к готовому продукту. Попытка напрямую узнать у заказчика, какие результаты ему нужны, может закончится крахом: заказчик станет выдвигать все новые и новые требования, так что вы просто будете не в силах их удовлетворить. Помните, любое требование влияет на продолжительность и стоимость проекта. Соответственно, получая подробный список требований, вам нужно знать, являются ли они:

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

Выжимка по процессу формирования требований

Функциональные требования — это требования к системе.
Бизнес-требования — эквивалентно бизнес-целям.
Между ними — Пользовательские требования, User Requirements.
Пользовательские требования формулируются в терминах предметной области, а функциональные требования — в терминах системы.

Бизнес-процессы — самое начало работы.
Например, можно рассмотреть процессы RUP/MSF (упрощенная последовательность):
1. Бизнес-моделирование
2. Выявление требований
3. RUP: Анализ и проектирование, MSF: концептуальный, логический и физический дизайн
4. Реализация
5. Тестирование
6. Опытно-промышленная эксплуатация
7. Support и развитие системы

Совсем упрощенно:
1. От заказчика поступает начальная концепция системы (в нескольких предложениях что они хотят, что это позволит достигнуть и т.д.) — по сути это и есть бизнес-требования.
2. Приступаем к моделированию бизнес-процессов, которые хотим автоматизировать (тут в помощь нам ARIS, IDEF0/IDEF3, UML), возможно, строим дополнительную модель (оптимизированную), в которой будут прописаны бизнес-процессы после автоматизации.
3. Вытрясаем из заказчика требования к разрабатываемой системе (это будут пользовательские требования).
4. На основе пользовательских требований формулируем функциональные требования к системе (пользовательские требования — не единственный источник функциональных требований).

Типовая структура требований выглядит как «Система должна … /утверждение о необходимом функциональном поведении системы/» или «система должна позволять … /утверждение о возможности, предоставляемой пользователю или внешней системе/.

Например:
«Система должна вести журнал всех действий пользователя» или «Система должна позволять создавать новые Проекты».

Пример различий между пользовательскими и функциональными требованиями:
Пользовательское: «Система должна выводить отчеты на печать»
Функциональное: «Система должна обеспечивать вывод отчетов на печать, обеспечивать возможность выбора и настройки локального или сетевого принтера, выбора ориентации бумаги».

Пользовательские и функциональные требования как правило связаны между собой. Это необходимо для отслеживания зависимостей требований друг от друга. В системах управления требованиями (например, Borland CaliberRM, TelelogicDoors, Rational RequisitePro) для этого есть так называемые «матрицы трассировки», на которых графически стрелками показываются зависимости между требованиями.

Важно сохранять пользовательские требования для хранения их в первоначальном виде, отслеживания источника их возникновения (вплоть до конкретного лица), расстановки их приоритетов (с точки зрения пользователя) и т.д.

Схема процесса разработки с уровнями требований

requirement_management

Формирование и анализ требований

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

Аттестация требований

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

Подготовка к интервью по сбору требований у заказчика

interview_requirements

Классификация и описание требований на пути от бизнеса к технической реализации

Компания — Бизнес-требования

Источники: Топ-менеджмент компании
Документ: Бизнес-требования (обоснование потребностей инициативы)
Ответственный: Менеджер проекта

Состав бизнес-требований может отличаться на практике. Обычно включаются следующие пункты:

  1. Описание контекста и списка ключевых заинтересованных лиц
  2. Описание целей создания системы и критериев достижения
  3. Ключевые бизнес-требования к решению и их приоритеты
  4. Существующие и возможные ограничения на решение

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

Заказчик — Документ требований заинтересованных лиц

Этот документ описывает рекомендуемое содержание документа требований заинтересованных лиц:

  • Бизнес-назначение
  • Бизнес-рамки
  • Обзор бизнеса
  • Заинтересованные лица
  • Организационная среда
  • Цели и результаты
  • Бизнес-модель
  • Информационная среда
  • Бизнес-процессы
  • Политики и правила
  • Ограничения деятельности
  • Организационная структура
  • Концепция использования системы
  • Сценарии эксплуатации
  • Проектные ограничения

Пользователь — Требования пользователя

Пользовательские требования — описание на естественном языке (плюс поясняющие диаграммы) функций, выполняемых системой, и ограничений, накладываемых на неё.
Источники: Пользователь
Документ: Пользовательские требования/Требования к ПО
Ответственный: Системный аналитик

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

Проблемы при формировании пользовательских требований

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

Системные требования

Системные требования описывают свойства и методы всех объектов системы. Программирование – это разработка и реализация структур данных и алгоритмов. Для разработки системы программисту необходимо знать структуры данных, необходимые для реализации системы, и алгоритмы (бизнес-правила/процедуры/пакеты обработки данных), которые ими манипулируют. Системные требования — детализированное описание системных функций и ограничений, которое иногда называют функциональной спецификацией. Она служит основой для заключения контракта между покупателем системы и разработчиками ПО.
Системные требования — это более детализированное описание пользовательских требований.
Они обычно служат основой для заключения контракта на разработку программной системы и поэтому должны представлять максимально полную спецификацию системы в целом. Системные требования также используются в качестве отправной точки на этапе проектирования системы. Спецификация требований может строиться на основе различных системных моделей, таких, как объектная модель или модель потоков данных.

Функциональные требования

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

Стандартные формы для специфицирования функциональных требований:

  • Описание функции или объекта.
  • Описание входных данных и их источники.
  • Описание выходных данных с указанием пункта их назначения.
  • Указание, что необходимо для выполнения функции.
  • Если это спецификация функции, необходимо описание предварительных условий (предусловий), которые должны выполняться перед вызовом функции, и описание заключительного условия (постусловия), которое должно быть выполнено после завершения выполнения функции.
  • Описание побочных эффектов (если они есть).

Функциональные требования (functional requirements) определяют функциональность ПО, которую разработчики должны построить, чтобы пользователи смогли выполнить свои задачи в рамках бизнес-требований. Иногда они называются требованиями поведения (behavioral requirements), они содержат положения с традиционным «должен» или «должна»: «Система должна по электронной почте отправлять пользователю подтверждение о заказе».

Нефункциональных требований

Нефункциональные требования — Описывают характеристики системы и её окружения, а не поведение системы. Здесь также может быть приведён перечень ограничений, накладываемых на действия и функции, выполняемые системой.
Они включают временные ограничения, ограничения на процесс разработки системы, стандарты и т.д.
Нефункциональные требования не связаны непосредственно с функциями, выполняемыми системой. Они связаны с такими интеграционными свойствами системы, как надёжность, время ответа или размер системы. Кроме того, нефункциональные требования могут определять ограничения на систему, например на пропускную способность устройств ввода-вывода, или форматы данных, используемых в системном интерфейсе.

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

Нефункциональные требования описывают цели и атрибуты качества. Атрибуты качества (quality attributes) представляют собой дополнительное описание функций продукта, выраженное через описание его характеристик, важных для пользователей или разработчиков. К таким характеристикам относятся:

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

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

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

Требования к продукту

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

Организационные требования

Организационные требования отображают политику и организационные процедуры заказчика и разработчика ПО. Включают стандарты разработки программного продукта, требования к реализации ПО (т.е. к языку программирования и методам проектирования), выходные требования, которые определяют сроки изготовления программного продукта, и сопутствующую документацию.

Требования к интеграции

Требования к интеграции описывают низкоуровневый интерфейс взаимодействия новой системы с несколькими другими системами компании. Цель данного документа обосновать и формализовать выбор метода интеграции. Документ содержит в себе описание методов и способов интеграции с внешними системами, сервисами.

Интеграция приложений – это технологические процессы, используемые для организации обмена данными между различными информационными системами с помощью средств интеграции, предоставляемыми приложениями. К средствам интеграции, предоставляемыми приложениями относятся API функции, пакеты обработки и экспорта/импорта данных.

Интеграция через ESB

Интеграция через ESB (Enterprise Service Bus, «Сервисная шина предприятия») применяется для обеспечения информационных систем возможностями для взаимодействия с сервисами. Использование этого метода интеграции приложений обеспечивает слабую связанность между информационными системами, так как системы взаимодействуют не напрямую, а через сервисы, размещенные на сервисной шине предприятия.
Основными функциями ESB являются:

  • Физическое размещение сервисов.
  • Размещение адаптеров к информационным системам.
  • Предоставление канала для взаимодействия информационных систем.
  • Обеспечение независимости от адресов, протоколов и интерфейсов при взаимодействии систем.
  • Трансформация данных при взаимодействии.
  • Маршрутизация сообщений.
  • Обеспечение инфраструктурной функциональности, включая мониторинг, логирование, безопасность, и т. д.

Интеграция точка-точка

Интеграция приложений напрямую, является методом интеграции, при котором взаимодействие между системами происходит без применения универсального централизованного посредника, такого, как сервисная шина предприятия (ESB).

Интеграция данных

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

Задачи интеграции данных:

  • Передачи больших объемов данных, включающая логику преобразования данных.
  • Синхронизация (репликация) данных информационных систем

Интеграция ETL
Интеграция ETL характеризуется следующим сценарием:
На платформе ETL пишется процесс, который
1) С помощью средств доступа к БД 1ой системы забирает из таблиц 1ой системы данные
2) С помощью средств и ресурсов БД 1ой или 2й системы или своих собственных механизмов осуществляет преобразование к структурам таблиц 2й системы
3) Загружает данные в таблицы БД 2й системы.

Файловый обмен
Файловый обмен характеризуется следующим сценарием:
1) Приложение, которому требуется передать данные другому приложению, сохра¬няет их в файле.
2) Разрабатывается интеграционное решение, которое преобразует формат файла в формат, требуемый другим приложением. (В частном случае для этого дорабатывается одна из интегрируемых систем)
3) Приложение которому нужны данные, загружает подготовленный файл.

Требования к пользовательскому интерфейсу

Пользовательский интерфейс — часть программной системы. Требования к пользовательскому интерфейсу могут быть разбиты на две группы:

  • требования к внешнему виду пользовательского интерфейса и формам взаимодействия с пользователем;
  • требования по доступу к внутренней функциональности системы при помощи пользовательского интерфейса.

К первой группе можно отнести следующие типы требований:

  • Требования к размещению элементов управления на экранных формах
  • Требования к содержанию и оформлению выводимых сообщений
  • Требования к форматам ввода

Ко второй группе относятся следующие типы требований:

  • Требования к реакции системы на ввод пользователя
  • Требования к времени отклика на команды пользователя

Управление требованиями

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

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

Классификация изменяемых требований

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

Процесс управления изменениями

Анализ проблем изменения спецификации. Процесс начинается с определения проблем в требованиях или с прямого предложения внесения изменений. На этой стадии проблема или предложенные изменения анализируются для проверки их обоснованности. Затем могут быть сделаны более определённые предложения относительно изменений в требованиях.
Анализ осуществимости и расчёт их стоимости. Эффект от внесения предложенного изменения оценивается с использованием оперативного контроля. Стоимость изменений оценивается двумя показателями: стоимостью внесения изменения в спецификацию и стоимостью внесения изменений в структуру системы и непосредственно в программный код. По окончании этого этапа принимается решение, продолжать или нет внесение изменений в систему.
Реализация изменений. Реализация изменений в системной спецификации, структуре системы и программном коде.

Кто читает документацию

Заказчики системы. Определяют требования, проверяют специфицированные требования на соответствие требованиям заказываемой системы. Они могут вносить изменения в спецификацию.
Руководство компании-разработчика. Использую спецификацию для расчёта цены системы и для планирования процесса разработки системы.
Разработчики системы. Используют спецификацию в процессе разработки системы.
Инженеры, тестирующие систему. Используют спецификацию при разработке тестов, необходимых для аттестации системы.
Инженеры поддержки системы. Спецификация помогает разобраться в системе и понять, как взаимодействуют её отдельные компоненты.

Как правильно сформулировать и контролировать цель проекта?

Как и у всех путешествий, у проекта улучшения процессов должна быть цель. Если не определить конкретных целей по улучшению, люди не смогут работать согласованней, а вы не сможете сказать, есть ли движение вперед, не сможете определять приоритеты задач и сказать, когда цель достигнута.
Метрика — измеримая характеристика проекта, продукта или процесса.
Ключевые показатели производительности (KPI) — это метрики, привязанные цели и служащие мерилом продвижения проекта к достижению определенной цели или результата. Набор KPI-показателей может отображаться на контрольной панели, показывая приближение к целям.

При определении целей по совершенствованию процессов нужно иметь в виду два обстоятельства.

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

Если вы выбрали реалистичные KPI для своих целей, но не видите признаков прогресса по истечении разумного времени, нужно провести расследование:

  • Правильно ли были проанализированы проблемы и выявлены их первопричины?
  • Выбрали ли вы действия по улучшению, непосредственно направленные на эти первопричины?
  • Был ли реалистичным план реализации этих действий по улучшению? Был ли план реализован, как планировалось?
  • Изменилось ли что-то со времени исходного анализа, что должно было заставить переориентировать действия команды по улучшению?
  • Действительно ли члены команды приняли новые приемы работы и прошли период обучения, чтобы начать активно применять их на практике?
  • Были ли поставлены реалистичные цели, которые команда была в состоянии достичь?

Документы процесса разработки и управления требованиями (по Вигерсу)

Высокопроизводительные проекты отличаются эффективными процессами на всех этапах создания требований: выявления, анализа, спецификации, проверки и управления. Для облегчения выполнения этих процессов каждой организации необходим набор документов процесса (process assets).
Любой процесс определяют выполняемые действия и получаемые результаты; документы процесса помогают команде выполнять процессы последовательно и эффективно. Эти документы позволяют участникам проекта понять, какие шаги им следует предпринять и каких результатов от них ждут.requirements_management_process_documents

Документы процесса разработки требований

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

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

  • Процесс управления требованиями описывает действия работающей над проектом команды для различения версий требований, определения базовых версий, работой с изменениями требований, различными версиями документации по требованиям, учетом и отчетностью о состоянии требований и накоплением информации по отслеживанию.
  • Процедура отслеживания состояния требований подразумевает мониторинг состояния каждого функционального требования и отчетность по нему.
  • Процесс управления изменениями определяет пути предложения, передачи, оценки и разрешения нового требования или его модификации.
  • Шаблон устава совета по управлению изменениями. Устав совета по управлению изменениями описывает состав, функции и рабочие процедуры этого совета.
  • Контрольный список анализа последствий изменений в требованиях. Анализ последствий помогает вам рассмотреть задачи, побочные эффекты и риски, связанные с реализацией каждого изменения в требованиях, а также оценить объем работы по задачам.
  • Процедура отслеживаемости требований определяет, кто предоставляет данные по отслеживаемости, которые позволяют отслеживать связи требований с другими артефактами проекта, кто их собирает и управляет ими и где они хранятся.

Пример дорожной карты совершенствования процессов работы с требованиями

roadmap_process_improvement_work_requirements

Документ по управлению требованиями

4.9
9
Голоса

Рейтинг статьи

Шпаргалка бизнес-аналитика. Бизнес-требования

Print Friendly, PDF & Email

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

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

Источник материала: https://systems.education/biz-req и https://systems.education/biz-req-dev

Роль Бизнес-требований (БТ)

  1. Бизнес-требования определяют смысл проекта и обосновывают его необходимость
  2. Бизнес-требования – это удобный инструмент договоренности: они объективны, компактны и понятны стейкхолдерам
  3. Из бизнес-требований вытекают критерии приемки проекта
  4. Бизнес-требования используются для определения рамок проекта
  5. Бизнес-требования помогают принимать решения о приоритетах
  6. В Scrum бизнес-требования являются (во всяком случае, так должно быть) основным инструментом владельца продукта для управления продуктовым бэклогом и для согласования его с другими стейкхолдерами

Требования в бизнес-анализе

Версия 3 BABOK Guide определяет требования таким образом:

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

Для формулирования требования потребность нужно поместить в какой-то контекст. Например потребность «Люди испытывают ежедневную потребность в пище» слишком общая. Если ее поместить в контекст морского путешествия, то требование становится уже более осмысленным: «Продукты питания, используемые в рационе моряков, должны сохранять пригодность для употребления в пищу в течение, как минимум, 30 дней при температуре до +30оС и высокой влажности, поскольку моряки длительное время вынуждены обходиться без поставок продовольствия».

Способы выполнения требования могут быть разными и они называются решениями.

Потребности, требования, решения, контекст

Потребности, требования, решения, контекст

  • Голубой блок обозначает контекст проекта и его элементы.
  • Красный блок в левой части — потребности бизнеса и стейкхолдеров.
  • Желтый блок в центре — бизнес-требования, требования стейкхолдеров и требования к решению.
  • Зеленый блок справа — решения, удовлетворяющие требования (бизнес-процессы и информационные системы).

Потребности бизнеса, подлежащие удовлетворению в конкретном контексте, отражаются в бизнес-требованиях.

Решением для бизнес-требования обычно является бизнес-процесс или организация, выполняющая множество бизнес-процессов.

Когда бизнес-процесс реализуется в качестве решения, в нем начинают участвовать конкретные люди (стейкхолдеры), у которых возникают потребности, связанные с участием в бизнес-процессе. Из этих потребностей вырастают требования стейкхолдеров, а из них — требования к решению.

Полное решение состоит из бизнес-процессов и [информационных] систем, поддерживающих и обеспечивающих эти процессы. Системы реализуют требования к решению.

Пример определения бизнес-требования на основе анализа потребности

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

Если бизнес-модель компании предполагает поддержание товарных запасов на складе, то бизнес-требование можно сформулировать так:

Для поддержания нужных товарных запасов на складах компании, их необходимо регулярно (BR-INV-01) пополнять через формирование заказов поставщикам.

Размер поддерживаемого запаса каждого товара должен определяться, исходя из оптимизации затрат и минимизации рисков упущенной прибыли (BR-INV-02).»

В тексте этого требования есть две ссылки: BR-INV-01 и BR-INV-02. Здесь BR означает «бизнес-правило» (Business Rule), а INV — Inventory (запас). Это ссылки на бизнес-правила, определяющие то, с какой именно регулярностью нужно пополнять запасы, и каков алгоритм расчета оптимального товарного запаса.

Бизнес-правило — один из типичных артефактов, сопровождающих бизнес-требования.

Артефакты бизнес-анализа, сопровождающие бизнес-требования

По мере определения бизнес-требований появляются:

  1. Доменные модели — высокоуровневые информационные модели предметной области.
  2. Глоссарий предметной области.
  3. Модели состояния объектов управления: на этом этапе мы определяем, какими объектами мы хотим управлять, и какие состояния нас интересуют (или какие состояния мы хотим отслеживать).
  4. Метрики и показатели этой деятельности, которые говорят нам о том, что важно для бизнеса и как мы оцениваем то, насколько хорошо или плохо, лучше или хуже выполняется его деятельность.
  5. Бизнес-правила: описания применяемых в данной компании алгоритмов, нормативов, ограничений, проверок, и политик.

 Немного слов про бизнес-правила

Как правильно описывать бизнес-правила?

  1. Бизнес-правило должно быть сформулировано на языке бизнеса. В описании бизнес-правил не должны использоваться технические термины. Язык написания бизнес-правил должен быть понятным представителю бизнеса, не являющимся IT-специалистом. После описания бизнес-правил, постарайтесь абстрагироваться от своих технических знаний, поставьте себя на место представителя бизнеса, руководителя компании, для который вы разрабатываете продукт. Понятен ли вам написанный документ? Не содержит ли документ технических терминов, указания систем и языков программирования?
  2. Бизнес-правило должно описывать правило бизнеса, а не работу системы. Описание бизнес-правил должно содержать те требования бизнеса, которые должна решить система, но без описания работы системы. Например, у бизнеса есть правило: «Отслеживать время прихода и ухода сотрудников на рабочее место». Бизнес-правило не должно содержать описания, как достичь соблюдения данного правила: будет ли сотрудник записываться в журнал прихода и ухода, или на входе будет стоять автоматическая пропускная система, которая будет фиксировать время.
  3. Бизнес-правило должно описывать ограничения: какие операции не могут быть выполнены. Ограничительные бизнес-правила могут определять ограничения пользователей. Например: “В полис ОСАГО страховщик может вписать не более 5-ти водителей”; «Оформить заказ-онлайн может только клиент компании».
  4. Бизнес-правило подчиняется бизнесу: принять, изменить, отменить. Представители бизнеса могут изменять бизнес-правила, вносить поправки или отменять.

Рассмотрим несколько примеров бизнес-правил и требований к системе

Бизнес-правило Требование к системе
Постоянный посетитель библиотеки может отложить для себя до 10 книг. Посетитель, имеющий карточку в библиотеке; посещающий библиотеку не менее 1 раза в месяц является постоянным.

Постоянный посетитель должен иметь возможность отложить для себя 10 книг.

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

Пользователь, должен иметь возможность оформить заказ.

Заказ может быть оформлен:

с доставкой по указанному адресу;

с оплатой наличными при получении;

с оплатой банковской картой при получении.

Требования стейкхолдеров

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

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

Как специалисту, отвечающему за поддержание запасов, мне нужно иметь возможность:

  1. Автоматически рассчитывать заказ по каждому товару с использованием определенного алгоритма (здесь прозвучит то же самое бизнес-правило, которое упоминалось в бизнес-требовании). Почему автоматически? Потому что мне надо на 4 складах поддерживать 3000 товарных позиций, поступающих от 100 поставщиков — это невозможно или крайне сложно обрабатывать вручную.
  2. По любой позиции автоматически рассчитанного заказа видеть то, как именно была посчитано это значение и почему оно именно такое — алгоритм может не учитывает какие-то известные мне нюансы. Например, ожидаемое значительное повышение или снижение продаж.
  3. Менять количество в автоматически рассчитанном заказе — в конечном счете за заказ отвечаю я, а не система. Система не может учесть всё, и если я считаю нужным поменять заказанное количество, у меня должна быть возможность это сделать.
  4. Смотреть для проверки не на все 3000 позиций, а только на те, где расчеты системы могут быть вызвать сомнения. Например, недостаточная история продаж, высокая волатильность продаж или другие подобные факторы.

Примерно так будет рассказывать нам живой человек. «Пользовательская история» (User Story) — естественная форма представления требований стейкхолдеров, имеющая формат <роль> <задача> <нужная возможность>.

Например:

Как специалисту, отвечающему за поддержание запасов, для формирования заказов поставщикам мне нужно:

  1. Автоматически рассчитывать заказ по каждому товару с использованием BR-INV-02;
  2. по любой позиции заказа иметь возможность посмотреть детали расчета и
  3. вручную изменить заказываемое количество,
  4. видеть отдельно те позиции заказа, по которым, возможно, требуется моя корректировка (BR-INV-03)

Обычно требованиям стейкхолдеров сопутствуют дополнительные артефакты:

  • Карты стейкхолдеров (показывают, кто участвует в процессах)
  • Модели и другие описания процессов
  • Варианты использования (Use Cases)
  • Образцы данных, с которыми работают стейкхолдеры (помогают понять ситуацию и потребности стейкхолдеров)

Функциональные и нефункциональные требования

Нефункциональные требования (НФТ) определяют свойства, которые система должна демонстрировать, или ограничения, которые она должна соблюдать, не относящиеся к поведению системы. Например, производительность, удобство сопровождения, расширяемость, надежность, факторы эксплуатации.

Из бизнес-требований, помимо функциональных (ФТ) и нефункциональных требований, напрямую могут вытекать ещё и требования причастных сторон. В свою очередь, из требований причастных сторон могут вытекать ФТ и НФТ.

В наглядном виде модель выявления требований представлена на схеме:

модель выявления требований

Почему бизнес-требования так важны

Бизнес-требования играют важную роль на проекте, поскольку помогают определить смысл проекта и обосновать его необходимость. Именно бизнес-требования, как правило, используются для определения рамок проекта, то есть входят в состав концепции проекта.

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

Из БТ вытекают критерии приемки и именно на их основе производится оценка результатов разработки ИТ-решения.

Также бизнес-требования часто используются на проекте для приоритизации решений: если есть понимание, как то или иное решение связано с БТ, приоритизировать его не составит труда. Именно БТ являются снованием для принятия решений в ходе проектирования и внесения изменений в реализацию проекта.

Кроме того, бизнес-требования в Agile — это ключевой инструмент Product Owner для управления бэклогом продукта и ведения переговоров со стейкхолдерами.

Какие бывают бизнес-требования?

Согласно концепции Six Sigma, бизнес-требования — это критичные активности предприятия, подлежащие выполнению для достижения целей организации, вне зависимости от конкретного решения.

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

  • Определением значимых характеристик продуктов или услуг.
  • Распознаванием и обработкой событий.
  • Принятием решений (своевременность, правильность).
  • Сбором, обработкой, хранением и предоставлением информации.
  • Обеспечением возможности выполнения действий (субъект, действие, объект, время, условия, способ).
  • Предотвращением возможности выполнения действий (субъект, действие, объект, время, условия, способ

Ниже приведены примеры бизнес-требований по видам критичных активностей.

Вид БТ: Значимые характеристики продуктов или услуг

Примеры БТ:

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

Вид БТ: Распознавание и обработка событий

Примеры БТ:

  • Банк должен своевременно получать оповещения о сбоях в работе банкоматов.
  • К моменту начала этапа работ, все нужные материалы и оборудование должны находиться на объекте строительства и быть готовыми к использованию.
  • Сотрудники должны быть своевременно проинформированы о назначенных им задачах.

Вид БТ: Принятие решений

Примеры БТ:

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

Вид БТ: Сбор, обработка, хранение и предоставление информации

Примеры БТ:

  • С момента обнаружения дефекта и до его полного устранения должна регистрироваться и храниться следующая информация.
  • Инвестиционный банк в конце каждого рабочего дня должен направлять Регулятору информацию о…
  • Для принятия решений об участии в тендере необходимы результаты предварительной оценки себестоимости проекта.

Вид БТ: Обеспечение возможности выполнения действий

Примеры БТ:

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

Вид БТ: Предотвращение возможности выполнения действий

Пример БТ:

  • Должна исключаться возможность доступа к защищенным ресурсам лиц, не являющихся сотрудниками компании.

 Проблемы в бизнес-требованиях

Можно выделить несколько типичных признаков проблем с бизнес-требованиями.

  • Неконкретность (слишком абстрактная формулировка)
  • Невозможность проверки (нет понимания, что является индикатором выполнения требования)
  • «Магические» числа (приведены какие-то необоснованные данные: «время обработки заявки 14 минут»)
  • Непонятная польза (не написано, для чего делаем то, что делаем; действительно ли это необходимо)
  • Избыточная детализация (зачастую делает требование слишком жестким и нечитаемым)
  • Невыполнимость (например, требование «обеспечить 100%-ую достоверность данных». Для чего это требование? Почему возникают недостоверности? С этой проблемой можно как-то бороться или это просто факт?)
  • Несогласованность (противоречивость; с одной стороны Покупатель хочет найти продукт с наилучшими качествами по наименьшей цене, а с другой — Продавец хочет стимулировать покупку продуктов, приносящих наибольшую прибыль)
  • Нерелевантность (приведено требование, которое вообще не понятно, какое отношение имеет к данному проекту)
  • Привязка к конкретному решению, в том числе — конкретный бизнес-процесс

Примеры некорректных бизнес-требований

Обеспечить высокое качество обслуживания — Как проверить, что качество обслуживания высокое?

  1. Сократить среднее время обработки заказа до 14 минут — Почему до 14 минут, чем это обосновано? А почему не до 1 минуты? Какую пользу принесет сокращение времени обработки заказа?
  2. Обеспечить 100% достоверность учетных данных — Как мы узнаем какая достоверность? Как можно определить, что данные достоверны? В результате чего возникает недостоверность? С этим реально можно что-то сделать? Выполнимо ли данное требование?
  3. Гарантировать правильность принимаемых решений — Что выступает гарантом? Это выполнимо?
  4. Внедрить ERP — Кому и зачем это нужно? В чем проблема?

Типовые ловушки аналитика

Проблемы с требованиями, как правило, возникают, когда аналитик попадает в одни и те же типовые ловушки. Вот основные ловушки аналитика при работе с бизнес-требованиями:

  • Формальность — «пишу, потому что надо здесь что-то написать».
  • Узкие рамки анализа — не рассматриваем ничего, что выходит за рамки проекта.
  • Превращение в аудит — выясняем все обо всем «на всякий случай».
  • Превращение метода в цель — строгое следование определенному шаблону с превращением средств в цель и потерей основной цели проекта.

Что можно сделать с каждой из этих ловушек?

Ловушка Описание Решение
Формальность «Пишу, потому что надо здесь что-то написать» Ставить себя на место читателя (необходимо понимать, что и для кого мы пишем).
Узкие рамки анализа Фокусировка только на том, что относится к проекту, т.е. не рассматриваем ничего, что выходит за рамки проекта Анализировать область шире, чем те рамки, которые хотим установить для проекта.
Превращение в аудит «На всякий случай» выясняем все обо всем Постоянно спрашивать себя: «как это связано с проектом?»
Превращение метода в цель Строгое следование определенному шаблону с превращением средств (канва бизнеса, бизнес-процессы, стейкхолдеры) в цель и потерей основной цели проекта Задать себе вопрос: «можно ли обойтись без э

Документирование бизнес-требований

В практике бизнес-аналитика присутствует два основных подхода документирования требований:
1. Монолитно

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

2. Дробно

  • Каждое требование описывается отдельно.
  • Каждому требованию присваивается уникальный идентификатор.
  • Возможна трассировка к конкретному бизнес-требованию.

Шаблон монолитного описания БТ

Карл Вигерс в своей книге «Разработка требований к программному обеспечению. Руководство» предлагает хороший шаблон описания БТ монолитом в рамках документа Scope and Vision (рамки и видение). В этом документе выделяется раздел Бизнес-требования, который включает в себя:

  • Контекст.
  • Описание возможности.
  • Бизнес-цели.
  • Метрики успешности.
  • Образ результата (Vision).
  • Деловые риски.
  • Предположения и зависимости бизнеса.

Советы Вигерса по описанию БТ

  • Сокращайте шаблон в соответствии с потребностями.
  • Заполняйте не сверху вниз, а по мере поступления информации.
  • Пустой раздел — признак его ненужности или необходимости дополнительного изучения.
  • Не повторяйте то, что уже описано в другом месте — сошлитесь на имеющееся описание.
  • Исходите из возможности повторного использования БТ в других проектах.
  • Выявляйте конфликты, противоречия и выносите на обсуждение.
  • Проводите повторное рассмотрение БТ при каждой смене лиц, принимающих решения, чтобы убедиться, что понимание БТ не изменилось

Шаблон дробного описания БТ

Ниже представлен авторский шаблон дробного описания бизнес-требований. Он состоит из нескольких ключевых элементов:
1. Заголовок, который включает в себя:

  • Уникальный идентификатор.
  • Краткое описание.

2. Определение, развернутое объяснение, что из себя представляет БТ.
3. Источник, откуда это требование взялось.
4. Зависимости, если они есть между другими требованиями.
5. Обоснование, краткое пояснение мотивации.
6. Комментарий, любые пояснения. В приведенном ниже примере представлено описание диаграммы состояний.

Рубрика: Качество
требований
,Статья

Данная
статья является второй в серии статей,
которые я публикую в рамках темы
“Управление качеством требований”.
Введение к серии было представлено на
данном сайте в теме “
Управление
качеством требований. Начало.

от 12 декабря 2009 года.

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

Определение требований

На сегодняшний день существует множество
определений термина требование к
программному обеспечению (software
requirement). Наиболее подходящим, на мой
взгляд, является определение, приведенное
в [2]:

Требования — условия или возможности,
необходимые пользователю для решения
проблем или достижения целей.

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

Классификация требований

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

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

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

Бизнес-требования

«Бизнес требования» (business requirements)
описывают высокоуровневые цели
организации или заказчиков системы.
Как правило, их высказывают те, кто
финансируют проект, покупатели системы,
менеджеры пользователей, отдел маркетинга.
«Бизнес требования» относятся к
наивысшему уровню абстракции требований
и обычно характеризуют цели организации,
ее миссию и решения проблем бизнеса.

Для проектов, разрабатываемых в
соответствии с ГОСТ, «бизнес требования»
описывают цели и назначение разрабатываемой
системы, и могут размещаться в
соответствующем разделе технического
задания.

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

Ключевые возможности

«Ключевая возможность» (key feature) — это
набор логически связанных функциональных
и нефункциональных требований, которые
обеспечивают возможности пользователя
и удовлетворяют «бизнес требованиям».
В области коммерческого программного
обеспечения «ключевая возможность»
представляет собой узнаваемую всеми
заинтересованными лицами группу
требований, которые важны при принятии
решения о покупке — элемент маркированного
списка в описании продукта.

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

Соседние файлы в папке 09.17.12

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

Одна из основных профессиональных обязанностей системного и бизнес-аналитика – это управление требованиями при разработке программного обеспечения. Сегодня мы рассмотрим, какие виды требований выделяет BABOK®Guide и как это профессиональное руководство по бизнес-анализу рекомендует работать с ними.

Что такое требование и дизайн по BABOK

Начнем с определений по BABOK®Guide: требование – это пригодное для практического использования представление решения в виде условия или возможности, которые необходимы заинтересованной стороне (стейкхолдеру) для достижения цели, инициированной потребностью. BABOK®Guide различает следующие виды требований:

  • Бизнес-требование (business requirement), которое отвечает на вопросы «Почему это нужно?» или «Зачем я этого хочу?» и представляет собой отображение целей, задач и результатов, объясняющих, для чего было инициировано изменение и каким образом будет оцениваться успех его реализации;
  • Требование стейкхолдера (stakeholder requirement), которое отвечает на вопрос «Что нужно?» и описывает потребности отдельной заинтересованной стороны или целой группы стейкхолдеров, необходимые для выполнения бизнес-требований. Фактически, они могут играть роль проводника от бизнес-требований до требований к решению.
  • Требование к решению (solution requirement), которое отвечает на вопрос «Что я хочу?» и описывает возможность или качество решения, удовлетворяющие требованиям стейкхолдера. Требования к решению делятся на функциональные требования и нефункциональные. Функциональное требование (functional requirement) означает поведенческую возможность, которую должно предоставлять решение. Нефункциональное требование (non-functional requirement) описывает особенности эксплуатации: производительность, информационную безопасность, удобство использования и выражается в измеримых показателях, которые являются своего рода ограничениями варианта реализации (дизайна) решения. Подробнее про нефункциональные требования читайте в нашей новой статье.
  • Переходное требование (transition requirement), которое отвечает на вопрос «Каковы условия реализации перехода от бизнес-потребности к внедренному решению?», описывая возможности решения и условия, каким оно должно соответствовать для перехода из текущего состояния в целевое. В отличие от других видов требования, переходное требование является временным, т.к. становится не нужным после завершения изменения. Например, требование относительно форматов и процедур преобразования данных при переходе от одной системы к другой.

Лучшее из BABOK®Guide: ТОП-10 задач и 20+ техник для аналитика

Код курса
EXBAB
Ближайшая дата курса

17 апреля, 2023

Длительность обучения
24 ак.часов
Стоимость обучения
45 000 руб.

Итак, потребность трансформируется в требование, которое, в свою очередь, в дальнейшем преобразуется в дизайн – пригодное для практического использования представление решения. Требования и дизайны очень близки друг другу: в частности, при работе с ними часто используются одни и те же техники выявления, моделирования и анализа. Требование является входом для разработки дизайна, который может повлечь дополнительное выявление и анализ требований. Тем не менее, BABOK®Guide дифференцирует требования и дизайны по следующему принципу:

  • если фокус лежит на понимании потребности, речь идет о требовании;
  • когда речь идет о конкретном варианте реализации, т.е. решении, аналитик имеет дело с дизайном.

При этом руководство BABOK отмечает, что в ИТ-сфере термин “дизайн” обычно используется именно для технических вариантов решения, которые создаются непосредственно специалистами по реализации: разработчиками программного обеспечения, ИТ-архитекторами и т.д. А требование означает выдвигаемые бизнесом условия или ожидаемые возможности.

BABOK, трассировка требований, управление требованиями

Трассировка требований: от потребности к дизайну

Задачи управления требованиями в BABOK®Guide

Из 6-ти областей знаний BABOK целых 2 посвящены непосредственной работе с требованиями: «Управление жизненным циклом требований» (Requirement Life Cycle Management) и «Анализ требований и определение дизайнов» (Requirements Analysis and Design Definition). Как видно из названия, область знаний «Анализ требований и определение дизайнов» носит инструментальный характер и сосредоточена на моделировании – именно здесь разрабатываются различные виды процессных и структурных диаграмм, например, UML, BPMN, IDEF0, EPC, DFD или ERD, чтобы описать поведение и строение проектируемого решения, а также процедуры работы с ним через решение следующих задач бизнес-анализа:

  • Спецификация и моделирование требований (Specify and Model Requirements)
  • Верификация требований (Verify Requirements)
  • Валидация требований (Validate Requirements)
  • Определение архитектуры требований (Define Requirements Architecture)
  • Определение вариантов дизайна (Define Design Options)
  • Анализ потенциальной ценности и рекомендация решения (Analyze Potential Value and Recommend Solution)

Чем отличается верификация от валидации, читайте в нашей новой статье. А непосредственное управление требованиями выполняется в рамках области знаний «Управление жизненным циклом требований» и включает следующие задачи работы с требованиями:

  • Трассировка (Trace Requirements)
  • Поддержание (Maintain Requirements)
  • Приоритизация (Prioritize Requirements)
  • Оценка изменений (Assess Requirements Changes)
  • Утверждение (Approve Requirements)

Управление бизнес-анализом — курс для руководителей

Код курса
BAMP
Ближайшая дата курса

22 мая, 2023

Длительность обучения
8 ак.часов
Стоимость обучения
15 000 руб.

Графически взаимосвязь между задачами по управлению жизненным циклом требований можно изобразить следующим образом.

Задачи управления жизненным циклом требований по BABOK®Guide, управление требованиями

Задачи управления жизненным циклом требований по BABOK®Guide

Практическое управление требованиями реализуется с помощью соответствующих программных инструментов, например, Archi для моделирования диаграмм, и Jira для трассировки, приоритезации и поддержания требований. В следующей статье мы рассмотрим, как организовать управление требованиями в Agile-проектах с учетом особенностей гибких методологий и строгих предписаний ГОСТов на разработку ТЗ. А процессы и стадии жизненного цикла требований разбираются в этом материале.

Разработка ТЗ на информационную систему по ГОСТ и SRS

Код курса
TTIS
Ближайшая дата курса

24 апреля, 2023

Длительность обучения
12 ак.часов
Стоимость обучения
20 000 руб.

А освоить техники и рекомендации BABOK®Guide по управлению требованиями и другим задачам бизнес-анализа вам помогут курсы Школы прикладного бизнес-анализа в нашем лицензированном учебном центре обучения и повышения квалификации аналитиков, менеджеров и ИТ-специалистов в Москве:

  • Управление бизнес-анализом – курс для руководителей
  • Разработка ТЗ на информационную систему по ГОСТ и SRS

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

Вадим

Вадим


Noveo Test Engineer

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

Цели этого поста заключаются в следующем:

  1. Определить, что такое требование, какие типы и уровни требований выделяют.
  2. Понять, какие существуют методы сбора и выявления требований.
  3. Предоставить почву для дальнейшего изучения сферы системного и бизнес-анализа.

Требования

Начнем с требований как таковых:

  • Что они из себя представляют?
  • Какие виды требований выделяются?
  • Как они согласуются?
  • Какие источники требований можно выделить?

Определение требования

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

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

Требования к ПО — это спецификация того, что должно быть реализовано. В них описано поведение системы, свойства системы или ее атрибуты. Они могут служить ограничениями в процессе разработки системы (Ian Sommerville и Pete Sawyer, 1997).

Требования к ПО — совокупность утверждений относительно атрибутов, свойств или качеств программной системы, подлежащей реализации. Создаются в процессе разработки требований к программному обеспечению (ПО), в результате анализа требований (Википедия).

Из определений можно выделить следующие пункты, которые относятся к требованиям:

  • Спецификация — документ, устанавливающий требования.
  • Реализация — интерпретация требований в виде разработанной системы (одни и те же требования можно реализовать различными способами).
  • Описание поведения системы (то, как система должна работать при различных входных условиях).
  • Описание свойств / атрибутов / качеств системы.

Как видно выше, устоявшиеся термины не отражают всю полноту понятия «требование к ПО», поэтому также стоит отметить следующее: требования охватывают как видение пользователя, так и внешнее поведение системы, а также представление разработчика о некоторых внутренних характеристиках. Они включают как поведение системы в определенных условиях, так и свойства, которые делают систему полезной и удовлетворяющей конечных пользователей.

Термин «требование» охватывает довольно широкую предметную область. Поэтому возникает вопрос типизации и классификации требований.

Уровни и типы требований

Требования к ПО состоят из трех уровней:

  1. Бизнес-требования.
  2. Пользовательские требования.
  3. Функциональные требования.

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

Бизнес-требования BRQ

Бизнес-требование (business requirements) — высокоуровневая бизнес-цель организации или заказчиков системы.

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

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

Если кратко, документ содержит определение следующих понятий:

  • Бизнес-возможности, бизнес-проблемы — факты и события, формирующие бизнес-цели, то есть грубо — причины инициации проекта.
  • Бизнес-цели — цели, которые должны быть решены разработкой и вводом в эксплуатацию системы. Являются критериями успеха проекта.
  • Концепция продукта (Vision) — сжато описывает конечный продукт, который достигнет заданных бизнес-целей.
  • Границы проекта (scope) — показывают, на какую часть конечной концепции продукта будет направлен текущий проект или итерация.

Примеры бизнес-требований:

Сократить время обработки заказа на 50% (цель) — система должна предоставить интерфейс, упрощающий создание заказа (концепция).

Увеличить клиентскую конверсию до 35% (цель) — в системе должны быть представлены механизмы побуждения клиента к заказу (концепция).

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

Источники бизнес-требований (где искать?):

  • Внутренняя документация компании (положения, инструкции, приказы).
  • Документация по предметной области (профильные литература и статьи, исследования).
  • Нормативная документация (законы и иные правовые акты, государственные стандарты).
  • Продукты конкурентов.

Стейкхолдеры (у кого спрашивать?):

  • Инициатор проекта.
  • Руководитель проекта (менеджер проекта).
  • Руководитель структурного подразделения заказчика (коммерческий директор, директор по маркетингу).
  • Бизнес-аналитик.

P.S. Список стейкхолдеров меняется от проекта к проекту, для каждого проекта необходимо отдельно определять список заинтересованных/ответственных лиц. Списки, представленные мной, являются сугубо примерами из моей практики.

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

Пользовательские требования URQ

Пользовательские требования (user requirements) описывают цели или задачи, которые пользователи должны иметь возможность выполнять с помощью продукта, который в свою очередь должен приносить пользу кому-то. Область пользовательских требований также включает описания атрибутов или характеристик продукта, которые важны для удовлетворения пользователе (Карл Вигерс, «Разработка требований к программному обеспечению»).

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

Пользовательские требования также часто именуются фичами.

Фича (функциональность) — функционально обобщенные части системы, решающие отдельные задачи пользователей или интерпретирующие бизнес-процессы (и их артефакты), которые будут реализованы в рамках системы.

Исходя из вышеописанных определений, пользовательские требования содержат:

  • Цели и задачи пользователей.
  • Сценарии использования — способ решения задачи пользователей.
  • Как следствие, описание самих пользователей системы:
  • пользовательские роли,
  • уровни доступа.

В конечном итоге пользовательские требования формируют «Документ пользовательских требований». Пользовательские требования могут быть представлены в виде:

  • текстового описания,
  • вариантов использования, сценариев использования (Use Case),
  • пользовательских историй (User Story),
  • диаграммы вариантов использования.

Как правило, пользовательские требования описываются по следующему шаблону:

Пользователь должен иметь возможность + {тезис}.

Пример пользовательского требования:

Пользователь должен иметь возможность добавить объект в избранное (функциональность).

Источники пользовательских требований требований (где искать?):

  • Анализ и декомпозиция бизнес-требований.
  • Описание бизнес-процессов.
  • Артефакты бизнес-процессов:
  • документы входные/выходные,
  • стандарты,
  • регламенты,
  • обрабатываемые данные,
  • иная информация, используемая и/или производимая в бизнес-процессе.
  • Отраслевые стандарты.
  • Реализованные проекты, проекты конкурентов.

Стейкхолдеры (у кого спрашивать?):

  • Бизнес-аналитик, системный-аналитик.
  • Конечные пользователи — люди, взаимодействующие с системой напрямую.
  • Косвенные пользователи — люди, использующие результаты работы системы, не взаимодействуя с ней напрямую.
  • Представители пользователей.
  • Менеджер проекта.
  • Руководитель структурного подразделения заказчика.

Этот уровень требований напрямую входит в круг обязанностей QA-инженера. В задачи QA на этом уровне входит:

  • Определение соответствия описания требований критериям качества.
  • Анализ требований для проработки сценариев тестирования.
  • При достаточном уровне компетенций в предметной области:
  • определение соответствия требований устоявшимся отраслевым стандартам (например: системе не достаёт фичи, которая в рамках предметной области системы является обязательной);
  • определение соответствия требований с утвержденными бизнес-требованиями. Ответ на вопрос: «Решает ли пользовательское требование бизнес-цели проекта и задачи пользователей?«.

Функциональные требования FRQ

Функциональные требования (functional requirements) — описание требуемого поведения системы в определенных условиях.

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

Функциональные требования самые низкоуровневые. Являются результатом декомпозиции верхнеуровневых требований и описывают атомарные функции, которые должны быть реализованы в системе.

Пример функциональных требований:

Пользователь должен иметь возможность добавить объект в избранное (URQ):

FRQ 1 — Добавить в избранное.

FRQ 2 — Удалить из избранного.

FRQ 3 — Редактирование дополнительных атрибутов.

FRQ 4 — Обращение к объекту из меню избранного.

Источники требований (где искать?):

  • Анализ пользовательских требований.
  • Таски.
  • Прототипы интерфейса (мокапы).
  • Отраслевые стандарты.
  • Внешние системы и документация к ним (интеграции).

Стейкхолдеры (у кого спрашивать?):

  • Бизнес-Аналитик.
  • Системный аналитик.
  • Архитектор.
  • Менеджер проекта.
  • Разработчики.

Нефункциональные требования NFRQ

Нефункциональное требование (non-functional requirements) — описание свойства или особенности, которым должна обладать система, или ограничение, которое должна соблюдать система.

На мой взгляд, это крайне исчерпывающее определение. Как вы могли заметить, нефункциональные требования не входят в основную иерархию требований. Их выделяют от других типов требований, так как нефункциональные требования:

  1. Выявляются и формулируются на всех уровнях иерархии требований.
  2. Напрямую или косвенно влияют на формирование каждого уровня требований.

Совет: Чаще всего нефункциональные требования отвечают на вопрос «Как? Каким образом?».

Пример нефункциональных требований, которые являются основной идеей проекта: Тик Ток.

С точки зрения разработки функциональный скоуп проекта не является уникальным:

  • смотреть контент,
  • предлагать ротацию контента на основе алгоритмов,
  • создавать контент.

Все эти фичи так или иначе были представлены в других проектах. Ключом успеха проекта в данном случае является его UI/UX. А UI/UX сам по себе не отвечает за функции системы, а отвечает за то, каким образом будут реализованы эти функции.

SRS

В конечном итоге все требования консолидируются в одном документе «Спецификации требований к системе». Выше вы можете видеть структуру документа SRS. Ни в коем случае нельзя воспринимать её как жесткий стандарт (хотя таковой имеется: ISO/IEC/IEEE 29148:2011). Я предлагаю вам использовать эту структуру как чек-лист для определения полноты описания системы. Стоит отметить, что внутренние стандарты документирования и полноты требований меняются от проекта к проекту, но набор типов требований всегда будет идентичен. Кто-то опускает бизнес-требования, для кого-то пользовательские требования тождественны функциональным. В конечном итоге все требования — лишь абстракция, и каждая команда подбирает под себя удовлетворительный уровень детализации этой абстракции.

Выявление требований

Выявление требований — итеративный процесс, состоящий из следующих этапов:

  1. Подготовка к выявлению.
  2. Выявление.
  3. Утверждение результатов.

Подготовка к выявлению требований

В процессе подготовки к выявлению требований необходимо ответить на следующие вопросы:

1. Что необходимо выяснить? — Анализируем имеющуюся информацию о системе:

а. Анализ текущего описания требований к системе.

b. Анализ текущей реализации системы.

c. Выявление недостающих и/или недостаточно описанных требований.

2. У кого? Где? — Определить источник требований:

а. Собрать список доступных источников, таких как:.

i. Документация.

ii. Артефакты бизнес-процессов и/или текущей реализации системы.

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

3. Каким образом? — Выбрать оптимальный метод выявления требований.

Выявление требований. Интервью

Самый популярный и, возможно, эффективный метод выявления требований. Представляет из себя беседу с заказчиком.

Подготовка к интервью

Подготовка к интервью состоит из следующих этапов:

1. Собрать информацию о собеседнике(ах):

а. Роль в проекте?

b. За какие вопросы ответственен?

2. Подготовить вопросы:

a. Сформулировать проблематику интервью.

b. Сформулировать вопросы.

c. Подготовить дополнительные вопросы.

3. Определить тайминг встречи.

a. Нужно стараться уложиться в один час. Чаще всего человек начинает терять концентрацию после 40 минут непрерывной беседы.

b. Для каждого вопроса определить необходимое время на обсуждение.

c. Если вы не успеете задать все вопросы в рамках одной встречи, назначьте несколько встреч.

4. Согласовать календарь встреч.

a. Если предполагается несколько встреч — то не обходимо составить график встреч.

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

От себя рекомендую подготовить файл с вопросами и планом интервью. Для примера — вот шаблон, который использую я:

Протокол интервью

Проект:{}

Дата проведения:{}

Интервьюер: {Кто проводит интервью}

Интервьюируемый:{Кому задаём вопросы}

Проблематика:{Тема интервью}

Вопрос № 1:

Тайминг вопроса:

Текст вопроса:

Таймкод:

Ответы на вопрос:

Стейкхолдер 1 —

Стейкхолдер 2 —

Проведение Интервью

Проведение интервью — сложный навык, который требует времени и практики. Но просто задавать вопросы, я думаю, будет не сложно. Итак, ниже список рекомендаций, которые помогут вам провести интервью:

1. Всегда ведем запись встречи.

a. Спрашиваем собеседника, не против ли он вести запись разговора.

b. Включаем запись после согласия собеседника.

2. Small talk для разрядки.

a. Как настроение?

b. Как погода?

c. И т.д. и т.п.

d. Но не затягиваем, пара вопросов из вежливости, не более.

3. Начинаем с объявления проблематики.

4. Стараемся следовать плану встречи. Вопросы задаём последовательно.

5. Желательно в плане указываем тайм-код, в какую минуту разговора задан вопрос, чтобы упростить дальнейшую обработку протокола.

6. Стараемся раскрывать вопросы дополнительными вопросами. Беседа должна быть живой, не должна скатываться в сухой формат вопрос-ответ, иначе проще отправить собеседнику опросник и не тратить его время на встречу.

7. В конце обсуждения не лишним будет подтвердить позицию собеседника закрытым типом вопроса.

a. Например: Я правильно вас понял, что необходимо реализовать функционал следующим образом {Тезис}?

Обработка результатов Интервью

После проведения интервью необходимо письменно зафиксировать полученную информацию. Рекомендую делать это сразу после интервью. Итак:

1. Заполняем протокол встречи.

a. Читать краткий протокол встречи намного проще, чем смотреть часовую запись в поисках ответов.

2. Направляем участникам встречи результаты в формате «Вопрос — Зафиксированное решение».

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

Плюсы и минусы метода

Плюсы метода:

  • Наиболее эффективный способ метод сбора требований.
  • Меньшая вероятность недопонимания между собеседниками.
  • Большая вероятность выявления «скрытых» требований.

Минусы метода:

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

Выявление требований. Анкетирование

Метод анкетирования подразумевает создание анкеты (списка вопросов) и её рассылку большому количеству опрашиваемых.

Подготовка

Подготовка к анкетированию состоит из следующих этапов:

1. Собрать контакты опрашиваемых стейкхолдеров.

2. Подтвердить готовность стейкхолдеров участвовать.

3. Подготовить анкету:

a. Анкета должна содержать вводную. Нельзя заставлять опрашиваемого отвечать на вопросы без контекста. Но если вы уверены, что опрашиваемые погружены в контекст, этот пункт можно сократить до обозначения проблематики (общей темы вопросов).

b. Задавать можно как открытые, так и закрытые вопросы.

c. Но лично я рекомендую предоставлять опрашиваемым варианты ответа даже в формате открытого вопроса. То есть обозначаем проблематику, предлагаем варианты решения, а также оставляем за опрашиваемым возможность раскрыть свою позицию. По сути аналог варианта «Другое» в опроснике.

Проведение

  1. Рассылаем анкету опрашиваемым.
  2. Контролируем сроки опроса (должен быть внутренний дедлайн).
  3. Ответы, по мере поступления, консолидируем в одном документе (каналы связи с опрашиваемыми могут быть разными, но место хранения требований всегда должно быть одно).

Обработка результатов

  1. Анализируем ответы.
  2. Фиксируем требования.
  3. Утверждаем требования с ответственными лицами.

Плюсы и минусы метода

Плюсы:

  • Большой охват опрашиваемых.
  • Сравнительно небольшие временные затраты.
  • Возможность повторного использования анкеты (бриф на стандартизированный проект).

Минусы:

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

Выявление требований. Мозговой штурм

Мозговой штурм предполагает сбор команды разработки и представителей заказчика на совместную встречу. Этот метод позволяет собрать множество идей от различных заинтересованных лиц (стейкхолдеров) в кратчайшие сроки и практически бесплатно. Во время мозгового штурма участники «накидывают» любые идеи, касающиеся решения проблемы. С помощью этой методики можно проработать несколько различных вариантов решения заданной проблемы, а также разрешить конфликты требований.

Подготовка

1. Формулируем проблематику:

а. Необходима краткая и емкая формулировка, которая оставит поле для размышления экспертов.

b. Проблематика озвучивается экспертам заранее, чтобы у них было время «на подумать».

2. Подготавливаем дополнительные материалы для отработки идей — например, макеты системы.

3. Формируем группу экспертов.

4. Согласовываем дату и время.

Проведение

1. Ведем запись-протокол. Уведомляем участников о том, что ведется запись.

2. Озвучиваем регламент встречи:

a. Тема,

b. Тайминги,

c. Правила.

3. Эксперты озвучивают идеи по очереди.

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

5. Каждая идея фиксируется и обсуждается.

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

7. Коллективное комбинирование собранных идей.

Обработка результатов

  1. Анализируем идеи.
  2. Формализуем и описываем (то есть готовим развернутое описание).
  3. Утверждаем идеи с ответственными.

Плюсы и минусы метода

Плюсы:

  • Большая вероятность выявить WOW-требования (придумать крутую фичу).
  • При наличии на мозговом штурме специалистов, ответственных за разные аспекты системы, увеличивается глубина проработки отдельных требований. То есть низка вероятность придумать нереализуемую фичу.

Минусы:

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

Другие методы выявления требований

  • Анализ документации — изучение и анализ существующей документации, которая напрямую или косвенно касается разрабатываемой системы.
  • Анализ системных интерфейсов, API и базы данных — анализ систем, которые будут взаимодействовать с разрабатываемой системой.
  • Анализ пользовательского интерфейса — анализ интерфейсов, функционально похожих (или идентичных) на разрабатываемую систему (отраслевые стандарты UI/UX). Также к этому относится анализ интерфейсов систем, входящих в IT-экосистему заказчика.
  • Моделирование процессов, поведения системы и пользователей — моделирование процессов и схем данных помогает структурировать и упорядочивать информацию о проекте.
  • Повторное использование требований — многие элементы систем имеют стандарты исполнения. Например: регистрация — авторизация пользователей.
  • Вовлечение представителя заказчика в команду разработки — вовлечение заказчика в работу над проектом является одним из постулатов Agile. В целом наличие представителя заказчика в команде разработки экономит уйму времени на коммуникации.
  • Презентации, демо и т.п. — представление требований/реализации системы заказчику. Данный способ помогает уточнить требования, а также выявить скрытые и/или избыточные требования. Пример: демонстрация мокапов будущей системы пользователям.
  • Работа в «Поле» (наблюдение) — наблюдение за деятельностью и процессами будущих пользователей.
  • Обучение — процесс, в котором заказчик или любой другой человек из организации заказчика, знающий процесс, обучает аналитика по принципу «учитель — ученик».

Очевидный факт:

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

Материалы для самостоятельного изучения

Блоки знаний:

  • Бизнес-анализ — раздел знаний, отвечающий за описание и формализацию бизнес-процессов. Прежде чем интерпретировать бизнес-процессы в виде ПО, необходимо их «правильно» описать и формализовать.
  • Моделирование бизнес-процессов — изучение различных нотаций описания бизнес-процессов. Неразрывно связан с бизнес-анализом.
  • Системный-анализ — раздел знаний, отвечающий за анализ процессов непосредственно в самом ПО.
  • Моделирование систем — изучение нотаций описания систем ПО. Неразрывно связан с системным анализом.
  • Документирование требований — изучение различных сред документирования информации о проекте и системе.
  • Управление требованиями (согласование, управление изменениями, трассировка требований) — отдельный процесс в системе знаний об анализе в ИТ. Является одним из самых сложных процессов на долгосрочных проектах с большим количеством итераций.
  • Прототипирование — изучение различных инструментов для моделирования интерфейсов и архитектуры ПО. Например: Figma для верстки макетов интерфейсов.

Книги:

  • Вигерс, Карл: Разработка требований к программному обеспечению. 3-е издание, дополненное / Карл Вигерс, Джой Битти. — Санкт-Петербург : БХВ-Петербург, 2019. — 736 с.
  • Ильяхов М., Сарычева Л. Пиши, сокращай. Как создавать сильный текст — 2017.
  • Гэртнер, Маркус: ATDD — разработка программного обеспечения через приемочные тесты. — ДМК-Пресс, 2013. — ISBN 978-5-457-42706-8.
  • Gojko Adzic, David Evans — Fifty Quick Ideas to Improve Your User Stories — 2014.
  • Майкл Мескон, Майкл Альберт, Франклин Хедоури — Основы менеджмента
  • Хоп, Грегор Шаблоны интеграции корпоративных приложений (Signature Series) / Грегор Хоп, Бобби Вульф. — Москва : Вильямс, 2019. — 672 с.
  • Кон, Майк Пользовательские истории. Гибкая разработка программного обеспечения / Майк Кон. — Москва : Вильямс, 2018. — 256 с.
  • Паттон, Джефф Пользовательские истории. Искусство гибкой разработки ПО / Джефф Паттон — Санкт-Петербург : Питер, 2019. — 288 с.
  • Cockburn, Alistair Writing Effective Use Cases / Alistair Cockburn. — Addison-Wesley, 2001.
  • USE-CASE 2.0
  • Фаулер, Мартин UML. Основы. Краткое руководство по стандартному языку объектного моделирования / Мартин Фаулер. — Москва : Символ-Плюс, 2018. — 192 с.
  • Гойко, Аджич Impact Mapping. Как повысить эффективность программных продуктов и проектов по их разработке / Аджич Гойко. — Москва : Альпина Паблишер, 2017. — 86 с.
  • Коберн, Алистер Быстрая разработка программного обеспечения/ Алистер Коберн. — Москва: Лори, 2002. — 336 с.
  • Корнипаев, Илья Требования для программного обеспечения: рекомендации по сбору и документированию / Илья Корнипаев. — Книга по требованию, 2013. — 118 с. Книга
  • Ми, Роберт Шаблоны корпоративных приложений / Роберт Ми, Мартин Фаулер. — Москва : Вильямс, 2018. — 544 с.
  • Мартин, Роберт Чистая архитектура. Искусство разработки программного обеспечения / Роберт Мартин. — Санкт-Петербург : Питер, 2018. — 352 с.
  • BABOK 3.0
  • SWEBOK 3.0

Автор: Your Mentor. Дата публикации: 24 января 2021.

Сбор требований к проекту в бизнес-анализе

Данная статья – продолжение нашей большой статьи по бизнес-анализу. Чтобы читать сначала, пожалуйста, перейдите по этой ссылке.

Содержание статьи:

  1. План сбора требований
  2. Виды сбора требований в бизнес-анализе
  3. Сбор требований через собеседование
  4. Сбор требований через мозговой штурм
  5. Сбор требований через наблюдение за работой
  6. Сбор требований с помощью опросов
  7. Использование бизнес-правил и матрицы отслеживания требований
  8. Как понять, что у вас достаточно требований перед началом проекта

План сбора требований

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

Людей в проектах также можно разделить на заказчиков и реализаторов. Мы ищем мнение людей, которые запрашивают и влияют на изменения, и фиксируем их как требования. Затем бизнес-аналитики упаковывают эти требования в пакет требований, чтобы сообщить о потребностях пользователей. Пакет требований используется реализаторами, которые принимают эти требования и превращают их в продукты, сервисы или системы, отвечающие потребностям заказчиков.

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

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

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

Хорошая практика – использовать единый язык во всех сборах требований. Требования заинтересованных сторон должны начинаться с «Пользователь запрашивает …». Функциональные и нефункциональные требования должны начинаться с «Решение должно …» или «Система должна …».

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

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

Виды сбора требований в бизнес-анализе

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

Готовясь к взаимодействию с заинтересованными сторонами, сначала соберите письменный материал в виде анализа процессов и вариантов использования:

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

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

Заинтересованная сторона излагает свои требования к проекту

Взаимодействие с заинтересованными сторонами может осуществляться несколькими способами:

  • Собеседование. Отлично подходит для получения подробной информации от отдельных лиц.
  • Мозговой штурм. Групповая техника, которая предоставляет широкий спектр идей и информации для дальнейшего анализа.
  • Наблюдение за работой. Оценка роли или процесса, с точки зрения взаимодействия с пользователем.
  • Опрос. Способ получить информацию от многих людей за короткий период времени.

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

Чтобы убедиться, что вы собрали важные требования, просмотрите каждое из них по 10 основным контрольным вопросам качества требований. Данное требование:

  1. Необходимое?
  2. В рамках проекта?
  3. Конкретное?
  4. Измеримое?
  5. Достижимое?
  6. Реалистичное?
  7. Отслеживаемое?
  8. Грамматически правильное?
  9. Правильно определенно и организованно?
  10. Отвечает ли оно на вопрос «Что», а не «Как»?

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

Сбор требований через собеседование

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

Аналитики часто забывают, что во время собеседования они должны быть настроены на вопросы, а не спешить с поиском решения. Они должны узнать о реальной проблеме или возможности, а также о людях, которые работают в рассматриваемой сфере. Им нужны факты.

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

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

  • Начинайте с открытых вопросов (Кто? Что? Когда? Где? Почему? Как?). Используйте их для того, чтобы люди говорили и предоставляли информацию. Например, «В чем основная причина вашего желания внести это изменение?», «Кто еще в этом будет участвовать?».
  • Затем переходите к закрытым вопросам. Используйте эти вопросы, уточняя информацию и спрашивая о предпочтениях. Например, «вы бы предпочли вариант А или Б, если …?».
  • Фактические вопросы используются для получения конкретной информации, например, «сколько товара создается в час?» или «сколько требуется одновременных входов в систему?».
  • Эмоциональные вопросы используются для выявления болевых точек, опасений и воздействий. Например, «Расскажите мне, когда в последний раз вас разочаровывал текущий процесс?».

С помощью этих вопросов вы получите достаточно информации, но не забывайте прислушиваться к требованиям. Для этого вам необходимо продемонстрировать свои навыки слушания, о которых мы писали в нашей статье «Правила эффективного слушания. Трудности, определение слабых сторон, практика».

В процессе собеседования требования бывают двух форм: явные и предполагаемые. Явные требования легче всего услышать. Пользователь очень четко описывает свои потребности или предложения по улучшению: «Мне нужна пропускная способность 50 упаковок в минуту» или «Наша служба должна соответствовать стандарту ISO …, раздел 15, пункт 4.2».

Предполагаемые требования выражаются в виде жалобы или недовольства пользователя. Например, «Почему мне нужно снова вводить всю информацию о поставщике, если она уже хранится где-то еще?».

Прислушиваясь к этим эмоциональным ответам, задавая фактические и закрытые вопросы, вы создадите требования заинтересованных сторон. Например, «Пользователь (Отдел продаж) запрашивает функцию поиска клиентов, основанную на названии продавца, для получения информации о поставщике, уже хранящейся в системе Х, включая имя, адрес, сведения о доставке и заполнение этих деталей в Системе продаж, в разделе новых заказов». Теперь это требование выглядит конкретным, измеримым, достижимым, реалистичным и отслеживаемым.

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

Сбор требований через мозговой штурм

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

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

Мозговой щтурм в сборе требований

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

Мы уже описывали процесс мозгового штурма в нашей статье «Стратегическое планирование. Практические шаги по поиску перспективных проектов», но здесь затронем 4 шага, которые будут относиться к определению требований.

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

Шаг второй: установите ограничение по времени. Исследования показывают, что творческое мышление более эффективно, когда есть ограничение по времени. Установите ограничение на время сеанса в 20 минут.

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

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

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

Затем вы просите всех присутствующих расставить требования по приоритетности. Не все предписания обязательны на 100%. Таким образом, каждый оценивает требование по пятибалльной шкале, где пять баллов является наивысшим числом. Со своей стороны, вы должны объяснить, как следует оценивать идеи. После того как вы подсчитали баллы, у вас есть первый набор требований, упорядоченный по приоритетам и категориям.

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

Сбор требований через наблюдение за работой

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

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

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

Регистрация действий, шагов и принимаемых решений может быть наилучшим образом отображено с помощью отдельных блок-схем процессов или диаграмм действий, обычно известных как диаграммы «плавательных дорожек» (swimlanes). Моделирование процесса – это визуальное представление последовательного потока и логики управления для набора связанных действий, которые фиксируют, кто их выполняет.

Диаграмма плавательных дорожек

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

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

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

Сбор требований с помощью опросов

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

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

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

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

Набор ответов может включать категоричные или масштабированные ответы. Наборы категоричных ответов на вопросы не имеют внутренней упорядоченности. Категоричный вопрос о поле звучит таким образом: мужской/женский, как и вопрос о транспорте на работу: машина, автобус, такси, велосипед, пешком. Масштабированные ответы, с другой стороны, имеют некоторый тип прогрессивного порядка, когда вопросы просят респондентов оценить свое согласие или удовлетворение по определенной шкале.

При подготовке опроса рассмотрите следующие шаги:

  • Начните анкету с простых вопросов. Используйте краткие заявления. Делайте вопросы как можно короче, но обеспечивайте достаточный контекст, чтобы респонденты могли понять вопрос.
  • Используйте слова и язык, который понятен респондентам.
  • Включите вариант ответа «Неизвестно», «Ни один из вариантов». Респонденты, которые не знают или не имеют опыта работы с темой вопроса, не должны оценивать или комментировать ее.
  • Создайте категории, охватывающие все возможные ответы.
  • Оставьте достаточно места для письменных комментариев. Поощряйте респондентов писать больше, предоставляя достаточное количество строк для ответов.
  • Анкета должна быть как можно короче. Уменьшение длины анкеты увеличивает количество откликов.
  • Укажите дату, до которой должны быть отправлены ответы.

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

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

Использование бизнес-правил и матрицы отслеживания требований

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

Давайте сначала поговорим о бизнес-правилах. Если вы сами управляете бизнесом, вы, вероятно, не будете продавать новый продукт клиенту, у которого уже есть просроченный остаток на счету. Но если эта просрочка составляет всего 100 рублей? Это пример бизнес-правила. Какой просроченный баланс, если таковой имеется, может привести к прекращению продажи продукта покупателю?

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

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

Есть также бизнес-правило в виде рекомендации по продвижению процесса: «процесс выполнения заказа на критически важную деталь может не продолжиться, если оставшиеся запасы станут критически низкими». Другими словами, заказ может быть выполнен только тогда, когда уровень запасов детали равен x или выше.

Матрица отслеживания обычно записывается в электронную таблицу и предоставляет следующую важную информацию:

  1. Она документирует источник всех требований. С помощью этой информации разъяснение или проверка требований по мере раскрытия дополнительной информации помогает обеспечить эффективное и действенное создание вашего пакета требований. Это помогает обеспечить выполнение всех требований.
  2. В случаях, когда временные или финансовые ограничения сокращают проект, понимание требований помогает поддерживать сбалансированные решения и приоритизаровать определенные направления проекта.
  3. Помогает отследить доставку того, что заказчик просил и за что заплатил. Согласование объема/цели – это когда мы не обеспечиваем недостаточное или избыточное выполнение, обеспечивая соответствие требований достижению одного или многих пунктов объема проекта.
  4. Матрица отслеживания помогает в тестировании и контроле качества. Она фиксирует, как будет проверяться каждое бизнес-требование, и кто будет проводить это тестирование.

Матрица отслеживания

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

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

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

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

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

Перечислим некоторые события, которые могут повлиять на пересмотр вашей матрицы отслеживания требований:

  1. реорганизация или смена ключевого участника;
  2. влияние другого проекта на требования вашего проекта;
  3. конкурент объявляет о выпуске продукта, который будет конкурировать с тем, что вы производите;
  4. серьезные финансовые изменения начинают влиять на проект.

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

Как понять, что у вас достаточно требований перед началом проекта

Аналитический паралич – это осознанная необходимость продолжать изучать возможности и варианты, чтобы убедиться, что ваш комплекс требований является точным и полным. Это приводит к задержкам реализации проекта по улучшению бизнеса. Противоположность аналитическому параличу является синдром «Я понял». Когда вы думаете, что полностью все понимаете и больше не тратите время на сбор информации и проверку требований, что приводит к неправильному пониманию запросов заказчиков.

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

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

Третье – это когда вы и ваша команда готовы создавать сценарии использования и сценарии для тестирования. Четкая и полностью понятная бизнес-среда рисует картину, которая дает варианты использования и планы тестирования с минимальной потребностью в разъяснениях или дополнительной информации от заказчика.

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

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

Чтобы продолжить чтение, переходите в статью «Проверка и контроль требований в бизнес-анализе. Часть 4»

Что еще интересного почитать


So, what makes a good requirement? A good requirement should be valuable and actionable; it should define a need as well as provide a pathway to a solution. Everyone on the team should understand what it means. Requirements vary in complexity.

  • A good Requirements Document can be part of a group with high-level requirements broken down into subrequirements.

  • They may also include very detailed specifications that include a set of functional requirements describing the behavior or components of the endproduct.

  • Good requirements need to be concise and specific, and should answer the question, “what do we need?” Rather than, “how do we fulfil a need?”

  • Good requirements ensure that all stakeholders understand their part of the plan; if parts are unclear or misinterpreted the final product could be defective or fail.

Preventing failure or misinterpretation of requirements can be aided by receiving feedback from the team continuously throughout the process as requirements evolve. Continuous collaboration and buy-in with everyone is a key to success.

Requirement Gathering and Analysis

A requirement is a condition or capability needed by a stakeholder to solve a problem or achieve an organizational objective; a condition or capability that must be met or possessed by a system.

Requirement analysis in software engineering covers those tasks that go into determining the needs or conditions to meet for a new or altered product taking account of the possible conflicting requirements of various stakeholders, analyzing, documenting, validating and managing software or system requirements.

The requirements should be −

  • Documented
  • Actionable
  • Measurable
  • Testable
  • Traceable

Requirements should be related to identified business needs or opportunities, and defined to a level of detail sufficient for system design.

A Business analyst gathers information through observing the existing systems, studying the existing procedures, discussions with the customers and the end users. The analyst should also have imaginative and creative skills in absence of a working System. Analyzing the gathered requirement to find the missing links is requirement analysis.

Eliciting Approach

To elicit the objectives, ask the business expert, the development manager, and the project sponsor the following questions −

  • What business objectives of the company will this project help achieve?

  • Why are we doing this project now?

  • What will happen if we do it later?

  • What if we do not do it at all?

  • Who will benefit from this project?

  • Do the people who will benefit from it consider it the most important improvement that can possibly be made at this time?

  • Should we be doing a different project instead?

Possible objectives might be reducing costs, improving the customer service, simplifying the work flow, replacing obsolete technology, piloting a new technology, and many others. Also, make sure you understand exactly how the proposed project will help accomplish the stated objective.

Different Types of Requirements

The most common types of requirement which a Business analyst is interested would be the following −

Business Requirements

Business requirements are the critical activities of an enterprise that must be performed to meet the organizational objectives while remaining solution independent. A business requirements document (BRD) details the business solution for a project including the documentation of customer needs and expectations.

User Requirements

User requirements should specify the specific requirements which the user expects/wants from software to be constructed from the software project. A user requirement should be Verifiable, Clear and concise, Complete, Consistent, Traceable, Viable.

The user requirements document (URD) or user requirements specification is a document usually used in software engineering that specifies what the user expects the software to be able to do.

System Requirements

System requirements deal with defining software resources requirements and prerequisites that needs to be installed on a computer to provide optimal functioning of an application.

Functional Requirements

Functional requirements capture and specify specific intended behavior of the system being developed. They define things such as system calculations, data manipulation and processing, user interface and interaction with the application, and other specific functionality that show how user requirements are satisfied. Assign a unique ID number to each requirement.

Non-Functional Requirements

Non-functional requirement is the one which specifies criteria that can be used to judge the operation of a system rather than specific behaviors. System architecture speaks on the plan for implementing non-functional requirements.

Non-functional requirements speak on how the system should look like or it can be mentioned like “system shall be”. Non-functional requirements are called as qualities of the system.

Transition Requirements

Transition Requirements describe capabilities that the solution must fulfill in order to facilitate transition from the current state of the enterprise to a desired future state, but that will not be needed once that transition is complete.

They are differentiated from other requirements types, because they are always temporary in nature and because they cannot be developed until both an existing and new solution is defined. They typically cover data conversion from existing systems, skill gaps that must be addressed, and other related changes to reach the desired future state. They are developed and defined through solution assessment and validation.

Traceability and Change Management

Requirements traceability is a way to organize, document and keep track of all your requirements from initial idea generation through to the testing phase.

The requirements trace ability matrix (RTM) provides a method for tracking the functional requirements and their implementation through the development process. Each requirement is included in the matrix along with its associated section number.

As the project progresses, the RIM is updated to reflect each requirement’s status. When the product is ready for system testing, the matrix lists each requirement, what product component addresses it, and what test verifies that it is correctly implemented

Include columns for each of the following in the RTM −

  • Requirement description
  • Requirement reference in FRD
  • Verification Method
  • Requirement reference in Test Plan

Example − Connecting the dots to identify the relationships between items within your project. It is a connector of common downstream flow.

Idea Requirements Design Test Business Objectives

You should be able to trace each of your requirements back to its original business objective.

By tracing requirements, you are able to identify the ripple effect changes have, see if a requirement has been completed and whether it’s being tested properly. Traceability and change management provides managers peace of mind and the visibility needed to anticipate issues and ensure continuous quality.

Quality Assurance

Getting requirements delivered right the first time can mean better quality, faster development cycles and higher customer satisfaction with the product. Requirements management not only helps you get it right, but also helps your team save money and many headaches throughout the development process.

Concise, specific requirements can help you detect and fix problems early, rather than later when it is much more expensive to fix. In addition, it can cost up to 100 times more to correct a defect later in the development process after it’s been coded, than it is to correct early on while a requirement.

By integrating requirements management into your quality assurance process, you can help your team increase efficiency and eliminate rework. Moreover, rework is where most of the cost issues occur.

In other words, development teams are wasting majority of their budgets on efforts that are not performed correctly the first time. For example, a developer codes a feature based on an old specification document, only to learn later, that the requirements for that feature changed. These types of issues can be avoided with effective requirements management best practices.

In summary, requirements management can sound like a complex discipline, but when you boil it down to a simple concept – it’s about helping teams answer the question, “Does everyone understand what we’re building and why?” From the business analysts, product managers and project leaders to the developers, QA managers and testers, along with the stakeholders and customers involved – so often the root cause of project failure is a misunderstanding of the scope of the project.

When everyone is collaborating, and has full context and visibility to the discussions, decisions and changes involved with the requirements throughout the lifecycle of the project, that is when success happens consistently and you maintain continuous quality. In addition, the process is smoother with less friction and frustration along the way for everyone involved.

Note − Research has shown that project teams can eliminate 50-80% of project defects by effectively managing requirements. According to the Carnegie Mellon software engineering institute, “60-80 percent of the cost of software development is in rework.”

Obtaining Requirements Signoff

Requirements signoff formalizes agreement by project stakeholders that the content and presentation of the requirements, as documented, are accurate and complete. Formal agreement reduces the risk that, during or subsequent to implementation, a stakeholder will introduce a new (previously unencountered) requirement.

Obtaining requirements signoff typically involves a face-to-face final review of requirements, as documented, with each project stakeholder. At the end each review, the stakeholder is asked to formally approve the reviewed requirements document. This approval may be recorded either physically or electronically.

Obtaining requirements signoff is typically the final task within Requirements Communication. The Business Analyst will require the output from the Formal Requirements Review(s), including accommodation of any comments or objections which were raised during the review process.

Понравилась статья? Поделить с друзьями:
  • В какие компании инвестировать в 2022 году в россии
  • В какие компании можно устроиться работать удаленно
  • В какие реквизиты составной части не входит подпись
  • В какие часы можно делать ремонтные работы в москве
  • В каких документах оформляется реквизит адресат при