Skip to content
This repository has been archived by the owner on Sep 6, 2023. It is now read-only.

2.7 Функциональные требования (1й релиз)

MazepovaValeria edited this page Aug 26, 2023 · 1 revision

Концепт продукта:

Удобный поиск интересующей медицинской информации для разных категорий пользователей.

Целевая аудитория:

Любой человек разных профессий и возраста

Врачи, студенты мед вузов

Роли:

  • Модератор
  • Администратор
  • Пользователь (обычный пользователь/врач)

Функциональные требования

Главная страница

Погрешность любого элемента может быть в пределах 10 pxl

Вид Главной страницы

Хедер: Лого-название портала, Поисковая строка, Иконка личного кабинета

Основное меню сайта входит в хедер:

Новости, Статьи, Подкасты, Лекарства и БАД, Вопрос врачу

Если пользователь авторизирован, то вместо иконки личного кабинета отображается Имя и первая буква фамилии

Футер:

Лого-название портала, ниже "Медицинский информационный портал"

Кликабельные ссылки:

  • О портале
  • Авторам
  • Полезные ссылки
  • Контакты
  • Пользовательское соглашение
  • Политика конфиденциальности

Хедер статичен, виден при прокрутке экрана, а также при переходе на другую страницу. Когда пользователь находится в авторизованной зоне, на главной странице отображаются его имя и первая буква фамилии. Строка поиска - это просто поле ввода. Должна позволять задавать текстовые запросы, в т.ч. с неполным соответствием. Количество символов для ввода ограничено до 250

Просмотр Главной страницы

Хедер

Разделы контента:

  • новости актуальная новость обязательно с превью/картинкой слева, справа список и 6 новостей (в хронологическом порядке) ниже кнопка "Еще новости"

  • выбрать тему (далее Фильтры) (подробнее расписано в отдельном подразделе требований)

  • статьи (с превью), 6 шт на странице, плюс карточка "Еще статьи", согласно макету, при клике открывается страница просмотра статей.

  • подкасты (картинки, согласно макету), плюс карточка "Больше подкастов", согласно макету, при клике открывается страница просмотра подкастов.

  • Поле подпишись на рассылку

  • Лекарства и БАД, две большие картинки-таба, согласна макету

  • Задать вопрос врачу (картинка, название направления медицинской отрасли), плюс карточка "Остальные категории", согласно макету, при клике открывается страница просмотра всех категорий медицинских специализаций.

Футер

Фильтры можно использовать в любом количестве и в любых комбинациях (подробнее о филт трации статья ниже) Контент главной страницы должен автоматически формироваться в зависимости от выбранных фильтров или запроса в поисковой строке и группироваться по названиям разделов.

Навигация по разделам

При клике на соответствующий раздел открывается отдельная страница с подборкой статей или новостей по тематике: Новости Статьи Подкасты Лекарства и БАД Вопрос врачу

Регистрация в личном кабинете на сайте Стетоскоп

1. Основной пользовательский путь. Регистрация.

Пользователь заходит на главную страницу сайта нажимает на иконку профиля в хедере-> Открывается дропдаун с 2 кнопками «Войти и «Зарегистрироваться»-> При нажатии «Зарегистрироваться» открывается форма регистрации -> Заполняет данные согласно шаблону 1 -> Нажимает кнопку “Зарегистрироваться”-> При успешной регистрации попадает в «Личный кабинет пользователя» (Данные падают в БД, Система формирует письмо и отправляет его на почту администратору сайта и пользователю с информацией о регистрации).

Если пользователь уже зарегистрирован, то под последним полем для ввода появляется строка (красным шрифтом) «Пользователь уже зарегистрирован. Нажмите кнопку «Войти», чтобы авторизироваться".

Шаблон 1 формы регистрации содержит:

  • адрес эл почты
  • имя
  • фамилия
  • пароль
  • повторный ввод пароля
  • кнопка «Зарегистрироваться»
  • чек-бокс о "Согласие на обработку персональных данных" и "Принимаю Пользовательское соглашение"

