Use Case - это сценарий использования системы.
Его можно описывать на верхнем уровне, не вдаваясь в технические подробности. То есть просто описать процесс работы пользователя с интерфейсом (UI).
Пример обычного Use Case (интеграций во внешние системы нет):
1. Пользователь через главное меню заходит в просмотр информации о своем профиле и переходит к его настройке.
2. Пользователь может поменять фамилию, имя или дату рождения.
3. Пользователь сохраняет изменения.
4. Перед сохранением система проверяет корректность введенных данных:
- дата рождения в формате ДД.ММ.ГГГГ
- фамилия / имя содержит только русские или английские буквы, а также пробелы, до 128 символов.
5. Если проверки пройдены успешно, система сохраняет результат и пользователь возвращается на экран просмотра информации о профиле.
А можно дополнять Use Case вызовами API-методов, обращениями к таблицам БД. Тогда он становится более техническим и более похожим на результат работы системного аналитика.
Пример более технического Use Case (интеграций во внешние системы нет, только Frontend-Backend):
1. Пользователь через главное меню заходит в просмотр информации о своем профиле и переходит к его настройке.
✅
Данные получают методом GET /api/v1/profile.
✅
Запрос подписан авторизацией пользователя.
2. Пользователь может поменять фамилию, имя или дату рождения.
3. Пользователь сохраняет изменения.
4. Перед сохранением
✅
на UI проверяется
корректность введенных данных:
- дата рождения в формате ДД.ММ.ГГГГ
- фамилия / имя содержит только русские или английские буквы, а также пробелы, до 128 символов.
5. Если проверки пройдены успешно, система выполняет запрос к серверу для сохранения данных:
✅
PUT /api/v1/profile/update
✅
Запрос подписан авторизацией пользователя.
✅
6. Сервер принимает данные и повторно проверяет корректность введенных данных, а также, что дата рождения пользователя не ранее 1900 года.
✅
7. Если проверки пройдены успешно, то сервер сохраняет результаты в БД, в таблице user и возвращает успешный ответ на UI.
✅
8. Пользователь возвращается на экран просмотра информации о своём профиле.
👉 Если мы работаем с задачами на интеграции, важно показать как взаимодействуют Frontend и Backend, наш сервер и внешние системы по API. Упоминание методов API в таких интеграционных Use Case просто необходимы, чтобы передать полноценную постановку задачи на разработчика.
Но прежде чем описывать интеграционные Use Case, всегда важно понять, как будет вести себя наш UI. И как он вообще будет выглядеть. С этого я начинаю работу с любой задачей, не только на интеграции.
Как будет работать форма заказа курьерской службы #ShipEasyGA, а именно - настройка адреса на ней? Разберемся далее 👇
#ИнтеграцииGA