Макет и сценарий использования - moevm/nosql2h24-dogs GitHub Wiki
Use Case: Вход в систему (Sign In) (с переходом на регистрацию)
Действующее лицо: Пользователь
Основной сценарий:
- Пользователь находится на экране Sign In Screen.
- Вводит имя пользователя и пароль.
- Нажимает кнопку "Sign In".
- Приложение проверяет правильность введенных данных.
- В случае успешного входа пользователь перенаправляется на главный экран (Main Screen или Admin Main Screen в зависимости от статуса пользователя).
Альтернативный сценарий:
- Если имя пользователя или пароль неверные, приложение выводит сообщение об ошибке и предлагает повторить попытку.
- Если у пользователя еще нет аккаунта, он нажимает ссылку "Sign Up" на экране входа, после чего перенаправляется на экран Sign Up Screen.
Use Case: Регистрация нового пользователя (Sign Up) (с переходом на вход)
Действующее лицо: Новый пользователь
Основной сценарий:
- Пользователь находится на экране Sign Up Screen.
- Вводит имя, пароль и подтверждение пароля.
- Нажимает кнопку "Sign Up".
- Приложение проверяет корректность введенных данных (например, совпадение паролей).
- В случае успешной регистрации пользователь перенаправляется на Main Screen.
Альтернативный сценарий:
- Если данные некорректны (например, пароли не совпадают), приложение выводит сообщение об ошибке.
- Если у пользователя уже есть аккаунт, он нажимает ссылку "Sign In" на экране регистрации, после чего перенаправляется на экран входа.
Use Case: Поиск и фильтрация (Search and Filtering)
Действующее лицо: Пользователь
Основной сценарий:
- Пользователь находится на главном экране (Main Screen или Admin Main Screen).
- Пользователь вводит запрос в строку поиска и/или применяет фильтры.
- Пользователь нажимает на кнопку поиск или её аналог клавиатуре (enter).
- Приложение отображает карточки животных, которые соответствуют запросу и фильтрам.
Use Case: Просмотр карточки животного (View Breed Card)
Действующее лицо: Пользователь
Основной сценарий:
- Пользователь находится на главном экране (Main Screen или Admin Main Screen).
- Нажимает на карточку конкретной породы.
- Приложение отображает переходит на экран Breed Card c подробной информацией о породе, полезными ссылками, комментариями других пользлователей.
Use Case: Комментарии (Comments)
Действующее лицо: Пользователь
Основной сценарий1:
- Пользователь находится на Breed Card.
- Вводит комментарий в специальное поле.
- Приложение сохраняет комментарий и отображает его на странице.
- У пользователя, который оставил комментарий, в профиле появляется информация об этом в секции последние оставленные комментарии.
Основной сценарий2:
- Пользователь находится на Breed Card.
- Нажимает на комментарий другого пользователя для ответа.
- Вводит комментарий в специальное поле.
- Приложение сохраняет комментарий и отображает его на странице.
- Пользователю, на чей комменатрий ответили, приходит уведомление.
- У пользователя, который оставил комментарий, в профиле появляется информация об этом в секции последние оставленные комментарии.
Use Case: Лайки (Likes)
Действующее лицо: Пользователь
Основной сценарий:
- Пользователь находится на Breed Card в секции с комментариями.
- Нажимает кнопку лайка комментария.
- Приложение регистрирует лайк и обновляет счетчик лайков комменатрия.
- Пользователю, которому поставили лайк, приходит уведомление.
- У пользователя, который поставил лайк, в профиле появляется информация об этом в секции последние поставленные лайки.
Альтернативный сценарий:
- Если пользователь хочет убрать лайк, он повторно нажимает на иконку лайка. Уведомление, присланное до этого автору лайкнутого комментария, удаляется, информация о поставленном лайке в профиле лайкнувшего пользователя удаляется.
Use Case: Переход в профиль пользователя (View Profile)
Действующее лицо: Пользователь
Основной сценарий:
- Пользователь кликает на иконку профиля на главной странице (Main Screen или Admin Main Screen).
- Приложение переходит на Profile Page или Admin Profile Page.
Use Case: Редактирование профиля (Edit Profile)
Действующее лицо: Пользователь
Основной сценарий:
- Пользователь находится на странице профиля (Profile Page или Admin Profile Page).
- Нажимает кнопку "Edit Profile" (шестерёнка).
- Редактирует свои данные (возраст, имя, изображение профиля, любимые породы).
- Нажимает кнопку "Save".
- Приложение сохраняет изменения и обновляет информацию в профиле.
- Приложение перехождит на страницу профиля (Profile Page или Admin Profile Page).
Альтернативный сценарий:
- Если пользователь ввёл некорректные данные, приложение выводит сообщение об ошибке.
Use Case: Просмотр статистики (View Profile Stats)
Действующее лицо: Пользователь
Основной сценарий:
- Пользователь находится на странице профиля (Profile Page или Admin Profile Page).
- Нажимает на иконку статистики.
- Приложение отображает страницу Profile Stats с графиками и статистикой из выпадающего списка (например, самые популярные породы по просмотрам для пользователя, самые залайканные породы) с примененными фильтрами и для выбранного подмножества данных.
Use Case: Выход из системы (Log Out)
Действующее лицо: Пользователь
Основной сценарий:
- Пользователь находится на странице профиля (Profile Page или Admin Profile Page).
- Нажимает кнопку "Log Out".
- Приложение завершает сессию и перенаправляет пользователя на экран входа (Sign In Screen).
Use Case: Получение уведомления и переходит на страницу породы (Receive Notification and View Breed Card)
Действующее лицо: Пользователь
Основной сценарий:
- Пользователь получает уведомление о событии.
- Кликает на уведомление.
- Приложение переходит на Breed Card, в котором произошло событие.
Use Case: Просмотр своей истории активности на странице (User Activity)
Действующее лицо: Пользователь
Основной сценарий1:
- Пользователь находится на странице профиля (Profile Page или Admin Profile Page).
- Нажимает на элемент секции последних комментариев пользователя.
- Приложение переходит на Breed Card, в котором пользователь оставил комментарий.
Основной сценарий2:
- Пользователь находится на странице профиля (Profile Page или Admin Profile Page).
- Нажимает на элемент секции последних лайков пользователя.
- Приложение переходит на Breed Card, в котором пользователь поставил лайк.
Use Case: Управление избранными (Favorites Management)
Действующее лицо: Пользователь
Основной сценарий 1:
- Пользователь находится на Breed Card.
- Нажимает кнопку "Add to Favorites", и порода добавляется в избранное.
Основной сценарий 2:
- Пользователь находится на Profile Page или Admin Profile Page.
- Пользователь нажимает на карточку одного из любимых животных.
- Пользователь попадает на Breed Card
Альтернативный сценарий:
- На Breed Card пользователь может повторно нажать на кнопку "Add to Favorites", и животное удалится из любимых.
- В режиме редактирования профиля пользователь может удалить породы из избранного на Edit Profile.
Use Case: Экспорт данных (Data Export)
Действующее лицо: Администратор
Основной сценарий:
- Администратор находится на Admin Main Screen.
- Нажимает кнопку "Export Data".
- Приложение генерирует файл и предлагает сохранить его на устройство администратора.
Альтернативный сценарий:
- Если возникла ошибка при генерации файла, приложение выводит сообщение об ошибке и предлагает повторить экспорт.
Use Case: Импорт данных (Data Import)
Действующее лицо: Администратор
Основной сценарий:
- Администратор находится на Admin Main Screen.
- Нажимает кнопку "Import Data".
- Приложение предлагает выбрать файл на устройстве.
- Администратор выбирает файл и подтверждает импорт.
- Приложение проверяет данные на корректность и обновляет базу данных.
Альтернативный сценарий:
- Если файл некорректен, приложение выводит сообщение об ошибке и предлагает выбрать правильный файл.
Use Case: Возврат из профиля (Return from Profile)
Действующее лицо: Пользоваьтель
- Пользователь находится на странице профиля (Profile Page или Admin Profile Page).
- Нажимает стрелку "Назад".
- Приложение перехожит на страницу Main Screen или Admin Main Screen.
Use Case: Возврат из карточки животного (Return from Breed Card)
Действующее лицо: Пользоваьтель
- Пользователь находится на странице Breed Card.
- Нажимает стрелку "Назад".
- Приложение перехожит на страницу Main Screen или Admin Main Screen.
Use Case: Возврат из статистики (Return from Stats)
Действующее лицо: Пользоваьтель
- Пользователь находится на странице Profile Stats.
- Нажимает стрелку "Назад".
- Приложение перехожит на страницу Profile Page или Admin Profile Page.