Постановка процесса анализа требований
В зависимости от типа разрабатываемого приложения и взаимоотношений с заказчиком, при старте проекта, вашей команде необходимо определиться и договориться о процессе анализа, сбора и управления требованиями. Для одних ситуаций вполне подойдет легковесный подход, реализуемый через истории пользователей.
Сейчас я хочу описать более формализованный подход, который часто используют относительно крупные разработчики, снижающие всевозможные риски, связанные со сбором и управлением требованиями, за счет формализации процесса, увеличения количества документов и систематизации самого процесса работы с требованиям. Такой подход в равной степени можно использовать как в водопадных, так и в гибких процессах. Сразу оговорюсь, что в данной заметке я не буду касаться таких аспектов инициации проекта, как определение высокоуровневых целей и границ проекта.
Анализ бизнес потребностейНа данном этапе выясняются общие ожидания заказчика относительно функциональности разрабатываемого приложения, выделяются крупные функциональные блоки (features) и заводятся в DEVPROM в качестве функций. Под функцией следует понимать некоторый функциональный модуль или компонент, либо функциональность, отражающая некоторый бизнес-процесс в организации заказчика. При анализе проблемы или бизнес-процесса клиента вы создаете раздел требований, в котором необходимо привести следующую информацию:
Для перехода к следующим этапам анализа вам необходимо зафиксировать перечень заинтересованных лиц, для которых разрабатывается решение и с которым необходимо обсуждать детали автоматизируемых бизнес-процессов. Вот пример такого перечня:
В результат этого этапа вы получаете перечень проблем, с которыми сталкивается заказчик, предварительные варианты их решения, альтернативные варианты решения, а также список контактов, с которыми вы сможете обсуждать детали по каждой проблеме, а также эскалировать сложные вопросы.
Заранее составляйте список нефункциональных требований и, по мере обсуждения проблем заказчика и понимания его ожиданий по отношению к будущему решению, дополняйте и уточняйте его. Среди основных нефункциональных требований можно выделить:
Валидация описания проблем
Функциональный анализ и подготовка требованийПолучив первые описания бизнес-потребностей пользователей можно приступать к их детализации и более глубокой проработке. Это позволит задействовать всю команду на более ранних этапах, раньше задавать правильные вопросы пользователям и формировать их ожидания по будущему продукту.
Вашей команде необходимо определиться со стратегией сбора и анализа требований, поскольку разные стратегии ориентированы на разного уровня команды. Необходимо учитывать, что более плотное вовлечение всей команды в процесс обсуждения требований позволит вам выявить наибольшее количество рисков и скорректировать ожидания пользователей в соответствии с целями и задачами проекта.
Собирайте информацию о возможных рисках проекта сразу при анализе требований, это позволит вашей команде выбрать лучший способ реализации решения, снизить конфликты между желаемыми и действительными возможностями и ориентировать команду на совместную работу и совместную ответственность за результат.
| ||||||||||
Еще интересные статьи на эту тему:
|