Всем привет! Я Ната, UX/UI дизайнер в Red Collar. В этой статье я расскажу о методологии, которая улучшит коммуникацию внутри команды, а значит и работу над продуктом — Use Case или «юзкейсе», а также поделюсь шаблоном для тех, кто сталкивается с ней впервые.
В идеальном мире юзкейсы составляет системный аналитик на основе правил, сформулированных бизнес-аналитиком после общения с заказчиком. В реальном мире таких позиций в команде может не быть из-за ограничений по времени и бюджету, но проблема передачи знаний внутри команды на проекте остается. В таких случаях писать юзкейс может дизайнер, тестировщик, продакт и другие люди.
Польза юзкейсов — единое представление о продукте
Если в команде более 5 человек, а проект длится более 3 месяцев, то может возникнуть дискоммуникация. Например:
- разработчики неправильно поняли сценарий взаимодействия и реализовали фичу не так, как планировалось;
- в ходе долгих обсуждений внутри команды вы сильно отклонились от первоначальной идеи и точно воспроизвести её не можете;
- дизайнеры спроектировали функциональность, которая изначально не планировалась;
- один и тот же кейс в разных местах реализован по-разному, что увеличивает время разработки и усложняет UX;
- при тестировании пропускаются значительные ошибки;
- сменился состав команды: к проекту подключились новые участники, а ведущие члены команды ушли.
Сценарии юзкейсов — как игра в теннис между пользователем и системой
Use Case — это описание взаимодействия с системой в виде последовательности действий для достижения конкретного результата. По сути, это метамодель, которая иллюстрирует не саму систему, а набор функциональных требований к ней.
Методология была разработана в 80-х Иваром Якобсоном. Для всех желающих погрузиться в тему глубже есть бесплатная книга Use-Case 2.0, также другие ссылки по теме оставлю внизу статьи.
Для наглядности юзкейс можно сравнить с игрой в теннис, где один игрок это пользователь, другой — система. Удар ракеткой это действие, которое совершает пользователь, после чего мяч переходит системе, и далее система ему отвечает. Разница только в том, что в юзкейсе пользователь или система могут подряд совершить несколько действий.
Юзкейсы существуют в двух равнозначных видах: UML-диаграмма или текстовый документ. По желанию их можно совмещать
«Основной юзкейс» — сценарий успеха: участники + действия + результат + доп. условия
Единого формата для написания юзкейсов не существует. Каждая компания сама определяет для себя формат и уровень детализации. Опишу основной принцип написания.
Основные элементы юзкейса:
1. Понятный заголовок, желательно, чтобы он содержал результат юзкейса. Пример, «Создание заявки».
2. Действующие лица или участники. Можно выделить такие варианты:
- «Пользователь и система». Например, при авторизации.
- «Несколько пользователей и система». Например, если мы описываем общение в чате.
- «Система и система». Например, если мы описываем внутренние процессы внутри системы.
- «Несколько систем и система».
3. Описание последовательности действий в виде сценария.
4. Результат, то есть то, к чему должны прийти пользователь или система.
Ниже показан простой вариант юзкейса на примере регистрации. В нем есть все основные элементы. Также добавлена нумерация шагов, чтобы проще было ссылаться на конкретный шаг в коммуникации.
Пример простого юзкейса
Выглядит понятно, но в реальности кейсы могут оказаться сложнее, поэтому к юзкейсу добавляют дополнительную уточняющую информацию:
- контекст использования;
- откуда происходит переход к юзкейсу;
- дополнительные условия;
- триггер;
- цель;
- изменения в технологии.
В описание юзкейса могут добавлять перечисление инпутов (полей ввода), если это необходимо для понимания сценария.
Пример развернутого юзкейса с пояснениями
«Альтернативный юзкейс» — сценарий ошибки
Рассмотрели вид основных сценариев юзкейсов, а что если возникла ошибка или пользователь столкнулся со сложностями? Для этого создается альтернативный юзкейс: когда результат основного не был достигнут. Например, пользователь не смог зарегистрироваться, так как имя уже занято или с указанной почты уже создана учетная запись.
Альтернативные юзкейсы прописывают отдельно, в нашем случае будет создана отдельная таблица, но если сценарий короткий, то мы описываем его в рамках основного юзкейса. Пример ниже.
Пример юзкейса с альтернативными сценариями внутри основного
Чеклист для написания юзкейсов
Разобрались, что юзкейс нам нужен в первую очередь для улучшения коммуникации внутри команды при разработке продукта. Теперь вы можете легко его написать, но важно, чтобы его также было легко читать. Ниже найдете критерии, которые помогут вам написать легкий для восприятия юзкейс.
Вначале сделайте единый шаблон и заведите словарь
В идеале юзкейсы пишутся на этапе проектирования, при планировании фичей или продукта в целом, но бывает так, что необходимость в юзкейсах обнаруживается позже, когда дизайн готов, а часть продукта уже вышла в прод.
Если вы на начальной стадии проекта, рекомендую начать с составления пути пользователя, а позже переходить к юзкейсам.
Если у вас уже готов дизайн, то перед написанием юзкейсов внимательно изучите все материалы, составьте список разделов и взаимодействий с ними в связке с продактом, дизайнером и другими лицами, участвовавшими в планировании и проектировании продукта.
Советы, которые ускорят написание юзкейсов:
- Создайте один шаблон для всех юзкейсов на проекте. Не страшно, если он будет видоизменяться со временем. Главное, чтобы не приходилось для каждого юзкейса придумывать уникальный формат, так как их будет сложно писать и еще сложнее читать.
- Создайте словарь терминов. Если внутри вашей команды активно используется определенная терминология или вы работаете над узкоспециализированным продуктом, создайте словарь с расшифровкой терминов и ссылайтесь на него при написании юзкейса.
Так нужен ли вам юзкейс?
Важно понимать, что юзкейс — это инструмент, а цель любого инструмента — упростить и улучшить работу. Если после внедрения юзкейсов в проект вы не видите изменений, а ресурсы расходуются все больше на ведение документации, то, вероятно, вам стоит пересмотреть процесс ведения документации и протестировать другие инструменты, например, User Story.
Всем крутых продуктов!
Шаблон юзкейса + дополнительные материалы
Подготовила для вас шаблон юзкейса, открыт всем в гуглдоке.
1. Статьи и бесплатные книги о юзкейсах от создателя методологии Ивара Якобсона — даст более полное представление об инструменте «из первых рук» (en)
2. Короткое видео с простым объяснением инструмента от бизнес-аналитика + ссылка в описании к видео на их шаблон юзкейсов (en)
3. Короткое видео о юзкейсах для новичков от UX/UI дизайнер в Siemens (ru)
4. Статья от Usability.gov с краткой информации о юзкейсах и примером их заполнения (en)
5. Статья от системного аналитика, где подробно рассказывается о методологии и опыте ее применения в QIWI (ru)
Источник: vc.ru
Use-cases (юз-кейсы)
Название: Покупка товара Акторы: Пользователь, Интернет-магазин. Описание: Пользователь заходит на сайт интернет-магазина, выбирает товары, которые он хочет купить, добавляет их в корзину и проходит процесс оформления заказа. Предусловия: Пользователь должен быть зарегистрирован на сайте. Шаги использования:
- Пользователь выбирает товары, которые он хочет купить, и добавляет их в корзину.
- Пользователь переходит на страницу оформления заказа.
- Пользователь заполняет форму с личными данными и адресом доставки.
- Пользователь выбирает способ оплаты и подтверждает заказ. Результаты: Заказ успешно оформлен, и пользователь получает подтверждение на свой электронный адрес.
Еще один пример юз-кейса, например, с онлайн-магазином. Рассмотрим сценарий «Оформление заказа»:
Название: Оформление заказа Акторы: Покупатель, Система Краткое. Описание: Покупатель оформляет заказ на товары в онлайн-магазине Предусловия: Покупатель авторизован в системе, добавил товары в корзину Основной поток:
- Покупатель переходит на страницу корзины
- Система отображает список товаров в корзине
- Покупатель выбирает адрес доставки и метод оплаты
- Система запрашивает данные для доставки и оплаты у Покупателя
- Покупатель вводит данные для доставки и оплаты
- Система проверяет корректность введенных данных
- Система формирует заказ и отправляет уведомление на email Покупателя и в службу доставки
- Покупатель получает уведомление об успешном оформлении заказа Ожидаемый результат: Заказ оформлен и отправлен на доставку
В этом примере, юз-кейс помогает определить все шаги, необходимые для оформления заказа в онлайн-магазине, а также определить предусловия и ожидаемый результат.
Главные отличия от тест-кейса
Кому в команде девелопмента будут полезны use-cases?
Use-cases диаграммы могут быть полезны для всей команды разработки, включая бизнес-аналитиков, разработчиков, тестировщиков и менеджеров проектов. Бизнес-аналитики могут использовать use-cases диаграммы для определения требований и предоставления разработчикам более детальной информации о том, как система должна работать. Разработчики могут использовать use-case диаграммы в качестве основы для разработки, а также для тестирования и отладки своего кода. Тестировщики могут использовать use-case диаграммы для определения тест-кейсов и проверки соответствия требованиям, а менеджеры проектов могут использовать их для контроля за процессом разработки и оценки прогресса.
Пять важных моментов, которые следует учитывать при создании use-cases
- Определение актеров: Необходимо ясно определить, кто является основными участниками процесса, который описывается в use-cases. Это могут быть пользователи, клиенты, поставщики или любые другие люди или системы, взаимодействующие в рамках определенной функциональности.
- Описание шагов. Важно описать каждый шаг процесса в деталях, начиная с начального состояния, процесса выполнения действий и заканчивая конечным состоянием.
- Необходимо определить предусловия и постусловия. Предусловия — это условия, которые должны быть выполнены перед началом процесса, а постусловия — это результаты, которые должны быть достигнуты по завершении процесса. Оба этих аспекта важны для правильного понимания процесса.
- Включение альтернативных сценариев. Use-case не всегда будет выполняться в идеальных условиях, поэтому необходимо включать альтернативные сценарии, которые могут возникнуть в процессе выполнения.
- Определение завершения процесса. Важно ясно определить, как процесс завершается. Это может быть достижение определенной цели, получение определенного результата или ошибка, которая приводит к неудачному завершению процесса.
Обратите внимание, что эти моменты могут варьироваться в зависимости от конкретного проекта и специфики бизнес-процессов.
Вместо итого о use-cases
Один из важных аспектов использования use-cases заключается в том, чтобы не только определить функциональные требования. Но и убедиться, что все заинтересованные стороны (заказчики, разработчики, тестировщики и т.д.) имеют единое понимание того, что должно быть реализовано. Для этого нужно чтобы все описания юз-кейсов ясны и понятны, а также документировать любые изменения, которые могут произойти в процессе разработки.
Еще одним важным аспектом use-cases является то, что они могут помочь выявить неочевидные требования. При написании юз-кейсов необходимо детально рассмотреть каждый аспект процесса и выделить все возможные условия, которые могут повлиять на работу системы. Это может помочь выявить те аспекты, которые могут быть пропущены при обычном анализе требований.
Наконец, использование юз-кейсов может помочь облегчить процесс тестирования. Если тестировщик заранее знает, что ожидается от системы, то он может легче разработать тест-кейсы и убедиться в правильной работе системы.
В целом, использование use-cases является важным инструментом для определения функциональных требований и установления единого понимания между всеми заинтересованными сторонами. Они могут помочь выявить неочевидные требования и упростить процесс тестирования. В конечном итоге это может сэкономить время и снизить риски в процессе разработки программного обеспечения.
Все о тестировании и качестве ПО
- Техники тест-дизайна
- Тестировщик может справиться лучше?
- Тестирование безопасности
- Шутливые виды багов
- Нефункциональное тестирование
I believe in QA, все о тестировании
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Больше о тестировании и качестве ПО
- Тест-кейсы и все о них
- Чек-лист (Check-list) в тестировании
- Формальное тестирование
- Тестирование производительности
- Интеграционное тестирование: что это и зачем
- Тестирование безопасности веб приложений
Источник: qaevolution.ru
Как писать функциональные требования. Use case и user story в чем разница?
Наибольшее сходство между двумя подходами заключается в ключевых компонентах. Пользовательские истории имеют такие элементы, как роль пользователя, цель и т.д. Схожие понятия есть и у примеров использования. Они включают в себя актера, предварительные условия и другие условия. Таким образом, обе концепции схожи в том, как они подходят к проблеме.
User Story vs Use Case: Everything You Need to Know
Многие люди путают пользовательские примеры и истории, но на самом деле это разные понятия. Они могут иметь схожие функции. Например, сбор информации о требованиях и целях пользователей. Но они предназначены для разных целей. В этой статье подробно рассматриваются эти две концепции и их различия.
В статье также рассматривается полезность и практичность этих двух концепций для компаний. Данная статья призвана помочь читателям и дать им представление об этой теме.
Вы когда-нибудь чувствовали, что продукт, который вы представляли себе, и продукт, который вы разработали, сильно отличаются? Или что функция, которую вы хотели, не была включена в финальную версию. Многие люди, занимающиеся продукцией, могут ответить на эти вопросы. Это может помочь понять, почему компаниям с самого начала необходим сценарий использования.
Проще говоря, пример использования — это описание того, как человек, использующий определенный процесс, достигает цели. Технически, это описание взаимодействия между системой и действующими лицами. Результатом этого процесса является документ, содержащий все шаги пользователя для достижения цели.
Пример: вы плотник и хотите изготовить дверь. Вариант использования для этого сценария состоит из всех шагов, которые плотник предпринимает для достижения цели. Вся эта документация поможет изучить недостатки и ошибки процесса.
Почему Рутуб не работает. Что с рутубом сейчас 2022.
Команды разработчиков продуктов используют сценарии использования в различных ситуациях. Он используется при планировании, тестировании и разработке. Этот процесс также помогает разработать примерный план того, как должно быть составлено руководство пользователя. В этом процессе также минимизируются ошибки и другие погрешности.
Весь процесс разработки сценария использования имеет определенные ключевые термины. Эти термины являются основой всего процесса и составляют его костяк.
- The actor: This is the person or group of people interacting with the system. They are the users of the system.
- The goal: This is the outcome for which the use case was designed. It is usually the final result of this process.
- The system: This includes all the steps followed to achieve the set goal.
Эти три основных требования присутствуют не в каждом случае. Каждый проект, каждая модель и каждое обстоятельство имеют различные уровни сложности. Для сложных продуктов в сценарии использования используется множество других терминов. Некоторые из терминов таковы:
- Stakeholders: All the parties who have an interest in the outcome of the use case. It doesn’t have to be users only.
- Triggers: Are all the events due to which a use case begin.
- Preconditions: It is the combination of all factors necessary for the case to occur.
Технически, сценарии использования — это подробное описание рекомендаций для разработчиков. Это дает представление о том, что разработчики включают в систему
История пользователей также является простым методом записи требований пользователей. Это помогает определить некоторые важные вопросы. Вопросы типа «кто», «что» и «почему» функции. Все эти описания служат для того, чтобы сместить акцент с написания на обсуждение функций. Это поможет упростить весь процесс и повысить эффективность.
- Main success scenarios Basic Flow – use case in which nothing goes wrong.
- Alternative paths Alternative Flow – these paths are a variation on the main theme. These exceptions are what happen when things go wrong at the system level.
Спам-звонки: современные способы блокировки. Что такое спам в телефоне
What is a user story?
Важно, чтобы у истории пользователя был набросок. Для этого часто используется аббревиатура INVEST. Это помогает проверить, все ли требования соблюдены.
Теперь, когда обе концепции были подробно описаны, вам может показаться, что они одинаковы. Пересечение этих двух концепций заметно издалека, но не вблизи. Однако неизменным остается их отношение к группе товаров. И то, и другое является важной частью общего процесса разработки.
Пользовательские истории — это простой способ определить, чего хочет пользователь. Продукты могут быть четко объяснены таким образом. Хорошая история пользователя помогает всем участникам процесса понять функциональность продукта. Это также помогает проинформировать покупателя о том, что представляет собой продукт.
Это означает, что большая цель может быть разбита на более мелкие, достижимые цели. Это помогает завершить проект более эффективно и с меньшими потерями времени. Меньшие достижимые цели означают небольшое отклонение от вашей цели.
Их простой язык делает их понятными для всех. Как технические, так и нетехнические участники используют их в качестве средства общения. Это также помогает привлечь все заинтересованные стороны. Характер пользовательских историй стимулирует обсуждение продукта между различными заинтересованными сторонами.
- Independent: Not depending on other projects
- Negotiable: Room should be left for further development
- Valuable: Description of the value the end-user is going to get.
- Estimable: They should be estimated so that a proper plan can be developed.
- Small: Work should be small enough to be completed in 3-5 days
- Testable: Some mechanism to check the value delivery of the process
Четко определяя цель продукта, пользовательские истории придают смысл общей миссии. Это также облегчает команде разработчиков достижение цели. Благодаря пользовательским историям разработчики знают, зачем они создают продукт. Это помогает повысить мотивацию.
Why Create User Stories?
Это дает команде разработчиков свободу мыслить нестандартно. Затем команда может расставить приоритеты между различными идеями. Критерии приоритета могут зависеть от таких факторов, как ценность для пользователя и сложность. Это означает, что даже безумные идеи не исключены из процесса. Они могут иметь более низкий приоритет.
Пенсии, зарплату, премии и пособия за январь 2022 года выплатят накануне Нового года. Когда зарплата в январе 2022?
User stories can help to streamline the project
Рассмотрим пример приложения для аренды электромобилей.
Brings everyone on the same page
Представьте себе приложение, в котором перечислены и сдаются в аренду все варианты электромобилей в крупных городах; цель пользователей — успешно выбрать и арендовать электромобиль.
Provide a sense of purpose
Имя варианта использования: Разместить заказ на аренду.
Helps defining the whole product
Описание основного варианта использования:
Example of user story vs. use case
Альтернативный поток может быть следующим:
Как пользователь, я хочу привязать свою кредитную карту к профилю, чтобы я мог оплачивать аренду быстрее, проще и безналично.
Use case example
Как поставщик услуг, я хотел бы добавить фотографии своих автомобилей в приложение, чтобы привлечь больше пользователей.
- Shopper
- Fulfillment System
- Billing System
Как пользователь, я хотел бы видеть различные доступные автомобили, чтобы я мог выбрать наиболее подходящий для меня вариант.
- User selects items to rent
- The User provides payment and shipping information
- User orders the items
- The system responds with confirmation of the order and a renting number that the user can use to check out the vehicle.
- The system will also provide the user with a countdown for the remainder of the renting time.
- The user may already have an account with the company with billing information.
- User selects items to rent
- The User provides payment and shipping information
- User changes mind and chooses another vehicle
- User deletes cart
- User selects new items
- User places order
- The system respond with confirmation of the order and a renting number that the user can use to check out the vehicle.
- The system will also provide the user with a countdown for the remainder of the renting time.
- The user may already have an account with the company with billing information.
Источник: gbiznesblog.ru