При нажатии на Пользовательское соглашение открывается текст (файл пдф, как в футере).

Ниже ввода данных имеется поле: текст "Есть аккаунт" и неявная/скрытая кнопка «Войти».

Все поля обязательны для заполнения.

Требования для формирования Заявки на регистрацию.

Имя: Текстовое поле, минимальное количество символов 1, максимальное не более 50 значений, обязательно к заполнению, не должно содержать значения: %;.*^)_@!, доступно для заполнения значениями кириллицы/латиницы.

Фамилия: Текстовое поле, минимальное количество символов 1, максимальное не более 50 значений, обязательно к заполнению, не должно содержать значения: %;.*^)_@!, доступно для заполнения значениями кириллицы/латиницы.

Email: разрешенные символы: прописные буквы (A-Z), строчные буквы (az), цифры (0-9), точка (.), дефис (-), at (@), нижнее подчеркивание (_), пробелы, ограничение символов до 50 значений, заполняется по маске: [[email protected]]

Пароль: любые символы, ограничение не менее 6 и до 20

Добавить форму на сайт и настроить сборку данных из атрибутов формы, отправляя их в БД.

Шаблон письма о регистрации.

Имеет структуру: Тема: [Номер заявки] Пользователь зарегистрирован в системе

Отправитель: [email protected]

Получатель: e-mail пользователя

Тело письма: дублирование информации из формы регистрации.

2. Форма авторизации

Пользователь заходит на главную страницу сайта нажимает на иконку профиля в хедере-> Открывается дропдаун с 2 кнопками «Войти и «Зарегистрироваться»-> При нажатии «Войти» открывается форма авторизации -> Заполняет данные согласно шаблону 2-> Нажимает кнопку “Войти”-> При успешной авторизации попадает в «Личный кабинет пользователя»

Если пользователь не зарегистрирован, то под последним полем для ввода появляется строка (красным шрифтом) «Пользователь не зарегистрирован. Нажмите на ссылку «Зарегистрируйтесь», чтобы создать аккаунт".

Шаблон 2 формы авторизации содержит:

  • адрес эл почты
  • пароль
  • кнопка «Войти»

ссылка "Забыли пароль?"

Ниже ввода данных имеется поле: текст "Нет аккаунта" и неявная кнопка/ссылка «Зарегистрируйтесь».

Все поля обязательны для заполнения.

Требования к форме авторизации.

Email: разрешенные символы: прописные буквы (A-Z), строчные буквы (az), цифры (0-9), точка (.), дефис (-), at (@), нижнее подчеркивание (_), пробелы, ограничение символов до 50 значений, заполняется по маске: [[email protected]]

Пароль: любые символы, ограничение не менее 6 и до 20

3. Сценарий сброса пароля и установка нового

Если Пользователь забыл/неправильно ввел пароль предусмотрен сценарий восстановления Пароля. При неправильном вводе пароля, под последним полем для ввода появляется строка (красным шрифтом) «Неверный логин или пароль. Повторите попытку или нажмите на ссылку "Забыли пароль?", чтобы восстановить его"

При 3х кратном неверном введении пароля, а также при клике на ссылку "Забыли пароль?" всплывает окно-форма "Восстановление пароля":

Форма "Восстановления пароля"

Текст: "Введите e-mail, который вы использовали для регистрации"

  • Поле для введения адреса эл почты.
  • кнопка "Отправить"
  • неявная кнопка "Вернуться назад"

*Пароль: любые символы, ограничение не менее 6 и до 20

После ввода эл.почты появляется окно:

Текст: "Мы отправили инструкцию по восстановлению пароля на указанную почту

  • знак V/картинка с изображением конверта

  • поле-кнопка "Оправить повторно"

  • поле-кнопка "Вернуться на главную"

На почту придёт письмо со ссылкой на страницу установки нового пароля.

После перехода на эту страницу пользователю нужно дважды ввести новый пароль, сохранить его и авторизоваться.

Вид страницы:

  • Новый пароль текст "Пароль должен содержать 6-20 символов"

  • повторить новый пароль

  • кнопка "Сохранить новый пароль"

При успешном сохранении пароля Данные падают в БД, Система формирует письмо и отправляет его пользователю с информацией о смене пароля.

Далее появляется окно: текст "Пароль успешно изменен"

  • картинка согласно дизайну
  • поле-кнопка "Войти в личный кабинет"

Шаблон письма о смене пароля.

Имеет структуру: Тема: Смена пароля на сайте Стетоскоп

Отправитель: [email protected]

Получатель: e-mail пользователя

Тело письма: ссылка на страницу смены пароля.

4. Личный кабинет

Вид страницы

Хедер Ниже слева Личная информация:

  • фото пользователя/аватар;
  • Имя и фамилия, рядом кнопка-иконка, при нажатии которой можно редактировать личную информацию;
  • роль пользователя (пользователь/врач), далее отображается иконкой;
  • чек бокс о подписке на рассылку сайта.

Справа: Набор статей, которые добавлены в Избранное, с возможностью их удаления. Вид списка статей: превью статьи, дата, название, автор, количество просмотров.

При нажатии на чек бокс для редактирования личной информации открывается новая страница.

Вид страницы

Вверху страницы отображается лого, строка поиска Ниже хедер, далее Личная информация с полями:

  • Имя
  • Фамилия
  • кнопка «Сохранить»

Имя/Фамилия: Текстовое поле, не более 50 значений, обязательно к заполнению, не должно содержать значения: %;.*^)_@!, доступно для заполнения значениями кириллицы/латиницы. Необходим ввод минимум 1 буквы.

Второй релиз:

Смена роли Пользователя

Решение о смене роли Пользователя принимает Администратор.

Обращение к Администратору происходит через "Контакты"

Фильтры и поисковая строка

На главной странице портала в хедере расположена строка поиска, под хедером и основным блоком с самой популярной статьей и новостями (согласно утвержденному макету) располагается слайдер с табами (“карусель”), справа от которого кнопка “Фильтры”.

Модератором в админке задается количество фильтров и тегов, а также их названия, после чего они назначаются каждой статье и каждому подкасту.

Слайдер с табами

Слайдер с табами (“карусель”) выполняет функцию фильтрации по области медицинских знаний (“Офтальмология”, “Стоматология” и т.д.). При первом входе на сайт инфоблоки “Статьи” и “Подкасты” выдаются в перемешку. Таб «Все разделы» выбран по умолчанию при первом входе на сайт. Клик по любому неактивному табу скрывает текущий контент и отображает контент выбранного таба или выбранных табов. Таб «Все разделы» становится неактивным при клике на любой таб, например «офтальмология». При нажатии на таб "Все разделы" все табы теряют подсветку (при этом фильтры в разделе фильтров сохраняют свое состояние). Таб «Все разделы» прокручивается вместе с остальными. Результаты выдачи после применения поисковой строки также отменяются при нажатии на таб "Все разделы". При нажатии на таб в слайдере он меняет цвет, а инфоблоки “Статьи” и “Подкасты” на главной странице (ниже) автоматически подстраиваются под выбранную тематику. При нажатии двух и более табов, они также выделяются цветом, инфоблоки “Статьи” и “Подкасты” на главной странице (ниже) автоматически подстраиваются под выбранные темы. Статьи и подкасты в соответствующих блоках располагаются в произвольно перемешанном порядке. При нажатии на кнопку “->” (“далее”, согласно макету располагается справа от превью нескольких статей или подкастов на заданную тему) пользователь попадает в “ленту статей” или в “ленту подкастов” соответственно, в которой статьи или подкасты располагаются в произвольно перемешанном порядке (в зависимости от заданной в слайдере с табами тематикой).

Кнопка “Фильтры

Кнопка “Фильтры” вызывает всплывающее окно с фильтрами по названиям заболеваний (“Катаракта”, “Глаукома”, “Деструкция”, “Воспаление” и т.д.), тегами (“Мужчина”, “Женщина”, “Беременные”, “Младенцы”, “Подростки”, “Старше 65”, “ЗОЖ”, “Вакцинация”, “COVID-19”, “Глаза”, “Кожа”, “Легкие”, “ЖКТ”, “Печень”, “Сердце”, “Почки” и т.д.), кнопками “Очистить все” и “Показать”.

Фильтр по названиям заболеваний

Фильтр по названиям заболеваний позволяет настроить инфоблоки “Статьи” и “Подкасты” на главной странице “более точечно” (после нажатия кнопки “Показать”). Их можно использовать как по одному, так и несколько одновременно, как в совокупности с фильтром (фильтрами) по области медицинских знаний (слайдер с табами на главной странице), так и отдельно. При выборе фильтра (фильтров) кнопка меняет цвет. После нажатия кнопки “Показать” всплывающее окно закрывается, инфоблоки “Статьи” и “Подкасты” на главной странице автоматически подстраиваются под выбранную тематику, а на кнопке “Фильтры” появляется заметная цифра, отображающая количество выбранных фильтров во всплывающем окне. При нажатии на кнопку “->” (“далее”, согласно макету располагается на главной странице, справа от превью нескольких статей или подкастов на заданную тему) пользователь попадает в “ленту статей” или в “ленту подкастов” соответственно, в которой статьи или подкасты располагаются в произвольно перемешанном порядке (в зависимости от заданных настроек в слайдере с табами на главной странице и/или во всплывающем окне, вызванном нажатием кнопки “Фильтры” на главной странице).

Теги

Теги (“Мужчина”, “Женщина”, “Беременные”, “Младенцы”, “Подростки”, “Старше 65”, “ЗОЖ”, “Лекарственные средства”, “БАДы”, “Вакцинация”, “COVID-19”, “Уход за больными, “Глаза”, “Кожа”, “Легкие”, “ЖКТ”, “Печень”, “Сердце”, “Почки” и т.д.) во всплывающем окне, вызванном нажатием кнопки “Фильтры” на главной странице, располагаются ниже фильтров по названиям заболеваний и представляют собой отдельный блок. Их можно использовать как по одному, так и несколько одновременно, как в совокупности с фильтром (фильтрами) по области медицинских знаний (слайдер с табами на главной странице) и/или фильтром (фильтрами) по названиям заболеваний, так и отдельно. При выборе тега (тегов) кнопка меняет цвет. После нажатия кнопки “Показать” всплывающее окно закрывается, инфоблоки “Статьи” и “Подкасты” на главной странице автоматически подстраиваются под выбранную тематику, а на кнопке “Фильтры” появляется заметная цифра, отображающая количество выбранных фильтров во всплывающем окне. При нажатии на кнопку “->” (“далее”, согласно макету располагается на главной странице, справа от превью нескольких статей или подкастов на заданную тему) пользователь попадает в “ленту статей” или в “ленту подкастов” соответственно, в которой статьи или подкасты располагаются в произвольно перемешанном порядке (в зависимости от заданных настроек в слайдере с табами на главной странице и/или во всплывающем окне, вызванном нажатием кнопки “Фильтры” на главной странице).

Кнопка “Очистить все

Кнопка “Очистить все” во всплывающем окне, вызванном нажатием кнопки “Фильтры” на главной странице, отменяет все выбранные фильтры и теги (фильтр по названиям заболеваний и теги в текущем окне). После нажатия кнопки “Очистить все” всплывающее окно закрывается, цифра, отображающая количество выбранных фильтров, на кнопке “Фильтры” (на главной странице) исчезает, инфоблоки “Статьи” и “Подкасты” на главной странице автоматически показывают случайный набор статей и подкастов (к ним применен только фильтр по области медицинских знаний на главной странице, если он выбран). При нажатии на кнопку “->” (“далее”, согласно макету располагается на главной странице, справа от превью нескольких статей или подкастов на заданную тему) пользователь попадает в “ленту статей” или в “ленту подкастов” соответственно, в которой статьи или подкасты располагаются в произвольно перемешанном порядке (без заданной во всплывающем окне фильтрами и тегами). Если пользователь не выбрал ни одного фильтра или тега, кнопка “Очистить все” должна быть неактивной.

Строка поиска

Строка поиска расположена в хедере главной страницы портала. Она позволяет вводить текстовую информацию (кириллические и латинские символы, цифры, а также следующие знаки: „.“, „,“, „:“, „;“, „*“, „%“). При начале ввода текстовой информации, совпадающей с названием фильтров или тегов, система поиска предлагает заполнить строку идентичным текстом. После применения поиска инфоблоки “Статьи” и “Подкасты” на главной странице автоматически подстраиваются под выбранную тематику. При нажатии на кнопку “->” (“далее”, согласно макету располагается на главной странице, справа от превью нескольких статей или подкастов на заданную тему) пользователь попадает в “ленту статей” или в “ленту подкастов” соответственно, в которой статьи или подкасты располагаются в произвольно перемешанном порядке (в зависимости от заданных настроек в поисковой строке). Поисковую строку можно совмещать с фильтрами и/или тегами, как до их применения, так и после (для более точного поиска).

Раздел "Новости"

В категорию "Новости" выводятся статьи с тегом "Новости", в хронологическом порядке с даты публикации.

При клике на раздел открывается отдельная страница с подборкой новостей по заданной тематике (если применен фильтр).

В разделе должны быть карточки новостей с:

  • названием,
  • датой публикации,
  • картинкой или фото,
  • превью текста,
  • указанием ориентировочного времени прочтения

Подсчет времени на прочтение делается на стороне фронта: условно считается в минутах, деление количества слов в статье на 200)

  • возможностью "добавить в избранное" в ленте (далее Избранные статьи отображаются в ЛК),
  • возможностью ставить лайки/дизлайки,
  • показом количества лайков,
  • показом рейтинга публикации
  • показом количества просмотров

Считается любое новое открытие статьи (с одного и того же браузера, IP)

Превью на странице - 5 актуальных новостей, в соответствии с макетом Кнопка "Еще новости" (открывает превью следующих 5 в хронологическом порядке)

Просмотр карточки "Новости"

"Новость" содержит:

  • картинку или фото,

  • название,

  • указание ориентировочного времени прочтения,

  • текст,

  • имя автора,

  • количество публикаций автора (если есть),

  • название источника (если есть),

  • ссылку на источник (если есть).

Дополнительные фичи:

  • рейтинг автора (2й релиз?),
  • показ количества лайков,
  • показ рейтинга публикации
  • показ количества просмотров

Второй релиз:

  • возможность сделать репост в мессенджеры,
  • возможность ставить лайки/дизлайки, успеваем в МВП
  • рекомендованные материалы на "выбранную тему"

Рейтинг автора рассчитывается в зависимости от количества публикаций, лайков и дизлайков. Не более одного лайка/дизлайка с одного устройства. Рекомендованные материалы должны группироваться по названиям разделов.

Раздел "Статьи"

При клике на раздел открывается отдельная страница с подборкой статьей заданной тематике (если применен фильтр).

В разделе должны быть карточки статей с:

  • названием,
  • датой публикации,
  • картинкой или фото,
  • превью текста,
  • указанием ориентировочного времени прочтения

Подсчет времени на прочтение делается на стороне фронта: условно считается в минутах, деление количества слов в статье на 200

  • возможностью "добавить в Избранное" - значок в ленте (далее Избранные статьи отображаются в ЛК)
  • возможностью ставить лайки/дизлайки,
  • показом количества лайков

Не более одного лайка/дизлайка с одного устройства.

  • показом рейтинга публикации
  • показом количества просмотров

Считается любое новое открытие статьи (с одного и того же браузера, IP)

Превью на странице - 6 актуальных статей, в соответствии с макетом.

Кнопка "Еще статьи" (открывает превью следующих 6 в хронологическом порядке)

Просмотр карточки Статьи

"Статья содержит:

  • кнопку возврата к ленте статей,
  • картинку или фото,
  • название,
  • указание ориентировочного времени прочтения,
  • текст,
  • имя автора,
  • количество публикаций автора,
  • рейтинг автора,
  • название источника,
  • ссылку на источник.

