Please use this identifier to cite or link to this item:
https://er.chdtu.edu.ua/handle/ChSTU/6883| Title: | Інтернет - магазин комп’ютерної техніки |
| Authors: | Рудницька , Юлія Володимирівна Дудник, Ігор Павлович |
| Keywords: | веб-ресурс;база даних;Spring Boot;фреймворк;інтернет - магазин |
| Issue Date: | 12-Jun-2024 |
| Abstract: | У сучасному світі електронна комерція займає все більш вагоме місце, надаючи людям можливість здійснювати покупки та продажі в Інтернеті зручно і швидко. Одним з найпопулярніших сегментів електронної комерції є продаж комп'ютерної техніки. Ця робота бакалавра присвячена проектуванню та розробці веб-ресурсу для продажу комп'ютерної техніки. Мета роботи і задачі дослідження: Основною метою є проектування та розробка веб-ресурсу для продажу комп'ютерної техніки. Для досягнення цієї мети були використані сучасні веб-технології, що забезпечують зручність та ефективність роботи сайту. Для досягнення поставленої мети в кваліфікаційній роботі бакалавра треба виконати наступні завдання: Аналіз вимог: проаналізувати вимоги до інтернет-магазину з продажу комп’ютерної техніки. Проектування сайту: розглянути процес проектування веб-ресурсу, включаючи основні принципи розробки та проектування бази даних. Розробити проект веб-ресурсу з використанням сучасних веб-технологій. Об’єкт дослідження: створення веб-ресурсів. Предмет дослідження: веб-ресурс з продажу комп'ютерної техніки. Методи дослідження: в роботі застосовувалися аналіз існуючих рішень, методи проектування та створення програмних продуктів, патерни проектування. |
| URI: | https://er.chdtu.edu.ua/handle/ChSTU/6883 |
| Appears in Collections: | 126 Інформаційні системи та технології (Web-технології, web-дизайн) |
Files in This Item:
| File | Description | Size | Format | |
|---|---|---|---|---|
| РЕП_БАК_Дудник_WEBC-2211.pdf Restricted Access | 6.06 MB | Adobe PDF | View/Open Request a copy |
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.
Extracted text
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІЕРСИТЕТ
ФАКУЛЬТЕТ ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ І СИСТЕМ
Кафедра інформаційних технологій проектування
Пояснювальна записка
до кваліфікаційної роботи
_______________________________бакалавра_____________________________
(освітньо-кваліфікаційний рівень)
на тему: Інтернет - магазин комп’ютерної техніки
Виконав: студент 2 курсу, групи WebC-2211
Спеціальність 126 “Інформаційні
системи та технології”
ОП “Web-технології, Web-дизайн”
Дудник І.П.
(прізвище та ініціали)
Керівник ____Рудницька Ю.В.
(прізвище та ініціали)
Рецензент ___Стабецька Т.А._______
(прізвище та ініціали)
Черкаси – 2024 року
ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ
(назва вузу)
Факультет ФІТІС Кафедра Інформаційних технологій проектування
Освітній рівень бакалавр
Спеціальність 126 “Інформаційні системи та технології”
Освітня програма “Web-технології Web-дизайн”
ЗАТВЕРДЖУЮ:
зав.Кафедри Прокопенко Т.О.
“______” __________________2024р.
ЗАВДАННЯ
На кваліфікаційну роботу студенту
Дудник Ігор Павлович
(прізвище, ім’я, по-батькові)
1. Тема проекту (роботи) Інтернет-магазин комп’ютерної техніки
Керівник проекту(роботи) Рудницька Ю.В., PhD.
Затверджена наказом Черкаського державного технологічного університету №60/04 від
Строк подання студентом роботи 29 травня 2024
3. Вихідні дані до проекту (роботи) Середовище розробки IntelliJ IDEA; XAMPP; Мова
програмування – Java, веб-інтерфейс для адміністрування баз даних MySql – PhpMyAdmin.
4. Зміст розрахунково-пояснювальної записки (перелік питань, що їх належить
розробити)
ВСТУП; 1. АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ ТА ПОСТАНОВКА ЗАДАЧІ; 1.1. Аналіз
предметної області ;1.2. Основні гравці ринку комп’ютерної техніки; 1.3 . Аналіз попиту та
пропозиції на ринку комп'ютерної техніки; 1.4. Огляд існуючих рішень; 1.5 Порівняння аналогів
та формування вимог Інтернет-магазину; Висновок до 1 розділу; РОЗДІЛ 2 ФОРМУВАННЯ
ВИМОГ ТА ПРОЕКТУВАННЯ; 2.1. Функціональні вимоги; 2.2. Нефункціональні вимоги; 2.3.
Вимоги до безпеки та захисту даних; 2.4. Вимоги до продуктивності та масштабованості; 2.5;
2.6. Проектування клієнтськой частини Frontend; Вибір технологій та інструментів для
розробки; 2.7. Проектування серверної частини Backend; 2.8. Проектування бази даних;
Висновок до 2 розділу; РОЗДІЛ 3 РОЗРОБКА ТА ВАЛІДАЦІЯ ВЕБ-РЕСУРСУ; 3.1. Реалізація
серверної частини за допомогою Spring Boot; 3.2. Реалізація клієнтської частини за допомогою
допомогою Spring Security; Висновок до 3 розділу ВИСНОВОК; СПИСОК ВИКОРИСТАНИХ
ДЖЕРЕЛ; ДОДАТКИ
.Перелік графічного матеріалу (з точним зазначенням обов’язкових креслень)
Рисунок: Головної сторінки сайту;
Рисунок: Каталогу товарів;
Рисунок: Форма налаштування ролей користувачів
6. Консультанти з проекту із зазначенням розділів проекту, що їх стосуються
Підпис, дата
Розділ Консультант
Завдання видав, завдання
прийняв
7. Дата видачі завдання 1 березня 2024 р.
Керівник Рудницька Ю.В.
(підпис)
Завдання прийняв до виконання ________
(підпис)
Календарний план
Пор. № Назва етапів дипломного проекту Термін виконання Примітка
етапів проекту
Підготовча стадія
Постановка задачі Виконано
Підготовка завдання Виконано
Погодження завдання Виконано
Затвердження завдання Виконано
Основна стадія
Підбір матеріалів Виконано
Аналіз шляхів рішення задачі Виконано
Розрахунок основних параметрів роботи Виконано
Вибір кінцевого варіанту проектного рішення Виконано
Оформлення первісної редакції роботи Виконано
Заключна стадія
Узгодження проектних рішень з керівником Виконано
Оформлення пояснювальної записки Виконано
Попередній захист роботи Виконано
Затвердження роботи Виконано
Рецензування роботи Виконано
Захист роботи
Студент-дипломник ______________________________________________
(підпис) (ПІБ)
Керівник проекту ______________________________________________
АНОТАЦІЯ
До кваліфікаційної роботи бакалавра на тему «Інтернет - магазин з продаж
комп’ютерної техніки». Виконав студент групи WebC-2211 Дудник Ігор
Павлович. Кваліфікаційна робота бакалавра містить: 66 сторінок, 81 рисунок, 1
таблицю, 31 використане джерело.
Актуальність теми: У сучасному світі електронна комерція займає все більш
вагоме місце, надаючи людям можливість здійснювати покупки та продажі в
Інтернеті зручно і швидко. Одним з найпопулярніших сегментів електронної
комерції є продаж комп'ютерної техніки. Ця робота бакалавра присвячена
проектуванню та розробці веб-ресурсу для продажу комп'ютерної техніки.
Мета роботи і задачі дослідження: Основною метою є проектування та
розробка веб-ресурсу для продажу комп'ютерної техніки. Для досягнення цієї
мети були використані сучасні веб-технології, що забезпечують зручність та
ефективність роботи сайту. Для досягнення поставленої мети в кваліфікаційній
роботі бакалавра треба виконати наступні завдання:
Аналіз вимог: проаналізувати вимоги до інтернет-магазину з продажу
комп’ютерної техніки.
Проектування сайту: розглянути процес проектування веб-ресурсу,
включаючи основні принципи розробки та проектування бази даних.
Розробити проект веб-ресурсу з використанням сучасних веб-технологій.
Об’єкт дослідження: створення веб-ресурсів. Предмет дослідження: веб-
ресурс з продажу комп'ютерної техніки. Методи дослідження: в роботі
застосовувалися аналіз існуючих рішень, методи проектування та створення
програмних продуктів, патерни проектування.
Ключові слова: веб-ресурс, Spring Boot, база даних, фреймворк.
ANNOTATION
Bachelor's qualification work on the topic "Online Store for Selling Computer
Equipment". Performed by student of group WebC-2211, Dudnyk Ihor Pavlovich. The
bachelor's qualification work includes: 66 pages, 81 figures, 1 table, 31 sources used.
Relevance of the topic: In the modern world, e-commerce is becoming increasingly
important, providing people with the opportunity to make purchases and sales online
conveniently and quickly. One of the most popular segments of e-commerce is the sale
of computer equipment. This bachelor's work is dedicated to the design and
development of a web resource for the sale of computer equipment.
Objective and research tasks: The main objective is to design and develop a web
resource for the sale of computer equipment. To achieve this goal, modern web
technologies were used to ensure the convenience and efficiency of the website. To
achieve the set goal in the bachelor's qualification work, the following tasks were
accomplished:
Requirement analysis: analyze the requirements for an online store selling
computer equipment.
Site design: consider the process of designing a web resource, including the main
principles of development and database design.
Develop a web resource project using modern web technologies.
Object of research: creation of web resources. Subject of research: web resource
for the sale of computer equipment. Research methods: the work used the analysis of
existing solutions, methods of designing and creating software products, design
patterns.
Keywords: web resource, Spring Boot, database, framework.
ЗМІСТ
ВСТУП ................................................................................................................. 5
РОЗДІЛ 1 АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ ТА ПОСТАНОВКА
ЗАДАЧІ ...................................................................................................................... 7
1.1. Аналіз предметної області ................................................................................. 7
1.2. Основні гравці ринку комп’ютерної техніки ........................................... 9
1.3. Аналіз попиту та пропозиції на ринку комп'ютерної техніки ....... 12
1.4. Огляд існуючих рішень .................................................................................... 14
1.5. Порівняння аналогів та формування вимог Інтернет-магазину . 18
Висновок до 1 розділу ................................................................................................... 22
РОЗДІЛ 2 ФОРМУВАННЯ ВИМОГ ТА ПРОЕКТУВАННЯ
АРХІТЕКТУРИ ВЕБ-РЕСУРСУ ........................................................................ 23
2.1. Функціональні вимоги ......................................................................................... 23
2.2. Нефункціональні вимоги .................................................................................... 24
2.3. Вимоги до безпеки та захисту даних .............................................................. 26
2.4. Вимоги до продуктивності та масштабованості ...................................... 28
2.5. Вибір технологій та інструментів для розробки ...................................... 30
2.6. Проектування клієнтськой частини Frontend.......................................... 32
2.7. Проектування серверної частини Backend ................................................ 34
2.8. Проектування бази даних ................................................................................... 40
Висновок до 2 розділу ................................................................................................... 40
РОЗДІЛ 3 РОЗРОБКА ТА ВАЛІДАЦІЯ ВЕБ-РЕСУРСУ ....................... 42
3.1. Реалізація серверної частини за допомогою Spring Boot ..................... 42
3.2. Реалізація клієнтської частини за допомогою Thymeleaf ................... 49
3.3. Інтеграція з базою даних MySQL .................................................................... 57
ЧДТУ 242280.003 ПЗ
№ П
мР. озроибс.т докумемДе
енктеан ідпис ата
Літ. Лист Лист
П е Рудни Сайт компанії з надання послуг ів
2 68
рев. Ре Дідук краси та здоров'я
ценз.. ФІТІС ,
Н. Рудни
контр. Пояснювальна записка кафедра ІТП, WEBC-2211
За Прокоп
тв. енкоТ.О.
3.4. Реалізація функціональності безпеки за допомогою Spring Security
60
Висновок до 3 розділу ................................................................................................... 65
ВИСНОВКИ ..................................................................................................... 67
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ .................................................... 69
Додаток А 482 ЧДТУ 242275 – 01 Специфікація ....................................... 72
Додаток Б 482 ЧДТУ 242275 – 01 12 01 Текст програми. Фронтенд. .... 74
Додаток В 482 ЧДТУ 242275 – 01 12 02 Текст програми. База даних. .. 80
ЧДТУ 242275.003 ПЗ ист
3
Зм Арк. № докум. Пiдпис. Дата
нт
СПИСОК СКОРОЧЕНЬ ТА УМОВНИХ ПОЗНАЧЕНЬ
URL – Унікальна адреса ресурсу в Інтернеті.
SQL – Мова запитів до бази даних.
ПЗ – Програмне забезпечення.
БД – База даних.
HTML – Мова розмітки документів для створення веб-сторінок.
JSON – Формат обміну даними, що використовується для передачі даних
між сервером та клієнтом у веб-додатках.
ЧДТУ 242275.003 ПЗ ист
4
Зм Арк. № докум. Пiдпис. Дата
нт
ВСТУП
У сучасному світі інтернет став основним майданчиком для здійснення
торговельних операцій. Розквіт онлайн-магазинів став не лише питанням
зручності для споживачів, але й ефективним засобом для розширення бізнесу
для багатьох компаній. Зокрема, сфера комп'ютерної техніки не залишається
осторонь цього тренду, оскільки попит на ці товари постійно зростає.
Актуальність. Веб-ресурси з продажу комп'ютерної техніки
допомагають компаніям розширювати свою присутність на ринку, а
споживачам - отримувати необхідні товари з максимальним комфортом. Веб-
ресурс «TECH X7» призначений забезпечити зручний інтерфейс, високу
продуктивність та надійність у сфері продажу комп'ютерної техніки тому тема
кваліфікаційної роботи бакалавра є актуальною.
Метою кваліфікаційної роботи бакалавра є розробка веб-ресурсу для
продажу комп'ютерної техніки з використанням сучасних технологій та
інструментів. Це дозволить створити інтуїтивно зрозумілий, зручний та
функціональний веб-сайт, який відповідатиме сучасним вимогам користувачів.
Для досягнення поставленої мети необхідно виконати наступні задачі:
Визначити основних гравців ринку комп'ютерної техніки.
Провести аналіз попиту та пропозиції на ринку комп'ютерної
техніки.
Оглянути існуючі рішення інтернет-магазинів комп'ютерної
техніки.
Порівняти аналоги та сформувати вимоги до інтернет-магазину.
Сформувати функціональні вимоги до веб-ресурсу.
Визначити нефункціональні вимоги до веб-ресурсу.
Встановити вимоги до безпеки та захисту даних.
Визначити вимоги до продуктивності та масштабованості системи.
ЧДТУ 242275.003 ПЗ ист
5
Зм Арк. № докум. Пiдпис. Дата
нт
Обрати технології та інструменти для розробки веб-ресурсу.
Спроектувати клієнтську частину (Frontend) веб-ресурсу.
Спроектувати серверну частину (Backend) веб-ресурсу.
Спроектувати базу даних для веб-ресурсу.
Реалізувати серверну частину за допомогою Spring Boot.
Реалізувати клієнтську частину за допомогою Thymeleaf.
Інтегрувати веб-ресурс з базою даних MySQL.
Реалізувати функціональність безпеки за допомогою Spring Security.
Об'єкт дослідження: Процес надання послуг у компанії з надання послуг
комп'ютерної техніки. Цей процес включає всі аспекти взаємодії з клієнтами,
від первинного контакту до виконання замовлення, і є основою для розробки
ефективної інформаційної системи, спрямованої на покращення сервісу та
управління. Сайт інтернет - магазина з продажу комп’ютерної техніки
спроектовано з метою надання детальної інформації про продукцію, виробників
та спеціальні пропозиції, які пропонує компанія.
Предмет дослідження: Сайт компанії з продажу комп'ютерної техніки,
що забезпечує онлайн-замовлення і інформування клієнтів про продукцію та
спеціальні пропозиції. Сайт є інструментом для реалізації стратегії
обслуговування клієнтів, що дозволяє залучати нових клієнтів та підтримувати
високий рівень задоволення постійних клієнтів.
Методи дослідження включають аналіз вимог, проєктування архітектури
системи, програмування на Java з використанням Spring Boot та Thymeleaf,
тестування за допомогою інструментів JUnit та Mockito.
Практичне значення полягає у поліпшенні якості обслуговування
клієнтів і збільшенні прибутковості підприємства завдяки впровадженню
ефективного веб-сайту, який забезпечить зручне та ефективне взаємодіяння з
клієнтами, поліпшення якості обслуговування та підвищення загальної
ефективності бізнесу. Впровадження веб-ресурсу дозволить компанії
розширити свою присутність на ринку та задовольнити потреби сучасних
споживачів.
ЧДТУ 242275.003 ПЗ ист
6
Зм Арк. № докум. Пiдпис. Дата
нт
РОЗДІЛ 1
АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ ТА ПОСТАНОВКА ЗАДАЧІ
1.1. Аналіз предметної області
У сучасному світі ринок комп'ютерної техніки демонструє вражаючі
темпи розвитку завдяки постійному впровадженню нових технологій та
інновацій. З огляду на швидкі зміни у потребах та вподобаннях споживачів,
виробники комп'ютерної техніки безперервно вдосконалюють свої продукти,
аби задовольнити зростаючий попит на новітні рішення.
Основні тенденції розвитку ринку є однією з ключових тенденцій 2024
року стало зростання попиту на ноутбуки. Це обумовлено кількома факторами:
Дистанційна робота та навчання: У зв'язку з продовженням впливу
пандемії COVID-19, багато компаній та навчальних закладів залишаються на
дистанційному форматі роботи та навчання. Ноутбуки стали необхідним
інструментом для ефективної роботи та навчання вдома, що призвело до
значного збільшення попиту на цей вид техніки. [23]
Сучасні користувачі все більше цінують мобільність і можливість
працювати з будь-якого місця. Ноутбуки забезпечують високу продуктивність у
компактному форм-факторі, що робить їх ідеальними для тих, хто часто
переміщується.[30].
Поряд із ноутбуками, значне зростання популярності продемонстрували
планшети. Ці пристрої стали невід'ємною частиною життя багатьох
користувачів завдяки їх зручності та широкому спектру застосувань – від
розваг до роботи та навчання. Планшети забезпечують високу портативність та
тривалу роботу від батареї, що робить їх ідеальними для щоденного
використання.
Персональні комп'ютери (ПК) також залишаються важливою складовою
ринку комп'ютерної техніки. Хоча попит на настільні ПК не такий високий, як
ЧДТУ 242275.003 ПЗ ист
7
Зм Арк. № докум. Пiдпис. Дата
нт
на ноутбуки та планшети, ці пристрої продовжують бути незамінними для
професіоналів, які потребують високої продуктивності для виконання складних
завдань, таких як графічний дизайн, відеомонтаж та наукові обчислення.
Зростання популярності геймінгових ПК та аксесуарів на 2024 рік також
відзначився значним зростанням популярності геймінгових ПК та аксесуарів.
Геймінгова індустрія продовжує розвиватися стрімкими темпами, і з нею
зростає попит на потужні ігрові системи. Основні чинники, що впливають на
популярність геймінгових ПК, включають:
Випуск нових ігор: Сучасні ігри потребують високопродуктивного
обладнання для забезпечення якісного ігрового досвіду. Це стимулює геймерів
оновлювати свої системи.
Кіберспорт: Зростання популярності кіберспорту сприяє збільшенню
попиту на професійне ігрове обладнання.
Технологічні інновації: Виробники постійно вдосконалюють свої
продукти, впроваджуючи нові технології, такі як трасування променів,
покращені графічні процесори та інше.
Геймінгові аксесуари, такі як миші, клавіатури, навушники та ігрові
монітори, також демонструють високий попит. Геймери прагнуть покращити
свій ігровий досвід за допомогою якісних аксесуарів, які забезпечують кращу
продуктивність та комфорт під час гри.
Пандемія COVID-19 суттєво вплинула на ринок комп'ютерної техніки,
прискоривши темпи його розвитку. Зміни у способі життя людей призвели до
зростання попиту на комп'ютери та інші цифрові пристрої. Основні впливи
включають:
Перехід на дистанційну роботу та навчання: Пандемія змусила багато
компаній та навчальних закладів перейти на віддалений режим, що підвищило
попит на ноутбуки, веб-камери та інші пристрої, необхідні для дистанційної
роботи та навчання.
ЧДТУ 242275.003 ПЗ ист
8
Зм Арк. № докум. Пiдпис. Дата
нт
Зростання попиту на домашні розваги: З обмеженням можливостей для
зовнішніх розваг люди більше часу проводять вдома, що сприяло зростанню
популярності ігрових консолей, геймінгових ПК та аксесуарів.
Пропозиція та нові технології на ринку комп'ютерної техніки
спостерігається значне різноманіття пропозицій, що дозволяє задовольнити
потреби різних категорій споживачів. Основні тенденції включають:
Інноваційні рішення: Виробники постійно впроваджують нові технології,
такі як процесори з більшою кількістю ядер, SSD-накопичувачі з високою
швидкістю читання/запису, екрани з високою роздільною здатністю та
частотою оновлення.
Зниження цін на попередні моделі: З виходом нових моделей ціни на
попередні знижуються, що робить їх доступнішими для споживачів.
Розширення дистрибуції: Більшість виробників пропонують свої
продукти через інтернет-магазини та платформи електронної комерції, що
спрощує процес покупки та збільшує доступність товарів.
Аналіз ринку комп'ютерної техніки за 2024 рік свідчить про продовження
тенденцій до зростання попиту на різні види комп'ютерних пристроїв та
аксесуарів. Впровадження нових технологій, зміни у способі життя людей
внаслідок пандемії COVID-19 та зростаюча популярність геймінгу створюють
сприятливі умови для розвитку ринку. [31]
1.2. Основні гравці ринку комп’ютерної техніки
Ринок комп'ютерної техніки є одним з найбільш динамічних та швидко
зростаючих сегментів світової економіки. Цей ринок домінують кілька
ключових гравців, які забезпечують споживачів продукцією, що відповідає
найвищим стандартам якості та інновацій. Серед таких гравців виділяються
Dell, HP, Lenovo, Apple та ASUS. Кожен з цих виробників має свої унікальні
конкурентні переваги, що дозволяють їм утримувати лідерські позиції на ринку.
ЧДТУ 242275.003 ПЗ ист
9
Зм Арк. № докум. Пiдпис. Дата
нт
Dell - відома своєю високоякісною продукцією та відмінним
обслуговуванням клієнтів. Компанія спеціалізується на виробництві широкого
спектра комп'ютерної техніки, включаючи десктопи, ноутбуки, сервери та
мережеве обладнання. Основні конкурентні переваги Dell включають:
Якість продукції: Dell приділяє велику увагу якості своїх продуктів,
забезпечуючи надійність та довговічність техніки.
Обслуговування клієнтів: Компанія має відмінну репутацію за
рівнем обслуговування клієнтів, пропонуючи швидку та ефективну підтримку.
Індивідуальний підхід: Dell пропонує можливість налаштування
своїх комп'ютерів під конкретні потреби користувачів, що дозволяє створювати
унікальні конфігурації.
Інновації: Компанія постійно впроваджує нові технології та
рішення, що підвищують продуктивність та зручність використання техніки.
[24,26,27].
HP - є одним з найбільших виробників комп'ютерної техніки у світі,
пропонуючи широкий асортимент продукції від бюджетних до преміум-
моделей. Конкурентні переваги HP включають:
Широкий асортимент: HP пропонує комп'ютери на будь-який смак і
бюджет, що робить їх доступними для широкого кола споживачів.
Технологічні інновації: Компанія активно розробляє та впроваджує
нові технології, зокрема в галузі безпеки та енергоефективності.
Глобальна присутність: HP має розвинену мережу дистрибуції та
обслуговування по всьому світу, що забезпечує зручність придбання та
підтримки продукції.
Надійність: Продукція HP відома своєю надійністю та високою
якістю, що підвищує довіру споживачів до бренду. ільше про це можна
дізнатися на [24,28,27].
Lenovo - є лідером у виробництві ноутбуків, відомий своєю надійністю та
інноваційними рішеннями. Основні конкурентні переваги Lenovo включають:
ЧДТУ 242275.003 ПЗ ист
10
Зм Арк. № докум. Пiдпис. Дата
нт
Інноваційні рішення: Lenovo активно впроваджує новітні
технології, такі як штучний інтелект, доповнена реальність та інші, що робить
їх продукцію передовою на ринку.
Надійність: Продукти Lenovo відомі своєю надійністю та
довговічністю, що робить їх популярними серед бізнес-користувачів та
звичайних споживачів.
Гнучкість та адаптивність: Lenovo пропонує широкий вибір
конфігурацій, що дозволяє користувачам вибирати техніку, яка найкраще
відповідає їхнім потребам.
Глобальна присутність: Компанія має сильну міжнародну
присутність, що забезпечує доступність продукції на різних ринках.
Докладніше про це можна прочитати на сайтах [24,25]
Apple - є одним з найбільш відомих та престижних брендів у світі
комп'ютерної техніки. Компанія виробляє високоякісні комп'ютери та
ноутбуки, що інтегровані в єдину екосистему, включаючи програмне
забезпечення та послуги. Конкурентні переваги Apple включають:
Висока якість продукції: Apple відома своїми високоякісними
матеріалами та збіркою, що забезпечує надійність та тривалий термін служби
техніки.
Екосистема: Продукти Apple інтегровані в єдину екосистему, що
включає програмне забезпечення, сервіси та аксесуари, забезпечуючи
безшовний користувацький досвід.
Інновації: Apple постійно впроваджує передові технології, що
робить їх продукцію інноваційною та передовою.
Брендова лояльність: Споживачі Apple відзначають високий рівень
задоволеності продукцією та послугами компанії, що сприяє формуванню
сильної лояльності до бренду. Детальніше можна дізнатися на [24],[28],[29].
ЧДТУ 242275.003 ПЗ ист
11
Зм Арк. № докум. Пiдпис. Дата
нт
ASUS - спеціалізується на виробництві геймінгових ПК та аксесуарів,
відомий своєю продуктивністю та дизайном. Конкурентні переваги ASUS
включають:
Продуктивність: Продукти ASUS відомі своєю високою
продуктивністю, що робить їх популярними серед геймерів та професіоналів.
Дизайн: Компанія приділяє велику увагу дизайну своєї продукції,
що робить її привабливою для споживачів.
Інновації: ASUS активно впроваджує нові технології, що
підвищують продуктивність та зручність використання їх продукції.
Широкий асортимент: ASUS пропонує широкий асортимент
продукції, включаючи геймінгові ПК, ноутбуки, монітори та аксесуари, що
дозволяє задовольнити потреби різних категорій споживачів.
Кожен з цих виробників має свої унікальні конкурентні переваги, що
дозволяють їм займати лідируючі позиції на ринку комп'ютерної техніки.
Розуміння цих переваг є ключовим для аналізу ринку та розробки ефективних
стратегій бізнесу в цьому сегменті. Більше про це можна знайти на [24,28,29].
1.3. Аналіз попиту та пропозиції на ринку комп'ютерної техніки
Ринок комп'ютерної техніки характеризується високою динамічністю і
постійним розвитком, що відображається як на попиті, так і на пропозиції.
Розуміння цих двох складових є ключовим для формування успішних бізнес-
стратегій та задоволення потреб споживачів.
Попит на комп'ютерну техніку визначається кількома основними
факторами, кожен з яких має значний вплив на поведінку споживачів та обсяги
продажів.
Постійне впровадження нових технологій та покращення характеристик
комп'ютерів є важливим стимулом для споживачів оновлювати свої пристрої.
Зокрема, вихід нових моделей з потужнішими процесорами, покращеними
графічними картами, збільшеним обсягом оперативної пам'яті та інноваційними
ЧДТУ 242275.003 ПЗ ист
12
Зм Арк. № докум. Пiдпис. Дата
нт
функціями підвищує інтерес до купівлі нової техніки. Наприклад,
впровадження нових поколінь процесорів Intel і AMD, а також графічних карт
NVIDIA та AMD, стимулює зростання попиту серед ентузіастів та
професіоналів.
Збільшення кількості людей, які працюють та навчаються дистанційно,
значно підвищило попит на надійну комп'ютерну техніку. Пандемія COVID-19
стала каталізатором цього процесу, і багато компаній та навчальних закладів
перейшли на віддалений формат роботи та навчання. Це, в свою чергу,
викликало потребу в ноутбуках, десктопах, веб-камерах та іншому обладнанні
для забезпечення ефективної роботи та навчання вдома.
Зростання популярності комп'ютерних ігор також є значним чинником,
що впливає на попит на комп'ютерну техніку. Геймери постійно шукають
потужніші системи для покращення ігрового досвіду. Це включає не тільки
геймінгові ПК, але й аксесуари, такі як геймінгові миші, клавіатури, монітори з
високою частотою оновлення та інші периферійні пристрої. Запуск нових ігор,
які вимагають високих технічних характеристик, стимулює геймерів
оновлювати свої системи.
Зростаюча популярність ультрабуків та 2-в-1 пристроїв (ноутбуки, що
можуть трансформуватися в планшети) відображає потребу споживачів у більш
мобільних та гнучких рішеннях. Це особливо актуально для професіоналів, які
часто працюють на ходу, а також для студентів, яким потрібні легкі та
компактні пристрої для навчання.
Пропозиція на ринку комп'ютерної техніки також є досить
різноманітною, з великою кількістю моделей, що відповідають різним потребам
та бюджетам споживачів. Основні тенденції включають впровадження нових
технологій, зниження цін на старі моделі та збільшення доступності товарів.
Виробники комп'ютерної техніки постійно працюють над впровадженням
нових технологій, щоб задовольнити зростаючі потреби споживачів. Це
включає розробку нових процесорів, графічних карт, технологій зберігання
даних (SSD), а також інновацій в галузі дисплеїв (наприклад, екрани з високою
ЧДТУ 242275.003 ПЗ ист
13
Зм Арк. № докум. Пiдпис. Дата
нт
роздільною здатністю та частотою оновлення). Такі нововведення підвищують
привабливість нових моделей на ринку.
Однією з характерних рис ринку комп'ютерної техніки є швидка
амортизація старих моделей. З виходом нових поколінь техніки, ціни на
попередні моделі значно знижуються. Це робить комп'ютери більш доступними
для ширшого кола споживачів, особливо для тих, хто не має потреби у
найновіших технологіях, але хоче отримати якісне обладнання за вигідною
ціною.
Розширення мережі дистрибуції та поява нових каналів збуту, таких як
інтернет-магазини, значно збільшують доступність комп'ютерної техніки для
споживачів. Багато виробників пропонують свої продукти через власні
інтернет-магазини, а також через платформи електронної комерції, такі як
Amazon, eBay та інші. Це дозволяє споживачам легко порівнювати моделі, ціни
та відгуки, що спрощує процес вибору та покупки.
Виробники комп'ютерної техніки пропонують спеціалізовані рішення для
різних категорій споживачів. Наприклад, геймінгові ПК, ультрабуки для
бізнесу, бюджетні ноутбуки для студентів, робочі станції для професіоналів.
Такий підхід дозволяє краще задовольнити потреби конкретних груп
користувачів, що підвищує їх задоволеність та лояльність до бренду.
Таким чином, аналіз попиту та пропозиції на ринку комп'ютерної техніки
свідчить про високу динаміку та конкурентність цього сегменту. Розуміння
ключових факторів, що впливають на попит, а також тенденцій в пропозиції, є
важливим для розробки ефективних бізнес-стратегій та забезпечення успішної
діяльності на ринку.[23,24,30]
1.4. Огляд існуючих рішень
Для того щоб визначити найкращі підходи та технології, які можна
застосувати у власному проекті, важливо провести аналіз існуючих рішень на
ринку. Розгляд кількох популярних інтернет-магазинів комп'ютерної техніки в
ЧДТУ 242275.003 ПЗ ист
14
Зм Арк. № докум. Пiдпис. Дата
нт
Україні дозволяє зрозуміти, які функціональні можливості, дизайни та
технології використовують лідери ринку. Нижче наведено огляд чотирьох
інтернет-магазинів, які є провідними в цій галузі.
Foxtrot є одним з провідних ритейлерів побутової техніки та електроніки
в Україні. На сайті представлений широкий асортимент товарів, включаючи
комп'ютери, ноутбуки, аксесуари, телевізори, смартфони та інші електронні
пристрої.
Рисунок 1.1 – Головна сторінка сайту магазину Foxtrot
Основні особливості сайту:
Зручна навігація: Інтуїтивно зрозумілий інтерфейс, що дозволяє
швидко знаходити потрібні товари.
Розділи товарів: Кожна категорія має підкатегорії, що спрощує
процес пошуку.
Спеціальні пропозиції та акції: Постійно оновлювані розділи зі
знижками та спеціальними пропозиціями.
Підтримка клієнтів: Можливість онлайн-консультацій та швидкої
доставки.
ЧДТУ 242275.003 ПЗ ист
15
Зм Арк. № докум. Пiдпис. Дата
нт
Brain - це інтернет-магазин комп'ютерної техніки та електроніки, який
пропонує широкий вибір продукції, включаючи комп'ютери, ноутбуки,
комплектуючі, периферію та аксесуари.
Рисунок 1.2 – Головна сторінка сайту магазину Brain
Основні особливості сайту:
Широкий асортимент: Великий вибір комп'ютерних комплектуючих та
периферії.
Детальні описи товарів: Кожен товар супроводжується докладними
технічними характеристиками та описами.
Фільтри пошуку: Зручні фільтри, що дозволяють швидко знаходити
потрібні товари за параметрами.
Відгуки клієнтів: Можливість залишати та читати відгуки про
товари.
LuckyLink - інтернет-магазин, що спеціалізується на продажу
комп'ютерної техніки та аксесуарів.
ЧДТУ 242275.003 ПЗ ист
16
Зм Арк. № докум. Пiдпис. Дата
нт
Рисунок 1.3 – Головна сторінка сайту магазину LuckyLink
Основні особливості сайту:
Актуальні новини та статті: Огляд новинок ринку та корисні поради
для покупців.
Простий інтерфейс: Легка навігація по сайту та доступ до всіх
категорій товарів.
Програма лояльності: Система знижок та бонусів для постійних
клієнтів.
Швидка доставка: Різні варіанти доставки та оплати замовлень.
CompX - спеціалізований інтернет-магазин комп'ютерної техніки та
аксесуарів, що пропонує широкий асортимент товарів для професіоналів та
геймерів.
Основні особливості сайту:
Професійний підхід: Розширені технічні характеристики та рекомендації
по вибору товарів.
Підтримка геймерів: Спеціальні пропозиції та акції для геймерів.
Швидкий доступ до категорій: Зручна структура сайту з розділенням на
основні категорії.
ЧДТУ 242275.003 ПЗ ист
17
Зм Арк. № докум. Пiдпис. Дата
нт
Відгуки та рейтинги: Можливість залишати відгуки та оцінювати товари.
Рисунок 1.3 – Головна сторінка сайту магазину CompX
Ці чотири інтернет-магазини є відмінними прикладами успішного бізнесу
в сфері продажу комп'ютерної техніки. Вони пропонують широкий асортимент
товарів, зручну навігацію та підтримку клієнтів, що дозволяє їм утримувати
лідируючі позиції на ринку.
1.5. Порівняння аналогів та формування вимог Інтернет-магазину
Для формування вимог до інтернет-магазину нашого проекту важливо
провести порівняння з існуючими аналогами. Порівняння з аналогами дозволяє
не лише виділити ключові аспекти, які вже добре працюють на ринку, але й
уникнути можливих помилок і недоліків, що вже виявлені іншими гравцями.
Детальний аналіз успішних функцій, дизайну та користувацького досвіду в
конкурентів допоможе визначити найкращі практики, які можна інтегрувати у
наш проект. Це забезпечить створення продукту, який буде
конкурентоспроможним та привабливим для користувачів.
ЧДТУ 242275.003 ПЗ ист
18
Зм Арк. № докум. Пiдпис. Дата
нт
Вивчаючи ринок, ми звертаємо увагу на чотири популярні інтернет-
магазини комп'ютерної техніки в Україні: Foxtrot, Brain, LuckyLink та CompX.
Кожен з цих магазинів має свої унікальні особливості, які можуть бути
корисними для нашого проекту. Порівняння дозволить виявити, які саме
функції є найбільш популярними серед користувачів і що саме робить ці сайти
успішними. Зважаючи на це, ми можемо сформувати вимоги, які допоможуть
створити ефективний та зручний інтернет-магазин.
Таблиця 1.1 Порівняння аналогів
Критерій Foxtrot Brain LuckyLink CompX
Підтримка телефону Так Так Так Так
Наявність мобільного додатку: Так Так Так Так
Програма лояльності, Так Ні Так Так
Можливість порівняння товарів: Так Так Ні Ні
Можливість замовлення товарів онлайн: Так Так Так Так
Програма лояльності Так Так Ні Ні
Акції та знижки: Так Так Так Так
Підтримка Так Так Так Ні
Бонуси: Так Так Так Ні
Можливість самовивозу: Так Так Так Так
Оплата частинами Так Так Ні НІ
На основі порівняння аналогів можна визначити наступні вимоги до
Інтернет-магазину нашого проекту:
Сучасний дизайн: Інтерфейс повинен бути не лише привабливим на
вигляд, але й зручним у використанні. Важливо, щоб кожен елемент дизайну,
від кольорової схеми до розташування кнопок, сприяв позитивному
користувацькому досвіду. Сайт має відображати сучасні тенденції у веб-
дизайні, забезпечуючи елегантність і простоту навігації, подібно до сайтів
Foxtrot та Brain.
Акцент на товари: Дизайн повинен включати якісні зображення товарів,
що дозволять клієнтам детально розглянути продукцію. Інформаційні блоки
ЧДТУ 242275.003 ПЗ ист
19
Зм Арк. № докум. Пiдпис. Дата
нт
мають бути організовані таким чином, щоб користувачі могли легко знайти та
порівняти різні продукти.
Зручний пошук: Користувачі повинні мати можливість легко знаходити
необхідні товари за допомогою розширеного пошуку, що включає фільтри за
категоріями, цінами, брендами та іншими параметрами.
Бонусні програми та програми лояльності: Важливо запропонувати
клієнтам додаткові переваги у вигляді бонусних програм, які можуть включати
знижки, бали за покупки, спеціальні пропозиції для постійних клієнтів. Це
допоможе збільшити лояльність клієнтів і стимулювати повторні покупки.
Можливість порівняння товарів: Функціонал сайту має дозволяти
користувачам порівнювати кілька продуктів одночасно, щоб полегшити процес
прийняття рішення. Ця можливість допоможе клієнтам знайти найбільш
відповідний товар, порівнюючи характеристики, ціни та відгуки.
Детальні описи товарів: Кожен товар на сайті повинен мати детальний
опис, що включає технічні характеристики, фотографії, відеоогляди, відгуки
користувачів та рекомендації щодо використання.
Конкурентоспроможні ціни: Інтернет-магазин має пропонувати ціни, які
відповідають середньому рівню на ринку, але при цьому залишаються
конкурентоспроможними. Це може включати спеціальні пропозиції, знижки та
акції, які зроблять покупки більш вигідними для клієнтів.
Оплата готівкою: Забезпечення можливості оплати готівкою при
отриманні товару. Це дозволяє клієнтам здійснювати покупки без використання
банківських карт або онлайн-платежів, що може бути зручним для певної
категорії користувачів.
Активне використання відгуків: Сайт повинен мати систему збору та
відображення відгуків від клієнтів. Це не тільки підвищує довіру до магазину,
але й допомагає новим клієнтам приймати обґрунтовані рішення щодо покупок.
Позитивні відгуки про якість товарів, обслуговування та загальний досвід
користування будуть сприяти формуванню позитивного іміджу магазину.
ЧДТУ 242275.003 ПЗ ист
20
Зм Арк. № докум. Пiдпис. Дата
нт
Відсутність сервісного центру та доставки: Інтернет-магазин не
надаватиме послуг з доставки товарів та сервісного обслуговування. Це
означає, що клієнти мають самостійно організовувати отримання товарів.
Основний акцент робиться на якості продукції та обслуговування в межах
інтернет-магазину.
Регулярні акції та знижки: Проведення постійних акцій, розпродажів та
надання знижок є важливим інструментом стимулювання продажів. Це
приваблює нових клієнтів і спонукає постійних клієнтів до нових покупок.
Спеціальні пропозиції мають бути чітко відображені на сайті, щоб користувачі
могли легко їх знайти та скористатися ними.
Телефонна лінія та електронна пошта: Інтернет-магазин повинен
забезпечувати доступні засоби комунікації для клієнтів. Телефонна лінія та
електронна пошта повинні бути завжди доступні для консультацій, питань та
вирішення можливих проблем. Це сприяє підтриманню високого рівня
обслуговування та задоволеності клієнтів.
Відсутність онлайн-чату: Замість онлайн-чату, який часто
використовується для миттєвої підтримки, магазин буде покладатися на
традиційні засоби комунікації. Це може бути зручніше для певних категорій
користувачів та допоможе зменшити витрати на технічну підтримку.
Зручний інтерфейс та навігація: Важливо, щоб сайт був легким у
користуванні, а всі функції були інтуїтивно зрозумілими. Користувачі повинні
мати можливість швидко знаходити необхідну інформацію та товари.
Високоякісні зображення та описи: Забезпечення візуальної
привабливості товарів та надання повної інформації про них є ключовим для
залучення клієнтів та підвищення конверсії.
Підтримка клієнтів: Магазин повинен надавати якісну підтримку
клієнтам через доступні засоби комунікації, забезпечуючи високий рівень
обслуговування та оперативне вирішення питань.
ЧДТУ 242275.003 ПЗ ист
21
Зм Арк. № докум. Пiдпис. Дата
нт
Ці вимоги допоможуть створити конкурентоспроможний та привабливий
інтернет-магазин, який буде відповідати очікуванням сучасних користувачів і
зможе ефективно конкурувати на ринку.
Висновок до 1 розділу
В результаті проведеного аналізу предметної області, ринку комп'ютерної
техніки та існуючих рішень було визначено ключові тенденції та вимоги для
створення конкурентоспроможного інтернет-магазину. В Розділі 1
проаналізовано розвиток ринку комп'ютерної техніки, який демонструє швидкі
темпи завдяки новітнім технологіям та інноваціям. Основні гравці ринку, такі
як Dell, HP, Lenovo, Apple та ASUS, вирізняються якістю продукції,
інноваціями та широким асортиментом, що задовольняє потреби різних
категорій споживачів. Попит на комп'ютерну техніку зумовлений дистанційною
роботою, навчанням та зростаючою популярністю геймінгу, тоді як пропозиція
включає нові технології та зниження цін на старі моделі. У підрозділі 1.4 було
розглянуто популярні інтернет-магазини, такі як Foxtrot, Brain, LuckyLink та
CompX, які пропонують зручну навігацію, широкий асортимент товарів,
бонусні програми та швидку доставку. Порівняння аналогів та формування
вимог дозволили виділити ключові аспекти, які необхідно врахувати для
створення ефективного та зручного інтернет-магазину комп'ютерної техніки,
який буде привабливим для користувачів та конкурентоспроможним на ринку
ЧДТУ 242275.003 ПЗ ист
22
Зм Арк. № докум. Пiдпис. Дата
нт
РОЗДІЛ 2
ФОРМУВАННЯ ВИМОГ ТА ПРОЕКТУВАННЯ АРХІТЕКТУРИ ВЕБ-
РЕСУРСУ
2.1. Функціональні вимоги
Функціональні вимоги визначають основні можливості та
функціональність, яку повинен забезпечити веб-ресурс інтернет магазину з
продажу ком’ютерної техніки. Основні функціональні вимоги включають:
Реєстрація та аутентифікація користувачів: Користувачі повинні мати
можливість створювати аккаунти, входити в систему та відновлювати паролі.
Каталог товарів: Веб-ресурс повинен мати каталог товарів з можливістю
фільтрації та сортування за різними параметрами (наприклад, ціна, виробник,
категорія).
Кошик покупок: Користувачі повинні мати можливість додавати товари
до кошика, редагувати його вміст та оформлювати замовлення.
Адміністративна панель: Адміністратори повинні мати можливість
керувати товарами, категоріями, користувачами та замовленнями через
спеціальну панель.
Оплата та доставка: Інтеграція з платіжними системами для здійснення
онлайн-платежів, а також можливість вибору способу доставки товарів.
Відгуки та рейтинги: Користувачі повинні мати можливість залишати
відгуки та оцінки для товарів.
Пошук по сайту: Реалізація функції пошуку для швидкого знаходження
товарів за ключовими словами.
ЧДТУ 242275.003 ПЗ ист
23
Зм Арк. № докум. Пiдпис. Дата
нт
2.2. Нефункціональні вимоги
Нефункціональні вимоги визначають якісні характеристики веб-ресурсу,
що впливають на його продуктивність, зручність використання та надійність.
Вони є ключовими для забезпечення високої якості та ефективності роботи веб-
сайту. Розглянемо детальніше основні нефункціональні вимоги до веб-ресурсу
та їх значення.
Зручність користування є одним з найважливіших аспектів успішного
веб-ресурсу. Інтерфейс сайту повинен бути інтуїтивно зрозумілим та легким у
використанні як для кінцевих користувачів, так і для адміністраторів. Основні
аспекти зручності користування включають:
Простота навігації: Користувачі повинні легко знаходити потрібну
інформацію завдяки зрозумілим та логічним меню, пошуковим функціям та
категоріям.
Зрозумілий дизайн: Дизайн сайту має бути естетично привабливим та
зрозумілим. Використання стандартних елементів інтерфейсу, таких як кнопки,
посилання та форми, допомагає користувачам швидко адаптуватися до сайту.
Адаптивність: Сайт повинен коректно відображатися на різних пристроях
(ПК, планшетах, смартфонах) та забезпечувати зручний доступ до
функціональності незалежно від розміру екрану.
Доступність: Веб-ресурс має бути доступним для людей з обмеженими
можливостями, включаючи підтримку екранних зчитувачів, можливість
збільшення тексту та контрастних режимів.
Продуктивність веб-ресурсу є критично важливою для забезпечення
швидкої обробки запитів та завантаження сторінок. Висока продуктивність
дозволяє користувачам отримувати необхідну інформацію без затримок, що
підвищує задоволеність від користування сайтом. Основні аспекти
продуктивності включають:
Швидкість завантаження сторінок: Сайт повинен забезпечувати швидке
завантаження всіх сторінок, незалежно від обсягу контенту. Це можна досягти
ЧДТУ 242275.003 ПЗ ист
24
Зм Арк. № докум. Пiдпис. Дата
нт
завдяки оптимізації зображень, використанню кешування та мінімізації обсягу
JavaScript і CSS.
Час відгуку: Система повинна швидко реагувати на дії користувачів, такі
як натискання кнопок, запити на пошук та інші інтерактивні елементи.
Оптимізація запитів до бази даних: Веб-ресурс повинен ефективно
обробляти запити до бази даних, мінімізуючи час їх виконання за рахунок
індексації, оптимізації SQL-запитів та використання кешування.
Масштабованість системи є важливим аспектом для забезпечення
можливості обробки збільшеної кількості користувачів та транзакцій. Веб-
ресурс повинен мати здатність до масштабування без зниження продуктивності.
Основні аспекти масштабованості включають:
Горизонтальне масштабування: Можливість додавання нових серверів
для розподілу навантаження та підвищення продуктивності.
Вертикальне масштабування: Збільшення ресурсів окремих серверів
(процесорів, пам'яті) для обробки більшого навантаження.
Мікросервісна архітектура: Використання мікросервісної архітектури
дозволяє легко масштабувати окремі компоненти системи, забезпечуючи
гнучкість та ефективність.
Надійність веб-ресурсу визначає його стійкість до збоїв та забезпечення
високої доступності. Користувачі повинні мати можливість доступу до сайту в
будь-який час, навіть у разі виникнення технічних проблем. Основні аспекти
надійності включають:
Висока доступність: Веб-ресурс повинен бути доступним 24/7, без
тривалих простоїв. Це можна досягти завдяки використанню кластеризації
серверів та резервних копій.
Відновлюваність: Система повинна мати механізми для швидкого
відновлення після збоїв або атак, включаючи автоматичне резервне копіювання
та відновлення даних.
ЧДТУ 242275.003 ПЗ ист
25
Зм Арк. № докум. Пiдпис. Дата
нт
Захист від збоїв: Використання надійного обладнання та програмного
забезпечення для мінімізації ризику збоїв, а також постійний моніторинг
системи для виявлення та усунення потенційних проблем.
Сумісність веб-ресурсу з різними браузерами та пристроями є важливою
вимогою для забезпечення коректної роботи сайту в будь-якому середовищі.
Основні аспекти сумісності включають:
Браузерна сумісність: Сайт повинен коректно працювати у всіх
популярних браузерах, таких як Google Chrome, Mozilla Firefox, Safari,
Microsoft Edge тощо. Це передбачає тестування та оптимізацію для кожного з
браузерів.
Пристрої: Веб-ресурс має бути адаптованим для роботи на різних
пристроях, включаючи настільні комп'ютери, ноутбуки, планшети та
смартфони.
Підтримка різних операційних систем: Сайт повинен коректно
функціонувати на різних операційних системах, таких як Windows, macOS,
Linux, Android та iOS.
Забезпечення відповідності нефункціональним вимогам є критично
важливим для успішного функціонування веб-ресурсу, оскільки вони
визначають його якісні характеристики та здатність задовольнити потреби
користувачів.[17,18]
2.3. Вимоги до безпеки та захисту даних
Захист даних та безпека є критично важливими аспектами для будь-
якого веб-ресурсу, особливо в умовах сучасного цифрового середовища, де
загрози кібербезпеці стають все більш складними та поширеними. Забезпечення
надійного захисту даних вимагає впровадження комплексного підходу, який
включає кілька ключових елементів.
ЧДТУ 242275.003 ПЗ ист
26
Зм Арк. № докум. Пiдпис. Дата
нт
Одним з основних аспектів безпеки є аутентифікація та авторизація.
Використання надійних механізмів аутентифікації користувачів є необхідністю
для запобігання несанкціонованому доступу до системи. Зокрема, двофакторна
аутентифікація (2FA) додає додатковий рівень захисту, вимагаючи від
користувачів не тільки ввести пароль, але й підтвердити свою особу за
допомогою другого фактора, такого як код, надісланий на мобільний телефон.
Чітке розмежування прав доступу гарантує, що кожен користувач має доступ
тільки до тих ресурсів, які необхідні для виконання їхніх обов’язків,
зменшуючи ризик внутрішніх загроз.
Шифрування даних є ще одним важливим елементом безпеки.
Конфіденційні дані, такі як паролі та платіжна інформація, повинні бути
зашифровані як при зберіганні, так і при передачі. Це захищає інформацію від
перехоплення та несанкціонованого доступу під час передачі через мережу, а
також від крадіжки даних у випадку злому системи. Сучасні алгоритми
шифрування, такі як AES (Advanced Encryption Standard), забезпечують високий
рівень захисту та є стандартом для захисту даних.
Захист від атак є критично важливим для будь-якого веб-ресурсу. Веб-
атак, таких як SQL-ін'єкції, міжсайтовий скриптинг (XSS) та підробка запитів
між сайтами (CSRF), можна уникнути шляхом впровадження відповідних
заходів безпеки, таких як використання підготовлених запитів, впровадження
належного кодування вводу користувачів та використання токенів для
підтвердження запитів. Регулярне тестування на уразливості та впровадження
оновлень безпеки є важливими для підтримання безпеки системи.
Резервне копіювання даних є необхідним для забезпечення відновлення
у випадку втрати або пошкодження інформації. Регулярне створення резервних
копій гарантує, що дані можуть бути відновлені у випадку катастрофічного
збою або атаки. Це включає автоматичне резервне копіювання на регулярній
основі, а також перевірку цілісності та можливості відновлення цих копій.
Відстеження активності користувачів через логування та моніторинг є
важливим для виявлення та попередження підозрілих дій. Ведення журналів
ЧДТУ 242275.003 ПЗ ист
27
Зм Арк. № докум. Пiдпис. Дата
нт
активності дозволяє відслідковувати дії користувачів, що може бути корисним
для виявлення несанкціонованих спроб доступу або інших підозрілих дій.
Системи моніторингу можуть в реальному часі аналізувати поведінку
користувачів та виявляти аномалії, що можуть свідчити про можливі загрози.
Загалом, впровадження цих заходів безпеки допомагає створити надійний
захист для веб-ресурсу, забезпечуючи конфіденційність, цілісність та
доступність даних. Постійний розвиток та оновлення систем безпеки є
необхідними для адекватного реагування на нові загрози та виклики в області
кібербезпеки.[1,3,4]
2.4. Вимоги до продуктивності та масштабованості
Для забезпечення ефективної роботи веб-ресурсу необхідно враховувати
наступні вимоги до продуктивності та масштабованості, які є ключовими для
забезпечення безперебійної роботи та високого рівня задоволеності
користувачів.
Час відгуку є одним з найважливіших аспектів, який безпосередньо
впливає на користувацький досвід. Система повинна забезпечувати швидкий
час відгуку на запити користувачів, який не перевищує кількох секунд. Це
включає в себе оптимізацію всіх процесів, щоб мінімізувати затримки та
забезпечити плавну і швидку взаємодію з веб-ресурсом. Користувачі очікують
миттєвого завантаження сторінок і швидкої реакції на їх дії, тому оптимізація
часу відгуку є критично важливою для підтримки високої лояльності та
задоволеності клієнтів.
Оптимізація запитів до бази даних також є ключовим фактором для
підвищення продуктивності системи. Використання ефективних алгоритмів та
оптимізація запитів до бази даних дозволяє зменшити час обробки даних, що, в
свою чергу, покращує загальну швидкодію веб-ресурсу. Це включає в себе
оптимізацію індексів, уникнення надмірних запитів та впровадження
ефективних стратегій кешування результатів запитів. Всі ці заходи сприяють
ЧДТУ 242275.003 ПЗ ист
28
Зм Арк. № докум. Пiдпис. Дата
нт
зниженню навантаження на базу даних та покращенню швидкості обробки
інформації.
Кешування є ще одним важливим механізмом, який допомагає зменшити
навантаження на сервер та прискорити завантаження сторінок. Використання
кешування дозволяє зберігати тимчасові копії часто запитуваних даних, що
значно знижує кількість звернень до бази даних і покращує швидкість
завантаження контенту. Це особливо важливо для великих веб-ресурсів з
високою відвідуваністю, де кожна секунда затримки може негативно вплинути
на користувацький досвід. Кешування може бути реалізоване на різних рівнях,
включаючи кешування на стороні сервера, клієнта та використання
спеціалізованих сервісів кешування.
Автоматичне масштабування ресурсів є необхідним для підтримки
стабільної роботи веб-ресурсу під час пікових навантажень. Можливість
автоматичного масштабування серверів, баз даних та інших ресурсів у випадку
збільшення навантаження на систему забезпечує безперебійну роботу та високу
продуктивність навіть при значному збільшенні кількості користувачів. Це
дозволяє уникнути збоїв і забезпечити стабільну роботу веб-ресурсу незалежно
від обсягів трафіку.
Тестування навантаженням є важливим етапом для оцінки
продуктивності системи та виявлення можливих вузьких місць. Регулярне
проведення тестів навантаження дозволяє оцінити, як система поводиться під
час пікових навантажень, і виявити потенційні проблеми, які можуть вплинути
на її продуктивність. Це включає в себе симуляцію різних сценаріїв
використання, аналіз результатів тестування та впровадження необхідних
покращень для підвищення продуктивності системи. Тестування
навантаженням допомагає забезпечити готовність системи до реальних умов
експлуатації та підвищити її надійність.
Таким чином, забезпечення ефективної роботи веб-ресурсу вимагає
комплексного підходу до продуктивності та масштабованості, що включає
оптимізацію часу відгуку, запитів до бази даних, використання кешування,
ЧДТУ 242275.003 ПЗ ист
29
Зм Арк. № докум. Пiдпис. Дата
нт
автоматичне масштабування ресурсів та регулярне тестування навантаженням.
Усі ці заходи сприяють створенню стабільної, швидкої та надійної системи, яка
відповідає високим очікуванням користувачів та забезпечує безперебійну
роботу у будь-яких умовах.[1,4,5]
2.5. Вибір технологій та інструментів для розробки
Для розробки нашого інтернет-магазину було обрано наступні технології
та інструменти, які забезпечують ефективність, надійність та масштабованість
системи, що є надзвичайно важливими аспектами для будь-якого сучасного
веб-ресурсу.
Spring Boot: Це фреймворк для швидкої та зручної розробки веб-додатків
на мові програмування Java. Він надає широкі можливості для створення
мікросервісів, що дозволяє легко масштабувати систему, а також забезпечує
підтримку RESTful сервісів, що є необхідним для створення сучасних веб-
додатків. Spring Boot включає в себе набір інструментів та бібліотек, які
спрощують процес налаштування та конфігурації додатків, дозволяючи
розробникам зосередитися на написанні бізнес-логіки.[1,8]
Thymeleaf: Це шаблонізатор для Java, який використовується для
створення динамічних веб-сторінок. Він інтегрується зі Spring, що дозволяє
легко генерувати HTML-код з даних, отриманих з серверної частини додатка.
Thymeleaf підтримує двосторонню прив'язку даних, що дозволяє створювати
інтерактивні та динамічні веб-сторінки. Використання Thymeleaf забезпечує
простоту у створенні та підтримці шаблонів, роблячи процес розробки веб-
інтерфейсів більш зручним та ефективним.[2]
MySQL: Це реляційна система керування базами даних, яка забезпечує
надійне зберігання та обробку даних. MySQL є однією з найбільш популярних
СУБД завдяки своїй продуктивності, надійності та простоті використання. Вона
забезпечує високу швидкість виконання запитів та підтримує роботу з
ЧДТУ 242275.003 ПЗ ист
30
Зм Арк. № докум. Пiдпис. Дата
нт
великими обсягами даних, що є критично важливим для інтернет-магазину.
MySQL також забезпечує високий рівень захисту даних та підтримує
масштабованість, що дозволяє системі рости разом з бізнесом.[3]
Spring Security: Це фреймворк для забезпечення безпеки веб-додатків на
Java, який підтримує аутентифікацію, авторизацію та захист від поширених
веб-атак. Використання Spring Security дозволяє забезпечити високий рівень
безпеки для користувачів та захистити їхні дані. Фреймворк надає можливість
гнучко налаштовувати механізми безпеки, інтегрувати різні методи
аутентифікації (наприклад, через паролі, токени або соціальні мережі), а також
захищати додаток від атак типу SQL-ін'єкцій, XSS та CSRF.[4]
Maven: Це інструмент для автоматизації процесу збірки проектів на Java,
що спрощує керування залежностями та процесом збирання. Maven дозволяє
визначити всі необхідні бібліотеки та модулі, які потрібні для проекту, та
автоматично завантажує їх з репозиторіїв. Це значно спрощує процес розробки,
оскільки розробникам не потрібно вручну керувати всіма залежностями та
налаштуваннями. Maven також підтримує плагіни для виконання різних
завдань, таких як компіляція коду, запуск тестів та створення документації.[6]
Hibernate: Це ORM (Object-Relational Mapping) фреймворк для роботи з
базою даних, який забезпечує зручне відображення об'єктів Java в реляційні
таблиці. Використання Hibernate дозволяє значно спростити процес взаємодії з
базою даних, оскільки розробники можуть працювати з об'єктами Java, не
переймаючись написанням SQL-запитів. Hibernate забезпечує автоматичне
генерування SQL-коду для збереження, оновлення та видалення об'єктів, а
також підтримує транзакції та кэшування, що підвищує продуктивність
додатка.[5]
JUnit: Це бібліотека для тестування Java-додатків, яка дозволяє
автоматизувати процес тестування та забезпечити високу якість коду.
Використання JUnit дозволяє створювати модульні тести, які перевіряють
окремі частини коду на коректність їх виконання. Це допомагає виявляти
помилки на ранніх етапах розробки та забезпечує надійність і стабільність
ЧДТУ 242275.003 ПЗ ист
31
Зм Арк. № докум. Пiдпис. Дата
нт
системи. JUnit підтримує різні типи тестів, такі як юніт-тести, інтеграційні
тести та функціональні тести, що дозволяє всебічно перевіряти роботу
додатка.[7]
Таким чином, вибір цих технологій та інструментів для розробки нашого
інтернет-магазину забезпечує високу ефективність, надійність та
масштабованість системи, що є ключовими факторами для успішного
функціонування сучасного веб-ресурсу. Кожна з обраних технологій має свої
переваги та відповідає вимогам, які висуваються до системи, забезпечуючи
оптимальне поєднання продуктивності, безпеки та зручності розробки.
2.6. Проектування клієнтськой частини Frontend
Розглянемо проектування клієнтської частини інтернет магазина, яка
відповідає за взаємодію з користувачем, забезпечуючи зручний та інтуїтивний
інтерфейс для перегляду та придбання товарів. Вона побудована з
використанням Thymeleaf, що дозволяє динамічно відображати контент та
забезпечувати швидкий відгук на дії користувача. Кожна веб-сторінка
складається з HTML-шаблонів, які генеруються на сервері та відправляються на
клієнт. Використання Thymeleaf дозволяє інтегруватися з Java-кодом,
забезпечуючи високий рівень інтерактивності та персоналізації для кожного
користувача:
Категорії шаблонів для роботи з категоріями товарів, що дозволяють їх
відображати, редагувати та створювати.
Сategories. Шаблон для відображення списку всіх категорій.
Використовується для показу категорій товарів на веб-сторінці. Користувач
може переглядати різні категорії товарів, що спрощує навігацію та пошук
потрібних товарів. Кожна категорія може містити підкатегорії та відповідні
товари, що дозволяє зручно організувати продукцію за тематикою чи типом.
ЧДТУ 242275.003 ПЗ ист
32
Зм Арк. № докум. Пiдпис. Дата
нт
Шаблон електронної пошти для створення електронних листів, таких як
підтвердження реєстрації:
Registration. Підтвердження реєстрації. Використовується для відправки
підтвердження користувачеві після успішної реєстрації на сайті. Електронний
лист містить вітання, посилання для активації облікового запису та додаткову
інформацію для нових користувачів. Це допомагає забезпечити безпеку та
підтвердження особи нових користувачів.
Шаблони сторінок помилок для відображення різних типів помилок,
таких як 404 або 500, що допомагають інформувати користувачів про
проблеми:
404. Шаблон для відображення помилки 404 (Сторінку не знайдено).
Використовується, коли сервер не може знайти запитувану сторінку.
Користувачеві надається повідомлення про те, що сторінку не знайдено, а
також можливі посилання для навігації назад до основних розділів сайту.
500. Шаблон для відображення помилки 500 (Внутрішня помилка
сервера). Використовується, коли сервер зіткнувся з несподіваною умовою, яка
завадила виконанню запиту. Це допомагає інформувати користувачів про
технічні проблеми та запобігти втраті довіри до сайту.
Шаблони для роботи з товарами, що дозволяють їх додавати,
редагувати, відображати та переглядати їх деталі.
Product-details. Шаблон для відображення детальної інформації про
продукт. Включає опис, зображення, ціну та відгуки про продукт. Користувачі
можуть переглядати деталі товару, читати відгуки інших покупців та приймати
рішення про покупку.
Products. Шаблон для відображення списку всіх продуктів.
Використовується для показу продуктів на веб-сторінці з можливістю
фільтрації та сортування. Користувачі можуть шукати товари за різними
критеріями, такими як ціна, категорія або рейтинг.
ЧДТУ 242275.003 ПЗ ист
33
Зм Арк. № докум. Пiдпис. Дата
нт
Шаблони для роботи з користувачами, що дозволяють їх відображати,
редагувати та переглядати профілі.
User-profile. Шаблон для відображення профілю користувача. Включає
інформацію про користувача, його замовлення та налаштування. Користувачі
можуть переглядати свою особисту інформацію, історію покупок та змінювати
налаштування облікового запису.
Users. Шаблон для відображення списку всіх користувачів.
Використовується для управління користувачами на веб-сторінці.
Адміністратори можуть переглядати, редагувати та видаляти користувачів,
забезпечуючи належне управління обліковими записами.
Основні шаблони для загальних сторінок сайту, таких як головна
сторінка, контактна форма та сторінки входу:
Index. Головна сторінка магазину. Включає огляд продуктів, категорій та
спеціальних пропозицій. Користувачі можуть переглядати популярні товари,
новинки та спеціальні акції, що сприяє зручному та привабливому
користувацькому досвіду.
Login. Сторінка входу. Містить форму для авторизації користувачів.
Користувачі можуть увійти до свого облікового запису, ввівши електронну
пошту та пароль, що забезпечує доступ до персоналізованих функцій та
налаштувань.
2.7. Проектування серверної частини Backend
Тут розглянемо проектування серверної частини Backend, яка відповідає
за обробку бізнес-логіки додатку, управління даними та забезпечення безпеки.
Вона побудована з використанням Spring Boot та Spring MVC, що дозволяє
створювати масштабовані, надійні та високопродуктивні веб-додатки. Серверна
частина взаємодіє з базою даних, обробляє запити від клієнтів, виконує бізнес-
ЧДТУ 242275.003 ПЗ ист
34
Зм Арк. № докум. Пiдпис. Дата
нт
логіку та повертає відповіді на клієнтські запити. Важливими компонентами
серверної частини є сутності (Entities) та об'єкти передачі даних (DTO).
Сутності (Entities) - Класи, що відповідають за моделювання доменних
об'єктів та відображення їх на таблиці бази даних.
ВaseEntity. Базовий клас для всіх сутностей, що містить загальні
атрибути, такі як ідентифікатор та дати створення/оновлення. Це забезпечує
уніфікованість і спрощення коду для інших сутностей, які наслідують цей клас.
Рисунок 2.11 - Базовий клас для всіх сутностей
Category. Клас для зберігання інформації про категорії товарів. Містить
атрибути, такі як назва та опис категорії. Категорії допомагають організувати
товари у логічні групи для полегшення навігації користувачів.
ЧДТУ 242275.003 ПЗ ист
35
Зм Арк. № докум. Пiдпис. Дата
нт
Рисунок 2.12 - Інформації про категорії товарів
Order. Клас для зберігання інформації про замовлення. Містить
атрибути, такі як користувач, дата замовлення, статус та загальна сума.
Використовується для обробки та відстеження замовлень користувачів.
Рисунок 2.13 - Клас зберігання замовлення
Product. Клас для зберігання інформації про продукти. Містить атрибути,
такі як назва, опис, ціна, категорія та виробник. Цей клас є основним для
управління товарами у каталозі магазину.
ЧДТУ 242275.003 ПЗ ист
36
Зм Арк. № докум. Пiдпис. Дата
нт
Рисунок 2.14 - Клас зберігання продуктів
DTO (Data Transfer Objects) - Класи для передачі даних між різними
частинами системи, забезпечуючи зручний та безпечний обмін інформацією.
ProductDetailsDTO. DTO для передачі детальної інформації про продукт.
Містить атрибути, такі як назва, опис, ціна, категорія та виробник.
Використовується для відображення детальної інформації про товар на
сторінках продукту.
Рисунок 2.15 – Передача детальної інформації про продукт
ЧДТУ 242275.003 ПЗ ист
37
Зм Арк. № докум. Пiдпис. Дата
нт
ProductDTO. DTO для передачі основної інформації про продукт.
Містить атрибути, такі як назва, опис та ціна. Використовується для передачі
короткої інформації про товар у списках продуктів та інших інтерфейсах.
Рисунок 2.16 – Передача основної інформації про продукт
RegisterDTO. DTO для передачі даних про нового користувача при
реєстрації. Містить атрибути, такі як ім'я, електронна пошта та пароль.
Використовується для створення нових облікових записів користувачів.
Рисунок 2.17– Передача даних про нового користувача
UserDTO. DTO для передачі даних про користувача. Містить атрибути,
такі як ім'я, електронна пошта та роль. Використовується для відображення та
оновлення інформації про користувачів.
ЧДТУ 242275.003 ПЗ ист
38
Зм Арк. № докум. Пiдпис. Дата
нт
Рисунок 2.18 – Передача даних про користувача
UserProfileDTO. DTO для передачі даних про профіль користувача.
Містить атрибути, такі як ім'я, електронна пошта, адреса та телефон.
Використовується для відображення та оновлення профілю користувача.
Рисунок 2.19 - Передача даних про профіль користувача
ЧДТУ 242275.003 ПЗ ист
39
Зм Арк. № докум. Пiдпис. Дата
нт
2.8. Проектування бази даних
Проектування бази даних включає визначення основних сутностей та їх
взаємозв'язків для ефективного зберігання та обробки даних. Основні таблиці
бази даних "TECH X7" включають:
users: Зберігає інформацію про користувачів (id, username, password, role,
active).
products: Зберігає інформацію про товари (id, name, description, price,
category, stock).
orders: Зберігає інформацію про замовлення (id, user_id, order_date,
status).
order_items: Зберігає інформацію про товари в замовленнях (id, order_id,
product_id, quantity, price).
reviews: Зберігає відгуки користувачів про товари (id, user_id, product_id,
rating, comment).
Всі таблиці пов'язані між собою за допомогою зовнішніх ключів, що
забезпечує цілісність даних.
Висновок до 2 розділу
У другому розділі розглянуто процес формування вимог та проектування
архітектури веб-ресурсу. Важливою частиною дослідження стали
функціональні вимоги, які визначають основні можливості інтернет-магазину,
такі як реєстрація та аутентифікація користувачів, каталог товарів, кошик
покупок, адміністративна панель, оплата та доставка, відгуки та рейтинги, а
також пошук по сайту. Було розглянуто нефункціональні вимоги, що
визначають якісні характеристики веб-ресурсу, включаючи зручність
користування, продуктивність, масштабованість, надійність та сумісність з
різними браузерами та пристроями. Особливу увагу приділено вимогам до
безпеки та захисту даних, що включають аутентифікацію та авторизацію,
ЧДТУ 242275.003 ПЗ ист
40
Зм Арк. № докум. Пiдпис. Дата
нт
шифрування даних, захист від атак, резервне копіювання даних та відстеження
активності користувачів.
Також було проаналізовано вимоги до продуктивності та
масштабованості, які передбачають оптимізацію часу відгуку, кешування,
автоматичне масштабування ресурсів та регулярне тестування навантаженням.
Для розробки веб-ресурсу були обрані технології, такі як Spring Boot,
Thymeleaf, MySQL, Spring Security, Maven, Hibernate та JUnit, які забезпечують
ефективність, надійність та масштабованість системи.
Проектування клієнтської частини включало використання Thymeleaf для
створення динамічних веб-сторінок, що забезпечує зручний та інтуїтивний
інтерфейс для користувачів. Основні шаблони включають категорії товарів,
електронні листи, сторінки помилок, товари, користувачів та загальні сторінки
сайту. Було розглянуто проектування серверної частини, що передбачає
використання Spring Boot та Spring MVC для обробки бізнес-логіки додатку,
управління даними та забезпечення безпеки. Основні компоненти серверної
частини включають сутності (Entities) та об'єкти передачі даних (DTO).
Крім того, проектування бази даних включало визначення основних
сутностей та їх взаємозв'язків для ефективного зберігання та обробки даних.
Основні таблиці бази даних включають користувачів, продукти, замовлення,
товари в замовленнях та відгуки користувачів. Всі таблиці пов'язані між собою
за допомогою зовнішніх ключів, що забезпечує цілісність даних.
Таким чином, у Розділі 2 було розглянуто та проаналізовано всі ключові
аспекти для створення надійного, безпечного та високопродуктивного веб-
ресурсу для інтернет-магазину комп'ютерної техніки.
ЧДТУ 242275.003 ПЗ ист
41
Зм Арк. № докум. Пiдпис. Дата
нт
РОЗДІЛ 3
РОЗРОБКА ТА ВАЛІДАЦІЯ ВЕБ-РЕСУРСУ
3.1. Реалізація серверної частини за допомогою Spring Boot
Реалізація серверної частини веб-ресурсу здійснювалася з використанням
фреймворку Spring Boot. Це дозволило швидко створити готовий до
використання додаток з мінімальною конфігурацією. Основні кроки реалізації
включають:
Створення структури проекту: Використання Spring Initializr для генерації
базової структури проекту з необхідними залежностями.
Рисунок 3.1. - Базова структура проекту з необхідними залежностями
Створення структури проекту є ключовим кроком у початковій фазі
розробки. Використання Spring Initializr дозволяє швидко та легко створити
базову структуру проекту, включаючи всі необхідні залежності та конфігурації.
ЧДТУ 242275.003 ПЗ ист
42
Зм Арк. № докум. Пiдпис. Дата
нт
Spring Initializr автоматично генерує основні файли та каталоги, такі як src,
main, resources, а також додає потрібні залежності у файл pom.xml або
build.gradle, залежно від обраного інструменту збірки. Це включає залежності
для Spring Boot, Spring MVC, Spring Data JPA, та інших необхідних бібліотек.
Такий підхід економить час та зусилля розробників, забезпечуючи при цьому
правильну організацію проекту з самого початку. Це дозволяє швидко перейти
до розробки основного функціоналу додатку, зосереджуючи увагу на бізнес-
логіці, а не на налаштуванні початкової структури.
Створення моделей: Реалізація сутностей (класів-моделей), що
відповідають таблицям бази даних. Використання анотацій JPA для
відображення цих класів на відповідні таблиці.
Рисунок 3.2 – Модель реалізації категорій
Цей рисунок показує реалізацію сутності категорій у вигляді класу-
моделі. Використовуючи анотації JPA, клас відображається на відповідну
таблицю в базі даних, що дозволяє зберігати та керувати даними про категорії
товарів.
ЧДТУ 242275.003 ПЗ ист
43
Зм Арк. № докум. Пiдпис. Дата
нт
Рисунок 3.3 – Модель реалізації моделей продукта
На цьому рисунку зображено модель реалізації сутності для збереження
інформації про моделі продуктів. Клас містить атрибути, які відображаються на
відповідні стовпці таблиці бази даних за допомогою анотацій JPA.
Рисунок 3.4 – Модель реалізації продукта
Цей рисунок ілюструє модель сутності для збереження інформації про
продукти. Клас включає різні атрибути, такі як назва, опис, ціна та інші, що
відображаються на відповідні стовпці таблиці в базі даних через анотації JPA.
Створення репозиторіїв: Реалізація інтерфейсів репозиторіїв, що
розширюють JpaRepository для забезпечення CRUD операцій над даними.
ЧДТУ 242275.003 ПЗ ист
44
Зм Арк. № докум. Пiдпис. Дата
нт
Рисунок 3.5 – Реалізація інтерфейса категорій
Цей рисунок показує реалізацію інтерфейсу репозиторія для категорій,
який розширює JpaRepository. Це забезпечує виконання CRUD операцій
(створення, читання, оновлення та видалення) для сутності категорій
Рисунок 3.6 – Реалізація інтерфейса моделі
На цьому рисунку показано реалізацію інтерфейсу репозиторія для
моделей продуктів. Інтерфейс розширює JpaRepository, що дозволяє виконувати
CRUD операції для сутності моделей продуктів.
ЧДТУ 242275.003 ПЗ ист
45
Зм Арк. № докум. Пiдпис. Дата
нт
Рисунок 3.7 – Реалізація інтерфейса продуктів
Цей рисунок демонструє реалізацію інтерфейсу репозиторія для
продуктів. Інтерфейс розширює JpaRepository, забезпечуючи підтримку CRUD
операцій для сутності продуктів.
Реалізація сервісів: Створення сервісних класів для обробки бізнес-
логіки додатку.
Рисунок 3.8 – Створення сервісного класа категорій
Цей рисунок демонструє реалізацію інтерфейсу репозиторія для
продуктів. Інтерфейс розширює JpaRepository, забезпечуючи підтримку CRUD
операцій для сутності продуктів.
ЧДТУ 242275.003 ПЗ ист
46
Зм Арк. № докум. Пiдпис. Дата
нт
Рисунок 3.9 – Створення сервісного класа продуктів
На цьому рисунку зображено створення сервісного класу для обробки
бізнес-логіки, пов'язаної з продуктами. Сервісний клас управляє основними
операціями та взаємодією з репозиторіями для продуктів.
Рисунок 3.10 – Створення сервісного класа моделів
Цей рисунок демонструє створення сервісного класу для обробки бізнес-
логіки, пов'язаної з моделями продуктів. Сервісний клас виконує основні
операції та взаємодіє з репозиторіями для моделей продуктів.
ЧДТУ 242275.003 ПЗ ист
47
Зм Арк. № докум. Пiдпис. Дата
нт
Реалізація контролерів: Створення REST-контролерів для обробки
HTTP-запитів, взаємодії з сервісами та повернення відповідей у форматі JSON.
Рисунок 3.11 – Створення контролер категорій
Цей рисунок показує створення REST-контролера для обробки HTTP-
запитів, пов'язаних з категоріями. Контролер взаємодіє з сервісним шаром і
повертає відповіді у форматі JSON.
Рисунок 3.12 – Створення контролер моделів
ЧДТУ 242275.003 ПЗ ист
48
Зм Арк. № докум. Пiдпис. Дата
нт
Цей рисунок показує створення REST-контролера для обробки HTTP-
запитів, пов'язаних з категоріями. Контролер взаємодіє з сервісним шаром і
повертає відповіді у форматі JSON.
Рисунок 3.13 – Створення контролер продуктів
Цей рисунок демонструє створення REST-контролера для обробки HTTP-
запитів, пов'язаних з продуктами. Контролер забезпечує взаємодію з сервісним
шаром і повертає відповіді у форматі JSON.
3.2. Реалізація клієнтської частини за допомогою Thymeleaf
Thymeleaf було обрано як шаблонізатор для реалізації динамічних веб-
сторінок. Основні кроки реалізації клієнтської частини включають:
Налаштування Thymeleaf: Додавання залежності Thymeleaf до проекту
та налаштування його інтеграції з Spring Boot.
ЧДТУ 242275.003 ПЗ ист
49
Зм Арк. № докум. Пiдпис. Дата
нт
Рисунок 3.14 – Додавання залежності Thymeleaf
Створення шаблонів: Розробка HTML-шаблонів для відображення
різних сторінок веб-ресурсу (головна сторінка, каталог товарів, кошик, сторінка
товару, реєстрація, вхід тощо).
Рисунок 3.15 – Розробка HTML-шаблонів
Створення HTML-шаблонів є важливим етапом у розробці веб-ресурсу.
Шаблони забезпечують структуру та вигляд різних сторінок сайту, що
допомагає створити єдиний стиль та зручний інтерфейс для користувачів.
Головна сторінка шаблонів включає огляд продуктів, категорій та спеціальних
пропозицій, дозволяючи користувачам швидко орієнтуватися в асортименті
магазину та знайомитися з популярними та новими товарами. Каталог товарів
відображає список усіх доступних товарів із можливістю фільтрації та
ЧДТУ 242275.003 ПЗ ист
50
Зм Арк. № докум. Пiдпис. Дата
нт
сортування, що допомагає користувачам швидко знайти потрібні продукти за
різними критеріями. Сторінка кошика містить перелік товарів, доданих
користувачем для покупки, включаючи деталі про кожен товар, такі як назва,
кількість та загальна сума. Це дозволяє користувачам редагувати кількість
товарів або видаляти їх з кошика перед оформленням замовлення. Шаблон
сторінки товару включає детальну інформацію про конкретний товар, його
опис, зображення, ціну та відгуки, що дає можливість користувачам
переглядати деталі товару та додавати його до кошика. Шаблон сторінки
реєстрації містить форму для створення нового облікового запису користувача,
де користувачі вводять необхідні дані, такі як ім'я, електронна пошта та пароль,
щоб зареєструватися на сайті. Шаблон сторінки входу містить форму для
авторизації користувачів, де вони можуть увійти до свого облікового запису,
ввівши електронну пошту та пароль, що забезпечує доступ до персоналізованих
функцій та налаштувань. Розробка таких шаблонів забезпечує зручність
користувачів під час навігації та взаємодії з веб-ресурсом, підтримуючи єдиний
стиль та структуру на всіх сторінках сайту.
Головна сторінка магазину. Включає огляд продуктів, категорій та
спеціальних пропозицій. Користувачі можуть переглядати популярні товари,
новинки та спеціальні акції. Це сприяє зручному та привабливому
користувацькому досвіду.
Рисунок 3.16 – Головної сторінки сайту
ЧДТУ 242275.003 ПЗ ист
51
Зм Арк. № докум. Пiдпис. Дата
нт
Головна сторінка є першою сторінкою, яку бачить користувач при
відвідуванні магазину. Вона надає загальний огляд всіх важливих елементів
сайту, таких як популярні товари, новинки та спеціальні пропозиції. Це
дозволяє користувачам швидко орієнтуватися в асортименті магазину,
знаходити цікаві пропозиції та переходити до деталей продуктів, що їх
зацікавили. Головна сторінка створює перше враження про магазин, тому
важливо зробити її зручною та привабливою для користувачів.
Сторінка каталогу товарів. Містить список усіх доступних товарів із
можливістю фільтрації та сортування. Користувачі можуть шукати товари за
різними критеріями, такими як ціна, категорія або рейтинг, що допомагає
швидко знайти необхідні продукти.
Рисунок 3.17 – Каталогу товарів
Сторінка каталогу товарів є основним інструментом для пошуку та
перегляду товарів в магазині. Вона відображає всі доступні товари, які можна
фільтрувати та сортувати за різними критеріями, такими як ціна, популярність,
категорія або рейтинг. Це допомагає користувачам швидко знайти потрібні
товари та ознайомитися з асортиментом магазину. Зручна навігація та
можливість фільтрації роблять процес пошуку товарів легким і ефективним.
ЧДТУ 242275.003 ПЗ ист
52
Зм Арк. № докум. Пiдпис. Дата
нт
Сторінка кошика. Містить перелік товарів, доданих користувачем для
покупки. Включає деталі про кожен товар, такі як назва, кількість та загальна
сума. Користувачі можуть редагувати кількість товарів або видаляти їх з
кошика перед оформленням замовлення
Рисунок 3.18 – Сторінка кошика
Сторінка кошика дозволяє користувачам переглядати товари, які вони
додали для покупки. Вона відображає інформацію про кожен товар, включаючи
назву, кількість, ціну та загальну вартість замовлення. Користувачі можуть
змінювати кількість товарів або видаляти їх з кошика, перш ніж перейти до
оформлення замовлення. Це забезпечує зручність у керуванні покупками та
допомагає уникнути помилок під час замовлення.
Сторінка реєстрації. Містить форму для створення нового облікового
запису користувача. Користувачі вводять необхідні дані, такі як ім'я,
електронна пошта та пароль, щоб зареєструватися на сайті та отримати доступ
до персоналізованих функцій.
ЧДТУ 242275.003 ПЗ ист
53
Зм Арк. № докум. Пiдпис. Дата
нт
Рисунок 3.19 – Форма реєстрації
Сторінка реєстрації дозволяє новим користувачам створити обліковий
запис на сайті. Вона містить форму, де користувачі вводять свої дані, такі як
ім'я, електронна пошта та пароль. Після успішної реєстрації користувачі
отримують доступ до персоналізованих функцій сайту, таких як перегляд
історії покупок, збереження улюблених товарів та участь у акціях. Реєстрація
допомагає створити більш інтерактивний та персоналізований досвід для
користувачів.
Інтеграція з контролерами: Використання контролерів Spring MVC для
передавання даних з серверної частини до шаблонів.
Рисунок 3.20 – Приклад передавання даних з серверної частини до
шаблонів
ЧДТУ 242275.003 ПЗ ист
54
Зм Арк. № докум. Пiдпис. Дата
нт
Створення фрагментів: Використання Thymeleaf фрагментів для
повторного використання загальних частин сторінок, таких як шапка, підвал,
навігація тощо.
Рисунок 3.21 – Створення фрагментів Thymeleaf
Хедер є верхньою частиною веб-сторінки, яка містить основні елементи
навігації, такі як логотип, меню, пошуковий рядок, кошик та посилання на
обліковий запис користувача
Рисунок 3.22 – Форма веб-сторінки хедера
Хедер забезпечує швидкий доступ до основних розділів сайту та
полегшує навігацію для користувачів. Логотип зазвичай веде на головну
ЧДТУ 242275.003 ПЗ ист
55
Зм Арк. № докум. Пiдпис. Дата
нт
сторінку, меню надає доступ до різних категорій товарів або розділів сайту,
пошуковий рядок дозволяє швидко знайти потрібні товари, а кошик та
обліковий запис дозволяють переглядати поточні покупки та налаштування
профілю. Таким чином, хедер створює зручну та інтуїтивно зрозумілу
навігацію для користувачів.
Футер є нижньою частиною веб-сторінки, яка містить додаткову
інформацію та посилання, такі як контакти, інформація про компанію, умови
використання, політика конфіденційності та соціальні медіа.
Рисунок 3.23 – Форма веб-сторінки футера
Футер надає користувачам доступ до важливої інформації про магазин
або компанію. Він може містити контактну інформацію, включаючи адресу,
телефон та електронну пошту, що дозволяє користувачам зв’язатися з
адміністрацією магазину. Також у футері можуть бути посилання на сторінки з
умовами використання, політикою конфіденційності та іншими правовими
документами. Посилання на соціальні медіа дозволяють користувачам стежити
за новинами та оновленнями магазину в різних платформах. Футер допомагає
забезпечити користувачів всією необхідною інформацією та підтримує довіру
до магазину.
Реалізація динамічного контенту: Використання Thymeleaf атрибутів
для динамічного відображення контенту (списки товарів, деталі товарів,
повідомлення тощо).
ЧДТУ 242275.003 ПЗ ист
56
Зм Арк. № докум. Пiдпис. Дата
нт
Рисунок 3.24 – Реалізація динамічного контенту Thymeleaf
Рисунок 3.25– Форма динамічного контенту Thymeleaf
3.3. Інтеграція з базою даних MySQL
База даних: MySQL використовується для зберігання та управління
даними, такими як інформація про користувачів, продукти, замовлення та інші
доменні об'єкти. MySQL є потужною реляційною базою даних, яка забезпечує
ЧДТУ 242275.003 ПЗ ист
57
Зм Арк. № докум. Пiдпис. Дата
нт
високу продуктивність та надійність. Конфігураційні файли налаштовують
підключення до бази даних та визначають параметри роботи з нею.
Конфігураційні файли та скрипти для налаштування бази даних:
application.properties:
Файл конфігурації для налаштування параметрів додатку, включаючи
підключення до бази даних. Містить такі параметри, як URL бази даних, ім'я
користувача та пароль. Використовується для налаштування підключення до
бази даних та інших параметрів роботи додатку. Це дозволяє зберігати
конфігураційні налаштування у простому текстовому форматі.
Рисунок 3.26 - Конфігурація налаштування параметрів додатку
Система безпеки Spring Security - забезпечує захист додатку,
включаючи аутентифікацію та авторизацію користувачів, а також захист від
поширених веб-атак. Spring Security є потужним та гнучким фреймворком, який
інтегрується зі Spring Boot та дозволяє реалізувати складні сценарії безпеки з
мінімальними зусиллями.
ЧДТУ 242275.003 ПЗ ист
58
Зм Арк. № докум. Пiдпис. Дата
нт
Конфігураційні файли та класи, що відповідають за налаштування та
управління безпекою у додатку:
SecurityConfiguration. Файл конфігурації для налаштування безпеки
додатку. Містить налаштування для аутентифікації та авторизації користувачів,
а також захисту від поширених веб-атак. Використовується для визначення
правил доступу до ресурсів, налаштування механізмів входу та виходу з
системи, а також налаштування політик безпеки.
Рисунок 3.27 – Конфігурація налаштування безпеки додатку
CsrfRequestMatcher. Клас, що відповідає за налаштування механізму
захисту від CSRF атак (Cross-Site Request Forgery). Забезпечує додатковий
рівень безпеки шляхом перевірки кожного запиту, який виконується до серверу.
Рисунок 3.28– Налаштування механізму захисту від CSRF атак
ЧДТУ 242275.003 ПЗ ист
59
Зм Арк. № докум. Пiдпис. Дата
нт
ApplicationConfiguration. Клас для загальних налаштувань додатку.
Містить конфігурації, які можуть впливати на роботу всієї системи, включаючи
налаштування безпеки.
Рисунок 3.29 – Загальні налаштуваня додатку
3.4. Реалізація функціональності безпеки за допомогою
Spring Security
Забезпечення безпеки веб-ресурсу було здійснено за допомогою Spring
Security. Розглянемо реалізацію основних кроків
Налаштування Spring Security: Додавання залежності Spring Security до
проекту та конфігурація безпеки у класі SecurityConfiguration.
ЧДТУ 242275.003 ПЗ ист
60
Зм Арк. № докум. Пiдпис. Дата
нт
Рисунок 3.30 – Налаштування Spring Security
Аутентифікація користувачів: Реалізація механізму аутентифікації
користувачів за допомогою форми входу та збереження облікових даних у базі
даних.
Login. Сторінка входу. Містить форму для авторизації користувачів.
Користувачі можуть увійти до свого облікового запису, ввівши електронну
пошту та пароль, що забезпечує доступ до персоналізованих функцій та
налаштувань.
Рисунок 3.31 Налаштування сторінки входу
ЧДТУ 242275.003 ПЗ ист
61
Зм Арк. № докум. Пiдпис. Дата
нт
Рисунок 3.32 – Форма входу
Авторизація користувачів: Налаштування ролей користувачів (наприклад,
адміністратор, користувач) та обмеження доступу до певних ресурсів на основі
ролей.
Рисунок 3.33 – Налаштування ролей користувачів
ЧДТУ 242275.003 ПЗ ист
62
Зм Арк. № докум. Пiдпис. Дата
нт
Рисунок 3.34 – Форма налаштування ролей користувачів
Шифрування паролів: Використання алгоритмів шифрування для
збереження паролів користувачів у безпечному вигляді.
Рисунок 3. 35 – Шифрування паролів
Шифрування паролів є важливим аспектом забезпечення безпеки
користувачів у веб-додатках. Використання сучасних алгоритмів шифрування,
таких як bcrypt, дозволяє зберігати паролі у зашифрованому вигляді в базі
даних. Це гарантує, що навіть у випадку компрометації бази даних,
зловмисники не зможуть легко отримати доступ до паролів користувачів.
Процес шифрування включає генерацію сольового значення (salt) та його
використання разом із паролем для створення хешу, який потім зберігається в
базі даних. Коли користувач вводить свій пароль під час входу, система
порівнює хеш введеного пароля з хешем у базі даних для перевірки
достовірності.
ЧДТУ 242275.003 ПЗ ист
63
Зм Арк. № докум. Пiдпис. Дата
нт
Реалізація logout: Налаштування функціональності виходу користувачів
із системи.
Рисунок 3.36 – Налаштування функціональності виходу
Реалізація функціональності logout є необхідною для забезпечення
безпеки та конфіденційності користувачів. Вона дозволяє користувачам вийти
зі свого облікового запису після завершення роботи з додатком. Процес logout
зазвичай включає видалення сесії користувача з серверу та очищення будь-яких
відповідних файлів cookie або токенів аутентифікації. Це гарантує, що після
виходу ніхто інший не зможе отримати доступ до облікового запису
користувача без повторного входу. Налаштування цієї функціональності
включає обробку відповідних запитів на сервері та налаштування
маршрутизації для коректного виконання операції виходу.
CloudinaryConfiguration. Клас конфігурації для інтеграції з Cloudinary,
що використовується для зберігання та обробки зображень. Містить
налаштування підключення та параметри роботи з Cloudinary.
Рисунок 3.37 – Конфігурація Cloudinary
ЧДТУ 242275.003 ПЗ ист
64
Зм Арк. № докум. Пiдпис. Дата
нт
InterceptorConfiguration. Клас для налаштування інтерсепторів, які
перехоплюють та обробляють запити до серверу. Використовується для
реалізації додаткових перевірок та обробки запитів на рівні фільтрів.
Рисунок 3.38 – Налаштування інтерсепторів
UserDetailsServiceConfig.Клас конфігурації для налаштування сервісу
управління даними користувачів. Забезпечує завантаження даних користувача
під час аутентифікації та авторизації.
Рисунок 3.39 – Конфігурація налаштування сервісу
Висновок до 3 розділу
У третьому розділі виконана розробка інтернет-магазину з продажу
комп’ютерної техніки, що включало в себе:
реалізацію серверної частини за допомогою Spring Boot. Включено
створення структури проекту, реалізацію моделей, репозиторіїв для CRUD
ЧДТУ 242275.003 ПЗ ист
65
Зм Арк. № докум. Пiдпис. Дата
нт
операцій, сервісних класів для обробки бізнес-логіки та REST-контролерів
для обробки HTTP-запитів.
Реалізацію клієнтської частини за допомогою Thymeleaf. Було налаштовано
Thymeleaf, розроблено HTML-шаблони для різних сторінок веб-ресурсу,
інтегровано з контролерами Spring MVC для передавання даних з серверної
частини до шаблонів та створено фрагменти для повторного використання
загальних частин сторінок.
Інтеграцію бази даних MySQL. Було налаштовано конфігураційні файли для
підключення до бази даних та визначено параметри роботи з нею, що
забезпечило надійне зберігання та управління даними.
Реалізацію функціональності безпеки за допомогою Spring Security. Було
налаштовано аутентифікацію та авторизацію користувачів, шифрування
паролів, реалізовано функціональність виходу користувачів із системи та
захист від поширених веб-атак.
Таким чином, у третьому розділі було детально розглянуто та
проаналізовано всі ключові аспекти для створення надійного, безпечного та
високопродуктивного веб-ресурсу для інтернет-магазину комп'ютерної техніки.
ЧДТУ 242275.003 ПЗ ист
66
Зм Арк. № докум. Пiдпис. Дата
нт
ВИСНОВКИ
У першому розділі було проаналізовано сучасний ринок комп'ютерної
техніки, основні тенденції та ключові особливості популярних інтернет-
магазинів в Україні. Встановлено, що зростання попиту на ноутбуки, планшети
та геймінгові ПК значно впливає на ринок, а провідні виробники, такі як Dell,
HP, Lenovo, Apple та ASUS, мають свої конкурентні переваги. Інтернет-
магазини Foxtrot, Brain, LuckyLink та CompX демонструють ефективні
стратегії, які включають зручну навігацію, широкий асортимент товарів,
бонусні програми та швидку доставку, що робить їх конкурентоспроможними
та привабливими для користувачів. Було проведено порівняння аналогів та
сформовано вимоги до інтернет-магазину на основі цього аналізу.
У другому розділі було розглянуто процес формування вимог та
проектування архітектури веб-ресурсу. Було визначено функціональні та
нефункціональні вимоги, включаючи реєстрацію користувачів, управління
каталогом товарів, кошиком покупок, адміністративною панеллю, а також
вимоги до продуктивності, масштабованості, надійності та сумісності з різними
браузерами та пристроями. Розглянуто ключові аспекти безпеки, такі як
аутентифікація та авторизація, шифрування даних, захист від атак, резервне
копіювання даних та відстеження активності користувачів. Для розробки було
обрано технології, такі як Spring Boot, Thymeleaf, MySQL, Spring Security,
Maven, Hibernate та JUnit, що забезпечило оптимальне поєднання
продуктивності, безпеки та зручності розробки. Архітектура веб-ресурсу
базується на мікросервісній моделі, яка включає клієнтську та серверну
частини, а також базу даних.
У третьому розділі було розглянуто розробку серверної та клієнтської
частини веб-ресурсу. Серверна частина реалізована за допомогою Spring Boot,
що дозволило швидко створити готовий до використання додаток з
мінімальною конфігурацією. Реалізація включала створення моделей, що
ЧДТУ 242275.003 ПЗ ист
67
Зм Арк. № докум. Пiдпис. Дата
нт
відповідають таблицям бази даних, використання анотацій JPA для
відображення класів на таблиці, та створення репозиторіїв через інтерфейси
JpaRepository. Сервісні класи обробляли бізнес-логіку, а REST-контролери
відповідали за обробку HTTP-запитів. Клієнтська частина була реалізована за
допомогою Thymeleaf, що дозволило створювати динамічні веб-сторінки з
інтеграцією контролерів Spring MVC для передачі даних. Використання
Thymeleaf фрагментів дозволило повторно використовувати загальні частини
сторінок, а Thymeleaf атрибути забезпечили динамічне відображення контенту.
Інтеграція з базою даних MySQL забезпечила надійне зберігання та управління
даними, а функціональність безпеки була реалізована за допомогою Spring
Security, що включало налаштування аутентифікації та авторизації,
шифрування паролів, захист від веб-атак та функціональність виходу
користувачів із системи.
У процесі виконання кваліфікаційної роботи бакалавра були виконані
наступні завдання: проведений аналіз сучасного ринку комп'ютерної техніки та
конкурентів, сформовані функціональні і нефункціональні вимоги до веб-
ресурсу, спроектована архітектура системи, розроблені серверна та клієнтська
частини веб-ресурсу, інтегровано базу даних, забезпечено безпеку та
протестовано продуктивність системи. Мета кваліфікаційної роботи, а саме
розробка інтернет-магазину для продажу комп'ютерної техніки з
використанням сучасних технологій та інструментів, була досягнута.
Таким чином, мета кваліфікаційної роботи, а саме розробка інтернет
магазину для продажу комп'ютерної техніки з використанням сучасних
технологій та інструментів, була досягнута.
ЧДТУ 242275.003 ПЗ ист
68
Зм Арк. № докум. Пiдпис. Дата
нт
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ
1. Spring Boot Documentation. Офіційна документація по Spring Boot.
URL: https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/
2. Thymeleaf Documentation. Офіційна документація по Thymeleaf.
URL: https://www.thymeleaf.org/documentation.html
3. MySQL Documentation. Офіційна документація по MySQL.
URL: https://dev.mysql.com/doc/
4. Spring Security Documentation. Офіційна документація по Spring
Security.
URL: https://docs.spring.io/spring-security/site/docs/current/reference/html5/
5. Hibernate Documentation. Офіційна документація по Hibernate.
URL: https://hibernate.org/orm/documentation/5.4/
6. Maven Documentation. Офіційна документація по Maven.
URL: https://maven.apache.org/guides/
7. JUnit Documentation. Офіційна документація по JUnit.
URL: https://junit.org/junit5/docs/current/user-guide/
8. IntelliJ IDEA Documentation. Офіційна документація по IntelliJ
IDEA.
URL: https://www.jetbrains.com/idea/documentation/
9. XAMPP Documentation. Офіційна документація по XAMPP.
URL: https://www.apachefriends.org/index.html
10. PhpMyAdmin Documentation. Офіційна документація по
PhpMyAdmin.
URL: https://docs.phpmyadmin.net/en/latest/
11. Уоллс К. Spring in Action. – Manning Publications, 2018. – 520 с.
URL: https://www.manning.com/books/spring-in-action-fifth-edition
12. Гутьеррес Ф. Pro Spring Boot. – Apress, 2016. – 320 с.
URL: https://www.apress.com/gp/book/9781484214322
ЧДТУ 242275.003 ПЗ ист
69
Зм Арк. № докум. Пiдпис. Дата
нт
13. Гуолик С., Фронтина С. Learning MySQL. – O'Reilly Media, 2009.
– 824 с. URL: https://www.oreilly.com/library/view/learning-mysql/0596514480/
14. Бувье Л. Spring Security in Action. – Manning Publications, 2020. –
616 с.
URL: https://www.manning.com/books/spring-security-in-action
15. Бауэр К., Кінг Г. Hibernate in Action. – Manning Publications, 2004.
– 496 с.URL: https://www.manning.com/books/hibernate-in-action
16. О'Браєн Т. Maven: The Complete Reference. – Sonatype, 2008. –
440 с.
URL: https://www.sonatype.com/books/maven-the-complete-reference
17. Тахер П. JUnit in Action. – Manning Publications, 2010. – 504 с.
URL: https://www.manning.com/books/junit-in-action-second-edition
18. Андерсон Дж. IntelliJ IDEA Essentials. – Packt Publishing, 2014. –
224 с.
URL: https://www.packtpub.com/product/intellij-idea-essentials/9781783282076
19. Baeldung. Getting Started with Thymeleaf.
URL: https://www.baeldung.com/thymeleaf-in-spring-mvc
20. W3Schools. Introduction to MySQL. URL:
https://www.w3schools.com/mysql/
21. InfoQ. Effective Hibernate Usage.
URL: https://www.infoq.com/articles/effective-hibernate/
22. JRebel Blog. Mastering Maven.
URL: https://www.jrebel.com/blog/mastering-maven
23. ZN.ua - Ситуація на комп'ютерному ринку України
URL:https://zn.ua/ukr/business/zrostannya_na_tli_krizi_situatsiya_na_kompyuterno
mu_rinku_ukrayini_vidaetsya_na_divo_rayduzhnoyu_v_k.html
24. Pc-price.in.ua - Лідери індустрії: ТОП виробників ПК у всесвітньому
рейтингу
URL:https://pc-price.in.ua/lidery-industrii-top-vyrobnykiv-pk-u-vsesvitnomu-
rejtynhu/
ЧДТУ 242275.003 ПЗ ист
70
Зм Арк. № докум. Пiдпис. Дата
нт
25. Lenovo.ua - Тарас Джамалов: Україна — більш перспективний
ринок ПК, ніж Західна Європа.
URL:https://lenovo.ua/blog/taras-dzhamalov-ukrayina-bilsh-perspektivnij-
rinok-pk-nizh-zahidna-yevropa
26. Fortunly.com - Laptops by the Numbers: Market Share and More.
URL: https://fortunly.com/articles/lap-top-market-share/
27. Mordorintelligence.com - PC Industry Size : Report on Market Size &
Market Share Analysis - Growth Trends & Forecasts 2024.
URL: https://www.mordorintelligence.com/industry-reports/pc-market
28. Rtings.com - The 7 Best Laptop Brands - Spring 2024 Reviews.
URL: https://www.rtings.com/laptop/reviews/best/brands
29. Infotechlead.com - PC Market Share of Lenovo, HP, Dell, Apple for Q3
2023: Gartner.
URL:https://infotechlead.com/devices/pc-market-share-of-lenovo-hp-dell-apple-for-
q3-2023-gartner-report-80998
30. forbes.ua Як одна з найбільших ІТ-компаній –
URL:https://forbes.ua/ru/innovations/burkhlivogo-zrostannya-ne-ochikuemo-yak-
odna-z-naybilshikh-it-kompaniy-luxoft-proyshla-naytyazhchiy-dlya-rinku-rik-
intervyu-z-kerivnitseyu-olenoyu-samborskoyu-28112023-17426
31. NAS.gov.ua - Про стан та перспективи розвитку комп’ютерних
технологій в Україні
URL:https://www.nas.gov.ua/UA/Messages/news/Pages/View.aspx?MessageID=253
9
ЧДТУ 242275.003 ПЗ ист
71
Зм Арк. № докум. Пiдпис. Дата
нт
Додаток А 482 ЧДТУ 242275 – 01 Специфікація
ЧДТУ 242275.003 ПЗ ист
72
Зм Арк. № докум. Пiдпис. Дата
нт
ЧДТУ 242275.003 ПЗ ист
73
Зм Арк. № докум. Пiдпис. Дата
нт
Додаток Б 482 ЧДТУ 242275 – 01 12 01 Текст програми. Фронтенд.
ЧДТУ 242275.003 ПЗ ист
74
Зм Арк. № докум. Пiдпис. Дата
нт
ЧДТУ 242275.003 ПЗ ист
75
Зм Арк. № докум. Пiдпис. Дата
нт
ЧДТУ 242275.003 ПЗ ист
76
Зм Арк. № докум. Пiдпис. Дата
нт
ЧДТУ 242275.003 ПЗ ист
77
Зм Арк. № докум. Пiдпис. Дата
нт
ЧДТУ 242275.003 ПЗ ист
78
Зм Арк. № докум. Пiдпис. Дата
нт
ЧДТУ 242275.003 ПЗ ист
79
Зм Арк. № докум. Пiдпис. Дата
нт
Додаток В 482 ЧДТУ 242275 – 01 12 02 Текст програми. База даних.
ЧДТУ 242275.003 ПЗ ист
80
Зм Арк. № докум. Пiдпис. Дата
нт