You are on page 1of 26

Зміст

1. Вступ.......................................................................................................................................................1
1.1. Мета.....................................................................................................................................................1
1.2. Ціль......................................................................................................................................................1
1.3. Визначення, акроніми, абревіатури...................................................................................................2
1.4. Посилання...........................................................................................................................................2
2. Загальний опис........................................................................................................................................3
2.1. Перспективи продукту.......................................................................................................................3
2.2. Особливості продукту........................................................................................................................3
2.2.1. Інтерфейс споживача......................................................................................................................3
2.2.2. Системні ролі..................................................................................................................................3
2.3. Характеристика системних ролей.....................................................................................................3
2.4. Системні вимоги.................................................................................................................................4
3. Особливості системи..............................................................................................................................5
3.1. Сторінка входу....................................................................................................................................5
3.1.1. Опис процесу..................................................................................................................................5
3.1.2. Функціональні вимоги....................................................................................................................5
3.1.3. Особливі випадки...........................................................................................................................6
3.2. Сторінка реєстрації.............................................................................................................................6
3.2.1. Опис процесу..................................................................................................................................6
3.2.2. Функціональні вимоги....................................................................................................................7
3.2.3. Особливі випадки...........................................................................................................................8
3.3. Спільний функціонал.........................................................................................................................8
3.3.1. Загальний опис................................................................................................................................8
3.3.2. Таблиця рейсів................................................................................................................................9
3.3.2.1. Забронювати квиток.................................................................................................................10
3.3.3. Перегляд рейсів за статусом........................................................................................................10
3.4. Особистий кабінет............................................................................................................................10
3.4.1. Редагувати.....................................................................................................................................11
3.4.2. Додому...........................................................................................................................................12
3.5. Адміністрування таблиць.................................................................................................................12
3.5.1. Створити........................................................................................................................................13
3.5.2. Редагувати.....................................................................................................................................14
3.5.3. Перенести......................................................................................................................................14
3.5.4. Відмінити.......................................................................................................................................15
3.5.5. Видалити.......................................................................................................................................15
3.5.6. Додому...........................................................................................................................................15
3.6. Відповідні поля таблиць при створенні/редагуванні.....................................................................15
3.7. Особливості ролі «Власник»............................................................................................................17
3.7.1. Список всіх користувачів.............................................................................................................17
3.7.1.1. Створити....................................................................................................................................18
3.7.1.2. Редагувати.................................................................................................................................20
3.7.1.3. Видалити....................................................................................................................................21
3.7.1.4. Додому.......................................................................................................................................21
3.7.2. Додавання/видалення таблиць.....................................................................................................21
3.7.3. Додавання/видалення полів.........................................................................................................22
3.8. Особливості ролі «Адміністратор».................................................................................................22
3.8.1. Додавання/видалення полів.........................................................................................................22
3.9. Особливості ролі «Користувач»......................................................................................................22
3.10. Особливості таблиці «Рейси»......................................................................................................23
3.11. Особливості таблиці «Транспорт»...............................................................................................23
3.12. Особливості таблиці «Заброньовані квитки».............................................................................23
1. Вступ

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

Мета буде досягнута шляхом створення вебдодатку, який буде предсталяє


собою автовокзал. Архітектура додатку – клієнт-сервер.

Цей документ описує вимоги до Системи “Агентство нерухомості”. Він


організований у наступні розділи:

 Функціональні вимоги

 Нефункціональні вимоги

1.2. Ціль
Цей документ детально описує вимоги до функціональності програми,
встановлює обмеження та вимоги, які слід враховувати при розробці програми.
Цей документ буде використовуватися для розробки тестових випадків для
тестування додатку методом “чорного ящика”.

Система “Агентство нерухомості” дозволяти користувачам:

 Ідентифікацію в системі

 Реєстрацію

 Додавання користувача

 Додавання/Зміна/Видалення прав користувача

 Маніпулювання інформацією

 Бронювання квитків

 Пошук рейсів
 Перегляд прибутковості

1.3. Визначення, акроніми, абревіатури

1.4. Посилання
У цьому документі використовуються мокапи 1-19
2. Загальний опис

2.1. Перспективи продукту


Вважається що система “Міжміські перевезення” стане однією із
надійніших, найбезпечніших і найпрактичніших рішень даного характеру в
мережі. Її архітектура відповідає передовому досвіду розвитку електронної
комерції програмного забезпечення, в той же час впроваджує високоефективні
концепції розподілу послуг.

2.2. Особливості продукту

