Веб-додаток для взаємодії між волонтерами

dc.contributor.advisorРудик, Володимир Іванович
dc.contributor.authorБабенко, Артем Анатолійович
dc.date.accessioned2025-10-06T08:49:52Z
dc.date.available2025-10-06T08:49:52Z
dc.date.issued2025
dc.descriptionНа основі ретельного аналізу сучасних підходів, методів та алгоритмів розв’язання поставленої задачі обґрунтовано доцільність використання монолітної багатошарової архітектури з принципами "чистої архітектури", яка забезпечує модульність і легкість підтримки системи. Застосування патерну CQRS у поєднанні з бібліотекою MediatR дозволило оптимізувати обробку команд і запитів, підвищивши продуктивність платформи. Для забезпечення безпеки використано токен-базовану аутентифікацію за допомогою JSON Web Token (JWT) із refresh tokens, що гарантує надійний захист персональних даних користувачів. Синхронна міжсервісна взаємодія реалізована через gRPC із протоколом HTTP/2, що забезпечує високу швидкість передачі даних, тоді як асинхронна обробка повідомлень здійснюється за допомогою Apache Kafka, що дозволяє ефективно управляти потоками подій у фоновому режимі. Ці методи в сукупності створюють міцну основу для стабільної та гнучкої роботи платформи, відповідаючи вимогам волонтерської діяльності. Аналіз програмних засобів дозволив обґрунтувати вибір оптимального технологічного стеку для реалізації веб-додатку. Фреймворк ASP.NET Core обрано для серверної частини завдяки його кросплатформності, високій продуктивності та глибокій інтеграції з екосистемою C#. Для клієнтської частини використано ASP.NET MVC, що забезпечує швидке завантаження сторінок і адаптивний інтерфейс через серверний рендеринг. Робота з базою даних Microsoft SQL Server здійснюється за допомогою Entity Framework Core, що спрощує взаємодію з даними, забезпечує безпеку запитів і підтримує складні операції. Технологія SignalR застосована для оновлення даних у реальному часі на головній сторінці, що значно підвищує зручність користування платформою. Контейнеризація за допомогою Docker забезпечує ізоляцію компонентів, спрощує розгортання та сприяє масштабованості системи. Використання цих інструментів дозволило створити надійну, продуктивну та зручну у підтримці платформу, яка відповідає сучасним стандартам розробки програмного забезпечення. Розроблений веб-додаток успішно реалізує задані функції, забезпечуючи волонтерам зручний інструмент для взаємодії. Система підтримує реєстрацію та авторизацію користувачів, створення, редагування й перегляд оголошень, обробку відповідей, відображення статистики та відгуків, а також інтеграцію з email-сповіщеннями через Apache Kafka. Архітектура платформи дозволяє ефективно обробляти великі обсяги запитів, зберігаючи стабільність навіть у пікові періоди активності. Проведене тестування підтвердило коректність роботи програмного забезпечення, його відповідність функціональним і нефункціональним вимогам, а також здатність забезпечувати швидку реакцію на дії користувачів і безпечну обробку даних
dc.description.abstractДипломна робота виконана на 71 сторінках, містить 26 ілюстрацій, 1 додаток, 20 джерел в переліку посилань. Метою роботи є розробка та впровадження веб-додатку для оптимізації взаємодії між волонтерами, що забезпечує швидкий обмін інформацією, координацію спільних дій та ефективне управління завданнями. Методи та засоби розробки: використано монолітну багатошарову архітектуру з принципами «чистої архітектури», патерн CQRS із бібліотекою MediatR, фреймворк ASP.NET Core, технологію gRPC із HTTP/2 для синхронної взаємодії, Apache Kafka для асинхронної обробки повідомлень, SignalR для оновлення даних у реальному часі, Entity Framework Core для роботи з базою даних MSSQL, а також Docker для контейнеризації. Основний зміст дипломної роботи включає аналіз задачі розробки веб-додатку, вибір оптимальних методів і засобів, таких як архітектура системи, аутентифікація через JWT, міжсервісна взаємодія через gRPC та Kafka, а також програмну реалізацію, що охоплює розробку клієнтської частини на ASP.NET MVC, серверної частини, структури бази даних та сценаріїв роботи користувачів, зокрема реєстрацію, авторизацію, створення, редагування та перегляд оголошень, відповіді на них, відображення статистики та відгуків. Розроблений веб-додаток може бути впроваджений у волонтерських організаціях для покращення координації дій, оперативного обміну інформацією та підвищення ефективності роботи волонтерів.
dc.description.abstractotherThe diploma thesis is completed on 71 pages, contains 26 illustrations, 1 appendices, and 20 references in the list of sources. The purpose of the study is to develop and implement a web application designed to optimize interaction among volunteers, facilitating rapid information exchange, coordination of joint efforts, and efficient task management. Methods and tools: a monolithic multi-layered architecture based on the principles of «clean architecture» was employed, incorporating the CQRS pattern with the MediatR library, the ASP.NET Core framework, gRPC technology with HTTP/2 for synchronous interaction, Apache Kafka for asynchronous message processing, SignalR for real-time data updates, Entity Framework Core for database management with MSSQL, and Docker for containerization. The main content of the diploma thesis encompasses an analysis of the web application development task, the selection of optimal methods and tools, including system architecture, authentication via JWT, inter-service interaction through gRPC and Kafka, as well as the software implementation, which includes the development of the client-side using ASP.NET MVC, the server-side, database structure, and user interaction scenarios, specifically registration, authorization, creation, editing, and viewing of announcements, responses to them, display of statistics, and user reviews. The developed web application can be implemented in volunteer organizations to enhance coordination of activities, enable prompt information exchange, and improve the overall efficiency of volunteers’ work.
dc.format.extent97 с.
dc.identifier.citationБабенко, А. А. Веб-додаток для взаємодії між волонтерами : дипломна робота ... бакалавра : 122 Комп’ютерні науки / Бабенко Артем Анатолійович. – Київ, 2025. – 97 с.
dc.identifier.urihttps://ela.kpi.ua/handle/123456789/76572
dc.language.isouk
dc.publisherКПІ ім. Ігоря Сікорського
dc.publisher.placeКиїв
dc.titleВеб-додаток для взаємодії між волонтерами
dc.title.alternativeВеб-додаток для взаємодії між волонтерами
dc.typeBachelor Thesis

Файли

Контейнер файлів
Зараз показуємо 1 - 1 з 1
Вантажиться...
Ескіз
Назва:
Babenko_bakalavr.pdf
Розмір:
8.21 MB
Формат:
Adobe Portable Document Format
Ліцензійна угода
Зараз показуємо 1 - 1 з 1
Ескіз недоступний
Назва:
license.txt
Розмір:
8.98 KB
Формат:
Item-specific license agreed upon to submission
Опис: