# Запити зацікавлених осіб
# Вступ
У цьому документі описані основні характеристики створеного сервісу для проведення опитувань, включаючи короткі бізнес-сценарії, функціональність додатку, його зручність використання, рівень надійного захисту опитувань, продуктивність системи та відповідність сучасним стандартам.
# Мета
Основною ціллю проекту є розробка високофункціонального сервісу для проведення аналітичних опитувань та оптимізованої обробки отриманих даних.
# Контекст
Цей документ спрямований на аналіз завдань, пов'язаних із створенням системи для організації та управління експертними опитуваннями.
# Основні визначення та скорочення
# Посилання
- Практичність (opens new window)
- Надійність (opens new window)
- Продуктивність (opens new window)
- Експлуатаційна придатність (opens new window)
# Короткий зміст
- Характеристика ділових процесів
- Короткий огляд продукту
- Функціональність
- Практичність
- Надійність
- Продуктивність
- Експлуатаційна придатність
# Характеристика ділових процесів
Дається опис бізнес-сценаріїв взаємодії бізнес-акторів, робітників і, можливо, інформаційної системи за допомогою наступної специфікації:
# 1. ID ПРОЦЕСУ: USER__SIGN_UP
НАЗВА: Створити обліковий запис
УЧАСНИКИ: Система, користувач
ПЕРЕДУМОВИ: Користувач перейшов на сторінку, але не має облікового запису
РЕЗУЛЬТАТ: Створено акаунт для користувача
ВИКЛЮЧНІ СИТУАЦІЇ: Відміна реєстрації, акаунт вже існує, користувач вводить неправильні дані.
ОСНОВНИЙ СЦЕНАРІЙ:
- Користувач робить запит на реєстрацію.
- Система надає форму для заповнення (пошта, пароль, ім'я, вік, генедер).
- Користувач вводить дані та уточнює свою роль (клієнт чи замовник).
- Система заносить користувача в базу даних.
- Система створює акаунт користувача.
- Система перенаправляє користувача на форму входу в акаунт.
# 2. ID ПРОЦЕСУ: USER__SIGN_IN
НАЗВА: Ввійти в обліковий запис
УЧАСНИКИ: Система, користувач
ПЕРЕДУМОВИ: Авторизований користувач перейшов на сторінку
РЕЗУЛЬТАТ: Користувачу наданий доступ до акаунту
ВИКЛЮЧНІ СИТУАЦІЇ: Користувач вводить неправильні дані, відміна входу
ОСНОВНИЙ СЦЕНАРІЙ:
- Користувач вводить дані.
- Система обробляє дані.
- Система надає користувачу доступ до акаунту.
# 3. ID ПРОЦЕСУ: CLIENT__POST_POLL
НАЗВА: Створити опитування
УЧАСНИКИ: Клієнт, система
ПЕРЕДУМОВИ: Авторизований клієнт знаходиться на сторінці акаунту
РЕЗУЛЬТАТ: Створене опитування
ВИКЛЮЧНІ СИТУАЦІЇ: Клієнт ввів дані неправильно.
ОСНОВНИЙ СЦЕНАРІЙ:
- Клієнт переходить на сторінку, щоб створити опитування.
- Клієнт створює форму для опитування.
- Клієнт пише назву, опис опитування.
- Клієнт додає питання в опитування. Питання мають певний тип і опис.
- Клієнт обирає фахівців, які належать до певної категорії спеціальності, та надсилає форму.
- Система отримує та зберігає дані від клієнта.
- Клієнт отримує повідомлення про успішно створене опитування.
# 4. ID ПРОЦЕСУ: CLIENT__PATCH_POLL
НАЗВА: Внести зміни до опитування
УЧАСНИКИ: Клієнт, система
ПЕРЕДУМОВИ: Авторизований клієнт знаходиться на сторінці свого акаунту
РЕЗУЛЬТАТ: Змінене опитування
ВИКЛЮЧНІ СИТУАЦІЇ: Клієнт ввів дані неправильно
ОСНОВНИЙ СЦЕНАРІЙ:
- Клієнт переходить на сторінку для внесення змін.
- Клієнт робить зміни над опитуванням.
- Клієнт підтверджує бажання змінити форму.
- Система вносить зміни до бази даних.
# 5. ID ПРОЦЕСУ: CLIENT__DELETE_POLL
НАЗВА: Видалити опитування
УЧАСНИКИ: Клієнт, система
ПЕРЕДУМОВИ: Авторизований клієнт знаходиться на сторінці акаунту, опитування створене
РЕЗУЛЬТАТ: Видалене опитування
ВИКЛЮЧНІ СИТУАЦІЇ: Відсутні
ОСНОВНИЙ СЦЕНАРІЙ:
- Клієнт переходить на сторінку опитування.
- Клієнт робить запит на видалення опитування.
- Клієнт підтверджує бажання видалити форму.
- Система видаляє опитування з бази даних.
# 6. ID ПРОЦЕСУ: EXPERT__POST_RESPONSE
НАЗВА: Пройти опитування
УЧАСНИКИ: Система, експерт
ПЕРЕДУМОВИ: Експерт бажає пройти опитування
РЕЗУЛЬТАТ: Результати опитування надіслано до бази даних
ВИКЛЮЧНІ СИТУАЦІЇ: Неправильно введені дані
ОСНОВНИЙ СЦЕНАРІЙ:
- Авторизований експерт переходить на сторінку з опитуваннями.
- Експерт проходить опитування та надсилає заповнену форму.
- Система перевіряє дані від експерта.
- Система зберігає дані від експерта.
- Експерт отримує невелику суму за пройдене опитування
# 7. ID ПРОЦЕСУ: CLIENT__GET_RESPONSES
НАЗВА: Отримати результати опитування
УЧАСНИКИ: Клієнт, система
ПЕРЕДУМОВИ: Опитування створене, авторизований клієнт знаходиться на сторінці свого акаунту
РЕЗУЛЬТАТ: Клієнт отримує дані щодо опитування
ВИКЛЮЧНІ СИТУАЦІЇ: Опитування з таким id не знайдено, опитування ніхто не пройшов
ОСНОВНИЙ СЦЕНАРІЙ:
- Клієнт обирає в акаунті, статистика з якого опитування його цікавить.
- Клієнт робить запит на отримання результатів опитування.
- Клієнт переглядає результати та статистику.
# 8. ID ПРОЦЕСУ: EXPERT__GET_POLLS
НАЗВА: Отримати список питань
УЧАСНИКИ: Експерт, система
ПЕРЕДУМОВИ: Під дані клієнта існують питання, авторизований експерт знаходиться на сторінці свого акаунту
РЕЗУЛЬТАТ: Клієнт отримує список питань
ВИКЛЮЧНІ СИТУАЦІЇ: Відсутні
ОСНОВНИЙ СЦЕНАРІЙ:
- Експерт переходить на сторінку з опитуваннями.
- Експерт робить запит на отримання опитувань під його дані.
- Експерт бачить список можливих опитувань
# Короткий огляд продукту
Opinio - надійний інструмент для проведення опитувань, який сприяє створенню, розсилці та аналізу опитувань. Користувачі можуть розсилати анкети респондентам по електронній пошті та розміщувати їх на своїх веб-сайтах і в соціальних мережах для підвищення відсотка отриманих відповідей. Подібно до цього, застосунок надає можливість проводити опитування щодо задоволеності клієнтів для збору відгуків про продукти та послуги, а також анкети щодо задоволеності працівників, щоб оцінити ставлення працівників до роботи в компанії.
# Функціональність
Наша система має окремий функціональний інтерфейс для кожної категорії користувачів, що дає їм змогу максимізувати ефективність роботи над поставленими задачами. Також це дозволяє чітко окреслити межі між різними групами користувачів, і визначити їх взаємодію. Таким чином в системі представлені функціональні вимоги. Нижче наведені інтерфейси для кожної групи користувачів, у кожному з яких додані відповідні інструменти для максимізації робочого потенціалу відповідної категорії:
# 1. Клієнт
Клієнт - особа, яка має змогу створювати, редагувати, видаляти і зазначати теми опитування. Його ціллю є створення опитувань на важливі для нього теми, з метою отримання експертної думки щодо них. Клієнт має власний акаунт з необхідними функціями для управління опитуваннями. Процес реєстрації вимагає від клієнта зазначити електронну пошту, ПІБ, створити пароль до акаунту а також відповіді на питання, чи діє клієнт в своїх інтересах, чи інтересах своєї компанії.
# Функції клієнта:
- Створення опитування
- Призначення тем для опитування
- Редагування опитування
- Видалення опитування
- Перегляд результатів опитування
- Експортування результатів опитування
# 2. Експерт
Експерт - особа, яка може проходити опитування з його галузі знань. Мета експерта - надати професійну думку на теми, задані клієнтом. Експерт має дещо іншу форму реєстрації: окрім електронної пошти, ПІБ та паролю, він має обрати з переліку галузі в яких він спеціалізується, а також підтвердити свою професійність відповідним документом (диплом бакалавра і вище, міжнародньо визнані сертифікати курсів, тощо).
# Функції експерта:
- Проходження опитувань
- Додавання нових галузей знань до свого профілю
- Коментування опитувань
- Шукати доступні опитування
- Надсилання скарг на опитування, які порушують правила спільноти
# Практичність
- Інтуїтивно зрозумілий інтерфейс користувача;
- Зручні засоби звітування та аналізу опитувань;
- Швидкість і продуктивність у використанні;
- Онлайн підтримка;
# Надійність
- Конфіденційність данних користувачів;
- Захист від DDoS-атак;
- Постійне оновлення та моніторинг;
- Резервне копіювання та відновлення;
# Продуктивність
- Багатоплатформенність;
- Обмеження на кількість запитів в секунду встановлено на рівні 1 200;
- Максимальна кількість одночасних користувачів, які можуть проводити опитування, повинна становити 2 500 осіб;
- Кількість одночасно працюючих адміністраторів, які переглядають результати анкет, не повинна перевищувати 1 000 осіб;
- Система повинна обслуговувати до 20 000 користувачів одночасно;
# Експлуатаційна придатність
- Використання актуальних та сучасних технологій;
- Відкритий вихідний код проекту;
- Наявність документації для проекту;
- Регулярний рефакторінг коду;
- Систематична діагностика та усунення помилок;