2.2.1. Інтерфейс споживача


 Ідентифікація

 Створення та керування рейсами

 Створення та керування користувачами у системі

 Маніпулювання інформацією

 Реєстрація

 Бронювання квитків

2.2.2. Системні ролі


 Власник

 Адміністратор

 Оператор

 Гість

2.3. Характеристика системних ролей


Всього в системі представленні 4 ролей: власник, адміністратор,
оператор, гість.

Власник – додавання/вилучення таблиць.


Адміністратор – додавання / редагування / вилучення полів таблиць.

Оператор – додавання / редагування / вилучення значень полів таблиць.

Гість – перегляд даних в таблицях.

2.4. Системні вимоги


Програма призначена для роботи в такій системі:

Windows XP SP3, Google Chrome версії 31 або інший подібний браузер.


3. Особливості системи

3.1. Сторінка входу

3.1.1. Опис процесу


Кожен зареєстрований користувач, який хоче увійти в систему, повинен
увійти, ввівши «Логін» і «Пароль». Після введення «Логіна» і «Пароля»
система повинна перевірити їх правильність. Якщо логін та пароль правильні,
користувач входить в систему, якщо ні, система сповіщає користувача про це і
дає йому ще одну спробу. Після успішного входу в систему, система
«Міжміські перевезення» відкриває нову вкладку. Особливість полягає в тому,
що різні користувачі бачать видозмінену вкладку.

3.1.2. Функціональні вимоги


 Поле «Логін» за замовчування займає плейсхолдер зі значенням
«Логін». Допускаються літери, спеціальні символи та цифри

 Поле «Пароль» за замовчування займає плейсхолдер зі значенням


«Пароль». Символи, введені в поле «Пароль», трансформуються в
зірочки(кружечки) відразу після введення.

 Кнопка «Увійти» завжди активна. Перевірка виконується натисканням


кнопки «Увійти» у такому порядку: Логін, Пароль.

Рис. 1 Сторінка входу


3.1.3. Особливі випадки
Система не дозволяє користувачам входити в систему в ситуаціях,
описаних нижче, і поводить себе так:

Ситуація Поведінка системи


Очищає поля «Логін» та «Пароль» і
Поле «Логін» порожнє, а користувач
надає користувачу нову спробу
натискає кнопку «Увійти»
увійти
У поле «Логін» вводиться
Очищає поля «Логін» та «Пароль» і
неправильний логін, і користувач
надає користувачу нову спробу
натискає кнопку
увійти
«Увійти»
Очищає поля «Логін» та «Пароль» і
Поле «Пароль» порожнє, і користувач
надає користувачу нову спробу
натискає кнопку «Увійти»
увійти
У полі «Пароль» вводиться Очищає поля «Логін» та «Пароль» і
неправильний пароль, і користувач надає користувачу нову спробу
натискає кнопку «Увійти» увійти

3.2. Сторінка реєстрації

3.2.1. Опис процесу


Кожен не зареєстрований користувач, який хоче зареєструватися в
системі, повинен пройти процедуру реєстрації. Після натискання кнопки
«Реєстрація» відкривається нова вкладка із формою. У формі представлені
наступні поля: «Ім’я», «По-батькові», «Прізвище», «Телефон», «E-mail»,
«Логін», «Пароль». Після натиснення кнопки «Зареєструватися» система
прийме дані та перевірить їх правильність. Після успішної перевірки система
переадресує користувача на сторінку входу, де йому потрібно буде увійти,
використовуючи попередньо створені дані.
3.2.2. Функціональні вимоги
 Поле «Ім’я» за замовчування займає плейсхолдер зі значенням «Ім’я».
Допускаються літери, спеціальні символи та цифри

 Поле «По-батькові» за замовчування займає плейсхолдер зі значенням


«По-батькові». Допускаються літери, спеціальні символи та цифри

 Поле «Прізвище» за замовчування займає плейсхолдер зі значенням


«Прізвище». Допускаються літери, спеціальні символи та цифри

 Поле «Телефон» за замовчування займає плейсхолдер зі значенням


«Телефон». Вхідні дані повинні відповідати патерну телефона

 Поле «E-mail» за замовчування займає плейсхолдер зі значенням «E-


mail». Вхідні дані повинні відповідати патерну електронної пошти

 Поле «Логін» за замовчування займає плейсхолдер зі значенням


«Логін». Допускаються літери, спеціальні символи та цифри

 Поле «Пароль» за замовчування займає плейсхолдер зі значенням


«Пароль». Допускаються літери, спеціальні символи та цифри
Рис. 2 Сторінка реєстрації

3.2.3. Особливі випадки


