Техники выявления требований
В этом уроке вы узнаете о техниках для выявления требований, достоинствах и недостатках каждой из них и о случаях, в которых лучше применять ту или иную технику.
После того как системный аналитик определил заинтересованных лиц, он должен запланировать работу с ними. Для выявления требований ему нужно создать благоприятную атмосферу, а значит, подобрать к каждой группе пользователей правильный подход.
Один пользователь может чётко сформулировать свои требования, за другим придётся понаблюдать в ходе работы. Поэтому в проектах по разработке ПО, как правило, применяются разные техники выявления требований.
Техники выявления требований делятся на:
- Коллективные — системный аналитик работает над выявлением требований с заинтересованными лицами.
- Независимые — системный аналитик самостоятельно работает над информацией.
В большинстве проектов коллективные техники выявления требований сочетаются с независимыми. Более того, для решения одной и той же задачи могут подойти сразу несколько техник. Рассмотрим основные из них.
Коллективные техники выявления требований
Коллективные техники идеально подходят для выявления пользовательских требований. Работа с заинтересованными лицами необходима, потому что пользовательские требования напрямую связаны с действиями пользователей в разрабатываемом ПО.
Предположим, Артём хочет выяснить, какие функции словаря необходимы пользователям. С некоторыми из них он может провести интервью. Это поможет прояснить все неясные моменты. В идеале задача — собрать требования с каждого класса пользователей. Для этого можно использовать разные виды коллективных техник выявления требований.
Анкетирование
Анкетирование — проведение опроса среди заинтересованных лиц. Анкета может содержать как открытые вопросы (требуют от респондента самостоятельно сформулировать ответ), так и закрытые (требуют от респондента выбрать ответ из предложенных вариантов).
Когда применять?
- Для работы с большими группами стейкхолдеров.
- Для определения новых тем или вопросов, которые можно уточнить с помощью других техник выявления требований.
- Для сбора усреднённых данных.
- Для сбора обратной связи.
Как это работает?
Так как веб-приложением Chatty пользуются больше 500 человек, невозможно поговорить с каждым учеником по отдельности. Артём решил провести опрос среди них, чтобы выяснить, чего они ожидают от функции «словарь».
Он составил анкету и согласовал её вопросы с отделом внешних коммуникаций — частью отдела маркетинга. Затем отдел внешних коммуникаций добавил анкету к ежемесячной почтовой рассылке для клиентов. Анкету заполнили более 100 человек, Артём обработал данные и получил усреднённые результаты.
Интервью
Самый очевидный способ узнать, что нужно пользователям, — спросить у них. Интервью — техника, при которой интервьюер задает вопросы респонденту, чтобы получить информацию по заданной теме. Большинство аналитиков устраивают индивидуальные интервью или интервью в небольших группах.
💡 Несмотря на то что интервью, в первую очередь, подразумевает разговорный формат, некоторые вопросы и уточнения можно передавать в переписке или голосовыми сообщениями.
Когда применять?
- Для понимания реальных проблем стейкхолдеров и потенциальных решений с их точки зрения.
- Для утверждения требований, полученных с помощью других техник (например, анкетирования).
- Для сбора и уточнения бизнес-требований с заинтересованных лиц, у которых мало времени на непосредственное взаимодействие с системным аналитиком.
Как это работает?
Предположим, что результатов анкетирования недостаточно, чтобы сформировать качественные требования, ведь в опросе сложно учесть все нюансы. Артём решил лично поговорить с некоторыми учениками, чтобы разобраться в деталях. Как правило, отдел маркетинга или отдел по работе с клиентами помогает договориться об интервью с конкретными пользователями-клиентами (учениками в данном случае).
Артём, в свою очередь, должен подготовить к интервью список вопросов, которые он собирается задать, материалы, которые он хочет показать, ещё ему нужно подумать о том, как он будет фиксировать результаты проведения интервью. Он может использовать диктофон или попросить, например, Даню вести протокол интервью. Если интервью записывается на камеру или диктофон, нужно обязательно попросить на это разрешение респондентов, чтобы не нарушить закон о персональных данных.
Наблюдение
Наблюдение — это техника, при которой системный аналитик следит за тем, как пользователи работают с продуктом, и документирует этот процесс. Такая техника позволяет избежать ситуаций, при которых пользователям трудно сообщить о своих потребностях словами.
Когда применять?
- Для понимания реальных проблем и потенциальных решений с точки зрения конечных пользователей продукта.
- Для обнаружения проблем с текущей версией системы.
- Для проверки информации, полученной из других источников.
- Для определения новых тем или вопросов для других техник выявления информации
Как это работает?
Артём провел интервью с учениками и понял, что некоторые моменты работы со словарём неочевидны. Непонятно, например, как быть со словами, у которых несколько значений: добавлять все значения сразу или добавлять только те, которые нужны для прохождения урока? Артём решил понаблюдать за пользователями, чтобы прояснить неясные моменты.
В случае с Chatty наблюдение можно вести дистанционно. Достаточно использовать запись экрана или же зайти на урок в приложении в качестве наблюдателя. И в том, и в другом случае перед началом наблюдения лучше заручиться согласием пользователя. В этом также может помочь отдел по работе с клиентами.
Воркшоп
Воркшоп — это мероприятие, где участники работают в группах: обмениваются опытом и получают новые знания. Заинтересованные лица собираются вместе для того, чтобы определить требования для конечного продукта. В отличие от интервью, цель воркшопа — конкретный результат, например, документ с выявленными требованиями. Как правило, на воркшопе присутствует модератор, который управляет процессом для достижения конечной цели.
Когда применять?
- Чтобы собрать требования от различных заинтересованных лиц в кратчайшие сроки.
- Для сложных проектов, не имеющих готовых аналогов. Например, при создании нового ПО для банковской сферы, сферы телекоммуникаций и прочих.
- Для больших проектов.
- Для снятия противоречий в требованиях.
Как это работает?
Помимо учителей, Артём решил пригласить на воркшоп представителей технической поддержки, чтобы обсудить релевантные для создания словаря потребности пользователей. Результатом воркшопа должен стать документ, где описаны основные функции словаря.
Артём решил, что будет модерировать воркшоп сам, поэтому его задача — составить план мероприятия и объявить всем участникам цель воркшопа. Ему также нужно следить за дискуссией участников, при необходимости задавать наводящие вопросы и прекращать обсуждения, которые не относятся к делу. Кроме того, Артём должен зафиксировать результаты воркшопа.
Мозговой штурм
Мозговой штурм (брейншторм) — коллективное обсуждение, при котором участники дискуссии генерируют максимальное количество идей для решения задачи. Предлагать можно (и нужно!) даже самые фантастические идеи. Из собранных вариантов выбираются лучшие решения, которые можно использовать на практике.
Когда применять?
- Для выявления требований, которые связаны с новыми или плохо изученными направлениями деятельности организации или функциями ПО.
- Чтобы собрать множество идей от различных заинтересованных лиц в кратчайшие сроки.
- Для проектов с небольшим количеством заинтересованных лиц
- Для определения новых тем или вопросов для других техник выявления информации.
- Для устранения противоречий в требованиях.
Как это работает?
По итогам воркшопа готов список требований, но в нём есть некоторые противоречия. Учителя считают, что словарь должен обязательно содержать картинки и аудиоматериалы. Специалисты техподдержки не хотят включать мультимедиа в первую версию словаря, так как эту функцию трудно технически реализовать и она может работать со сбоями.
Артём решил провести мозговой штурм, пригласив спонсора проекта, представителя команды разработки и представителя учебного отдела, чтобы определить, какой материал нужно добавить в словарь. Участники мозгового штурма придумали более 20 идей для решения проблемы. Одним из вариантов может быть использование сторонних программ с мультимедиа.
Независимые техники сбора требований
Независимые техники дополняют коллективные техники сбора и позволяют выявить функциональность ПО, о которой заинтересованные лица могут не подозревать.
Aнализ ПО
Анализ программного обеспечения подразумевает, что нужно изучить:
- уже существующее ПО компании, которое требуется изменить;
- похожие продукты (ПО конкурентов и партнеров, другие продукты компании и прочее);
- системы, с которыми взаимодействует или будет взаимодействовать ПО.
Лучше всего взаимодействовать с ПО напрямую, то есть не ориентироваться на отзывы других людей о его работе. При необходимости можно использовать снимки экрана и руководства пользователей.
Когда применять?
- Для обнаружения возможных функций новой системы.
- Для определения стандартных функций ПО, которые в дальнейшем можно проверить при участии пользователей с помощью других техник выявления требований.
- Для определения функций, которые не нужно реализовывать, поскольку они уже реализованы в других системах.
- Для определения требований по обмену данными между системами.
Как это работает?
Список требований от заинтересованных лиц готов, но у Артёма есть сомнения: не упустили ли они неочевидные, но важные для ПО функции? К счастью, Артём уже давно пользуется англо-русским словарем в своей электронной книге и может изучить его, чтобы ориентироваться при разработке требований. К тому же, подобный словарь уже реализован у конкурентов. Можно скачать его пробную версию и посмотреть, какие функции есть там.
Анализ документов
Анализ документов предполагает изучение доступной документации для обнаружения возможных требований к ПО. К документации, которую можно использовать для выявления требований, относятся существующие спецификации требований, описания бизнес-процессов, руководства пользователя для существующих или аналогичных приложений, нормативные правовые акты (НПА) и прочее.
Когда применять?
- При замене текущей системы, так как в документации системы можно обнаружить много полезной информации.
- При изучении корпоративных и отраслевых стандартов или требований законодательства.
- При автоматизации устоявшихся в организации бизнес-процессов.
- При внедрении готовых решений другого поставщика, так как в документации рассказывается о функциональности, которая может понадобиться пользователям.
- Для определения входных данных, которые помогут уточнить другие техники выявления требований.
Как это работает?
Заинтересованные лица и команда разработки решили отображать мультимедийные материалы с помощью ПО сторонней компании. Теперь надо изучить, как получить от них необходимые данные. Для этого Артёму нужно проанализировать соответствующую документацию компании-поставщика. Подробнее о том, как проводить анализ документов, мы расскажем в следующем уроке.
Подведём итоги
Теперь вы знаете, какие техники выявления требований существуют. Их можно разделить на две группы: коллективные (где участвуют заинтересованные лица) и независимые (при которых системный аналитик добывает информацию самостоятельно и ему не требуется взаимодействовать с заинтересованными лицами).
К коллективным техникам относятся:
- интервью,
- наблюдение.
- воркшоп,
- мозговой штурм,
- анкетирование.
Индивидуальными техниками являются:
- анализ ПО,
- анализ документов.
Выбор техники зависит от проекта, целей применения конкретной техники, а также характеристик заинтересованных лиц.