Дополнительные фичи:

  • показ количества лайков,
  • показ рейтинга публикации
  • показ количества просмотров
  • возможность ""добавить в избранное"" в ленте

Второй релиз:

  • возможность оставить комментарий,
  • возможность сделать репост в мессенджеры,
  • возможность ставить лайки/дизлайки, ?? успеваем в МВП??
  • рекомендованные материалы на "выбранную тему"

Рейтинг автора рассчитывается в зависимости от количества публикаций, лайков и дизлайков. Не более одного лайка/дизлайка с одного устройства. Рекомендованные материалы должны группироваться по названиям разделов.

Подписка на рассылку

На главной странице есть блок "Подпишитесь на нашу рассылку" Текст ниже : Мы будем присылать вам актуальные статьи и новости раз в неделю.

  • поле для ввода эл. почты, кнопка "Подписаться", (картинка конверт справа)

После ввода эл. почты, данные падают в БД, всплывает уведомление "Спасибо, что подписались на нашу рассылку"

Если пользователь уже подписан, то появляется уведомление "Вы уже подписаны"

При оформлении подписки на эл. почту пользователя приходит письмо с информацией об оформлении подписки.

Шаблон письма об оформлении подписки

Имеет структуру:

Тема: Актуальные новости от медицинского портала Стетоскоп

Отправитель: [email protected]

Получатель: e-mail пользователя

Тело письма: Надо разработать!! (нужно, чтобы был призыв зарегистрироваться на сайте), оформлена в соответствии с UI-kit и общим дизайном сайта

Перечень ссылок на статьи формируется вручную админом сайта. Рассылка еженедельная.

Раздел "Подкасты"

При клике на раздел открывается отдельная страница с подборкой аудио/видео подкастов по заданной тематике (если применен фильтр).

Если не соблюдается пункт выше, при каждой новой загрузке страницы карточки формируются в произвольном порядке.

В разделе должны быть превью аудио/видеоматериалов с:

  • названием,
  • датой публикации,
  • картинкой или фото,
  • кратким содержанием,
  • указанием времени просмотра или прослушивания.

Материалы имеют ссылку для перехода на источник видео/аудио подкаста.

Раздел "Лекарства и БАД" (100% -10 релиз!)

При клике на раздел открывается отдельная страница с алфавитным указателем лекарственных средств. Пользователь выбирает букву алфавита, открывается список препаратов на данную букву в алфавитном порядке.

Нажатие на название препарата открывает:

  • Описание препарата,
  • Действующее вещество,
  • ATX (Анатомо-терапевтическо-химическая классификация),
  • Фармакологическая группа.

Раздел "Вопрос врачу"

На главной странице данный блок представлен набором карточек со специализацией, согласно макету.

При каждой новой загрузке страницы карточки формируются в произвольном порядке.

При клике на раздел в меню хедера, открывается отдельная страница со всеми имеющимися специализациями.

Каждая карточка имеет:

  • картинку/специализацию согласно макету,
  • название направления медицинской отрасли,
  • кнопка "Задать вопрос"

При клике на кнопку "Задать вопрос" открывается новая страница.

Страница ввода вопроса

Хедер Название направления медицинской отрасли

  • Поле для введения темы вопроса
  • Поле для введения текста вопроса
  • кнопка "Опубликовать вопрос", нажимая кнопку вы принимаете условия "Пользовательского соглашения"
  • чек-бокс "Задать вопрос анонимно"
  • чек-бокс "Получать уведомления"

Страница ответов на вопросы

Хедер Название направления медицинской отрасли

1 поле содержит:

  • имя автора (либо "Анонимно")
  • тема и текст вопроса
  • кнопка "Ответить"

Все последующие поля ответов Пользователей в хронологическом порядке.

  • имя автора (либо "Анонимно"),
  • ответ на вопрос,

Ответ на вопрос, публикуемый врачом, имеет соответствующую иконку.

Clone this wiki locally