Система не дозволяє користувачам зареєструватися в системі в ситуаціях,
описаних нижче, і поводить себе так:

Ситуація Поведінка системи


Очищає всі поля та дає користувачу
Хоча б одне із полів порожнє
нову спробу зареєструватися

3.3.Спільний функціонал
В даному розділі описаний спільний функціонал для всі ролей системи.

3.3.1. Загальний опис


Стартова сторінка представляє собою вікно, більшу частину якого,
центральну, займає список сьогоднішніх рейсів. А зліва розміщені кнопки, які
переадресовують користувача на інші таблиці. Над таблицею рейсів, справа
вгорі, розміщена кнопка вийти та інтерактивне ім’я, при натисканні на яке
відбувається перехід в особистий кабінет.

Рис. 3 Головна сторінка

3.3.2. Таблиця рейсів


Елемент таблиці Опис
Id Порядковий номер рейсу
Транспорт Транспорт, який обслуговує маршрут
Маршрут Маршрут, за яким відбувається рейс
Водій Водій транспорту
День Дні у дорозі
Ціна Ціна квитка
Статус Статус рейсу
Створено Дата створення об’єкта
Оновлено Дата оновлення об’єкта
Відмінити Відміняє рейс(описано у пункті 3.5.4)
Перенести Переносить рейс(описано у пункті 3.5.3)
Видалити Видаляє рейс(описано у пункті 3.5.5)
Створити Створює рейс(описано у пункті 3.5.1)
Бронює квиток в транспорті на ім’я користувача
Забронювати квиток
системи
Рис. 4 Таблиця рейсів

3.3.2.1. Забронювати квиток


При натисканні на кнопку «Забронювати квиток» на сервер
відправляється запит із даними рейсу, на який бронюється квиток, та ім’ям
користувача, який бронює квиток. Система обробляє дані та бронює квиток,
також створює про запис в базі даних.

3.3.3. Перегляд рейсів за статусом


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

Рис. 5 Кнопки статусів

Рис. 6 Таблиця рейсів із певним статусом

3.4.Особистий кабінет
В особистому кабінеті представлена загальна інформація про користувача
– «Ім’я», «По-батькові», «Прізвище», «Телефон», «E-mail» та «Роль». Також
внизу розміщенні 2 кнопки: «Редагувати», «Додому».
Рис. 7 Особистий кабінет

3.4.1. Редагувати
При натисканні на кнопку редагувати «Редагувати» відкривається нове
вікно із формою заповненою даними із персонального кабінету. У формі
представлені наступні поля: «Ім’я», «По-батькові», «Прізвище», «Телефон», «E-
mail», а також кнопка «Зберегти зміни».

Поле «Ім’я» представляє собою поле для вводу, куди користувач сам
вводить дані. Допускаються літери, спеціальні символи та цифри

Поле «По-батькові» представляє собою поле для вводу, куди користувач


сам вводить дані. Допускаються літери, спеціальні символи та цифри

Поле «Прізвище» представляє собою поле для вводу, куди користувач


сам вводить дані. Допускаються літери, спеціальні символи та цифри
Поле «Телефон» представляє собою поле для вводу, куди користувач сам
вводить дані. Вхідні дані повинні відповідати патерну телефона

Поле «E-mail» представляє собою поле для вводу, куди користувач сам
вводить дані. Вхідні дані повинні відповідати патерну електронної пошти

При натисканні на кнопку «Зберегти зміни» система обробляє дані та


зберігає їх, після чого переадресовує користувача в персональний кабінет.

Рис. 8 Редагування особистої інформації

3.4.2. Додому
При натисканні кнопки «Додому» користувача переадресовує на головну
сторінку системи.

3.5. Адміністрування таблиць


Даний розділ є спільним для ролей «Власник», «Адміністратор»,
«Оператор». В ньому описуються загальні правила адміністрування даними в
таблицях.

Елемент сторінки Дія


Створити Відкриває нову вкладку із формую для створення
нового користувача
Відкриває ідентичну вкладку, як при натисканні
Редагувати елемента «Створити», але всі поля форми будуть
заповненні даними взятими із таблиці
Відкриває сторінку перенесення рейсу(тільки для
Перенести
рейсів)
Відмінити Відміняє рейс(тільки для рейсів)
Видалити Видаляє запис про користувача із бази
Додому Повертає на стартову сторінку

3.5.1. Створити
Відкриває вікно створення запису в таблицю. В даному вікні
представлена форма з характерними полями для вибраної таблиці. За
замовчуванням поле для вводу займає відповідний плейсхолдер. А також
кнопка «Створити», при натисканні на яку система обробляє дані та зберігає їх
в базі даних.

Рис. 9 Створення запису


3.5.2. Редагувати
Відкриває ідентичне вікно, як і кнопка «Створити», але всі поля
заповненні даними із таблиці. А також кнопка «Зберегти зміни» , при
натисканні на яку система обробляє дані та зберігає їх в базі даних.

Рис. 10 Редагування запису

3.5.3. Перенести
Відкриває вікно із формою, в якій представлені такі елементи:

 Поле «День відправлення»

 Поле «День прибуття»

 Поле «Година відправлення»

 Поле «Година прибуття»

 Кнопка «Перенести»
Поле «День відправлення» представляє собою поле вводу дати, де
користувач вводить нову дату відправлення рейсу.

Поле «День прибуття» представляє собою поле вводу дати, де


користувач вводить нову дату прибуття рейсу.

Поле «Година відправлення» представляє собою поле вводу дати, де


користувач вводить нову годину відправлення рейсу.

Поле «Година прибуття» представляє собою поле вводу дати, де


користувач вводить нову годину прибуття рейсу.

При натисканні на кнопку «Перенести» система обробляє інформацію та


зберігає її в базі, також змінює статус рейсу.

3.5.4. Відмінити
При натисканні на кнопку «Відмінити» система відміняє рейс та змінює
його статус.

3.5.5. Видалити
При натисканні на кнопку «Видалити» система видаляє запис зі своєї
бази даних.

Рис. 11 Видалити запис

3.5.6. Додому
При натисканні на кнопку «Додому» система відкриває стартову
сторінку.

3.6. Відповідні поля таблиць при створенні/редагуванні


Рейс:

 Транспорт

 Водій
 Маршрут

 День відправлення

 День прибуття

 Вартість квитка

Транспорт:

 Бренд

 Модель

 Номер

 Категорія

 Кількість місць

 Компанія

Водій:

 Ім’я

 По-батькові

 Прізвище

 Дата народження

 Тип крові

 Категорія

Маршрут:

 Дистанція

 Час відправки

 Час прибуття

 Місто відправки
 Місто прибуття

Прибутковість:

 Маршрут

 День початку

 День кінця

Користувач:

 Ім’я

 По-батькові

 Прізвище

 Телефон

 E-mail

 Логін

 Пароль

 Роль

Всі поля, які характеризують значення системи або фіксовані значення


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

3.7. Особливості ролі «Власник»


У верхньому лівому куті розміщена кнопка «Список всіх користувачів»,
яка переадресовує користувача на сторінку зі списком всіх користувачів
системи.
3.7.1. Список всіх користувачів
Вкладка «Список всіх користувачів» представляє собою таблицю зі всіма
користувачів системи, їх вхідними, персональними даними та їх роллю в
системі. Також є кнопки, які відповідають за основні дії із цими даними.

Елемент сторінки Дія


Відкриває нову вкладку із формую для створення
Створити
нового користувача
Відкриває ідентичну вкладку, як при натисканні
Редагувати елемента «Створити», але всі поля форми будуть
заповненні даними взятими із таблиці
Видалити Видаляє запис про користувача із бази
Додому Повертає на стартову сторінку

3.7.1.1. Створити
Відкриває нове вікно із наступними елементами:

 Поле «Ім’я»

 Поле «По-батькові»

 Поле «Прізвище»

 Поле «Телефон»

 Поле «E-Mail»

 Поле «Логін»

 Поле «Пароль»

 Кнопка «Створити»

Поле «Ім’я» представляє собою поле для вводу, в яке користувач сам
вводить дані. Може містити будь-які символи.

Поле «По-Батькові» представляє собою поле для вводу, в яке користувач


сам вводить дані. Може містити будь-які символи.
Поле «Прізвище» представляє собою поле для вводу, в яке користувач
сам вводить дані. Може містити будь-які символи.

Поле «Телефон» представляє собою поле для вводу, в яке користувач сам
вводить дані. Дані, що вводить користувач повинні відповідати патерну
телефона.

Поле «E-Mail» представляє собою поле для вводу, в яке користувач сам
вводить дані. Може Дані, що вводить користувач повинні відповідати патерну
електронної пошти.

Поле «Логін» представляє собою поле для вводу, в яке користувач сам
вводить дані. Може містити будь-які символи.

Поле «Пароль» представляє собою поле для вводу, в яке користувач сам
вводить дані. Може містити будь-які символи.

При натисканні на кнопку «Зберегти зміни» система обробляє дані з


полів та заносить їх до бази даних.

Рис. 12 Створити користувача


3.7.1.2. Редагувати
Відкриває ідентичне вікно до того, що і снопка «Створити», але всі поля
є заповненими даними із таблиці. На сторінці присутні наступні елементи:

 Поле «Ім’я»

 Поле «По-батькові»

 Поле «Прізвище»

 Поле «Телефон»

 Поле «E-Mail»

 Поле «Логін»

 Поле «Пароль»

 Кнопка «Створити»

Поле «Ім’я» представляє собою поле для вводу, в яке користувач сам
вводить дані. Може містити будь-які символи.

Поле «По-Батькові» представляє собою поле для вводу, в яке користувач


сам вводить дані. Може містити будь-які символи.

Поле «Прізвище» представляє собою поле для вводу, в яке користувач


сам вводить дані. Може містити будь-які символи.

Поле «Телефон» представляє собою поле для вводу, в яке користувач сам
вводить дані. Дані, що вводить користувач повинні відповідати патерну
телефона.

Поле «E-Mail» представляє собою поле для вводу, в яке користувач сам
вводить дані. Може Дані, що вводить користувач повинні відповідати патерну
електронної пошти.

Поле «Логін» представляє собою поле для вводу, в яке користувач сам
вводить дані. Може містити будь-які символи.
Поле «Пароль» представляє собою поле для вводу, в яке користувач сам
вводить дані. Може містити будь-які символи.

При натисканні на кнопку «Зберегти зміни» система обробляє дані з


полів та заносить їх до бази даних.

Рис. 13 Редагувати користувача

3.7.1.3. Видалити
При натисканні на кнопку «Видалити» система видаляє користувача зі
своєї бази даних.

3.7.1.4. Додому
При натисканні на кнопку «Додому» система відкриває стартову
сторінку.

3.7.2. Додавання/видалення таблиць


Додавання або видалення таблиць відбувається безпосередньо через IDE.
3.7.3. Додавання/видалення полів
Під кожною із таблиць знаходяться перемикачі, які відповідають
основним її полям. При активуванні перемикача система відображає відповідне
поле, при вимиканні система скриває поле. Також при змінні значення
перемикача система зберігає значення всім перемикачів в окремий файл, що
дозволяє динамічно змінювати таблицю всіх користувачів. При відкриванні
сторінки таблиці, система завантажує дані із відповідного файлу та застосовує
значення до перемикачів.

Рис. 14 Перемикачі

3.8. Особливості ролі «Адміністратор»


Адміністратор може видаляти/додавати поля таблиці.

3.8.1. Додавання/видалення полів


Під кожною із таблиць знаходяться перемикачі, які відповідають
основним її полям. При активуванні перемикача система відображає відповідне
поле, при вимиканні система скриває поле. Також при змінні значення
перемикача система зберігає значення всім перемикачів в окремий файл, що
дозволяє динамічно змінювати таблицю всіх користувачів. При відкриванні
сторінки таблиці, система завантажує дані із відповідного файлу та застосовує
значення до перемикачів.

Рис. 15 Перемикачі

3.9. Особливості ролі «Користувач»


При відкриванні таблиці «Заброньовані квитка» система відображає
тільки ті квитки, які замовляв поточний користувач.
3.10. Особливості таблиці «Рейси»
При наведенні на поле «Id» таблиці можна побачити кнопку
«Пасажири». Якщо натиснути її, то відкриється нове вікно, де буде перелік
всіх пасажирів даного рейсу.

Рис. 16 Пасажири

При наведені на поле «Маршрут» відобразиться список всіх можливих


статусів рейсу. При виборі одного з них система відкриє нову вкладку із всіма
рейсами із даним статусом та цим маршрутом.

Рис. 17 Статуси

При натисканні на поле «Транспорт» система відкриє детальну


інформацію про транспорт, що обслуговував даний рейс.

3.11. Особливості таблиці «Транспорт»


При натисканні на поле «Паспорт» система відкриє нове вікно із
паспортною інформацію видраного транспорту.

3.12. Особливості таблиці «Заброньовані квитки»


В дані таблиці можна зробити пошук квитків за певним інтервалом, для
цього на сторінці представлені 2 поля для початкового та кінцевого інтервалів
пошуку та кнопка «Пошук». Якщо хоча б одне із полів порожнє, то пошук не
відбудиться.

Рис. 18 Поля для пошуку в інтервалі

При наведенні на поле пасажир можна виконати пошук квитків за повним


іменем або тільки за фамілією пасажира.

Рис. 19 Пошук за повним ім’ям або тільки фамілією

You might also like