F2 Інженерія програмного забезпечення
Permanent URI for this collection
Освітньо-наукова програма: "Інженерія програмного забезпечення"
Browse
Recent Submissions
Item Побудова хмарного застосування для веб-орієнтованого доступу до віртуальних та віддалених робочих станцій(2025) Земляний, Данило; Черкасов, ДмитроМетою даної роботи є розробка хмарного веб-орієнтованого, масштабованого рішення для доступу до віддалених та віртуальних робочих станцій, що може бути легко впроваджене в існуючу інфраструктуру підприємств.Item Порівняльне середовище рекомендаційних систем(2025) Щербатюк, Аліна; Глибовець, АндрійУ роботі досліджено підходи до створення універсальної рекомендаційної системи, здатної підтримувати підключення різнорідних рушіїв та опрацьовувати довільні датасети зі структурованими атрибутами. Розроблено серверний застосунок, що реалізує єдине REST-API, модуль імпорту даних із конфігураційним описом, адаптерну архітектуру для інтеграції алгоритмів, а також механізм уніфікованого зберігання інформації про користувачів, об’єкти та події у взаємодії. Обґрунтовано вибір технологій FastAPI, PostgreSQL, Gorse та бібліотеки Implicit, реалізовано взаємодію з рушіями на різних мовах програмування. На основі експериментального тестування із використанням датасетів MovieLens та Goodbooks продемонстровано можливості запропонованого рішення щодо гнучкого управління джерелами даних і порівняння результатів декількох рекомендаційних алгоритмів.Item Побудова мережевого застосування з високою доступністю на хмарній платформі(2025) Кириченко, Євгеній; Черкасов, ДмитроМетою роботи є розробка рішення для цифрового бюро знахідок, яке мало би високу доступність. Додаток даватиме людям можливість знаходити загублені речі. Для реалізації задуму проаналізовано аналогічні українські рішення, здійснено огляд основних компонентів архітектури веб-додатків, розглянуто інструменти хмарної платформи AWS. Було створено оптимальне структурне рішення, описано компоненти та їх взаємодію, пояснено типові сценарії взаємодії користувача з системою. Детально розроблено модулі пошуку схожих речей по фотографії, нотифікації та очистки бази даних.Item Розробка системи збору веб-аналітики з підвищеною надійністю на основі відмовостійкого веб тега та багаторівневої хмарної інфраструктури(2025) Дячук, Максим; Черкасов, ДмитроУ роботі розглянуто проблему підвищення надійності збору веб- аналітики на клієнтському боці. Запропоновано архітектуру системи на основі багаторівневої хмарної інфраструктури та відмовостійкого клієнтського тегу. Реалізовано fault-tolerant механізми доставки подій, буферизацію, повторні спроби надсилання та підтримку роботи в умовах нестабільного з’єднання. Проведено тестування, що підтвердило стабільність і придатність системи до використання в реальних вебзастосунках.Item Алгоритм оптичної навігації дрона(2025) Бойко, Христині; Глибовець, АндрійРобота присвячена розробці алгоритму оптичної навігації дрона за зображеннями з камери та попередньо обробленим ортофото карти місцевості. Було реалізовано підготовку карти: розбиття на фрагменти, обчислення їхніх піксельних та GPS координат, виділення ключових точок і дескрипторів двома підходами: класичним методом ORB та нейромережевим методом SuperPoint + SuperGlue. Усі візуальні ознаки й координати збережено у стисненому форматі для пошуку відповідностей з кадрами. Під час навігації кожен кадр з камери дрона симулюється з випадковим кутом обертання, з нього витягуються візуальні ознаки, які порівнюються з ознаками фрагментів карти. Позиція дрона визначається через обчислення гомографії між кадром і картою. У разі невдалої локалізації дрон продовжує рух у напрямку до цільової точки, використовуючи кут між стартовими та цільовими GPS- координатами. У системі можна встановлювати стартову зону запуску дрона та точку цілі на карті, фіксувати кожен крок місії, візуалізувати реальну та оцінену траєкторії на карті. Алгоритм було реалізовано мовою Python із використанням бібліотеки OpenCV для методу ORB, попередньо натренованих моделей SuperPoint і SuperGlue, ортофото карти із платформи OpenAerialMap.Item Автоматизована локалізація застосунків в мікросервісній архітектурі(2024) Верета, Владислав; Глибовець, АндрійМета дослідження буде розробка веб-сервісу EchoLocal, що надає можливість своїм користувачам інтегрувати та управляти локалізаціями своїх продуктів в одному місці.Item Автоматизована генерація та налаштування мікросервісів для спрощення процесу розробки(2024) Колінько, Павло; Волинець, ЄвгенійМетою даної роботи є огляд існуючих рішень та розробка програмного застосунку для генерації мікросервісної архітектури засобами платформи Node.js.Item Розробка архітектури розподіленої системи управління обчислювальними задачами на хмарній платформі Azure(2024) Мальков, Єгор; Франчук, ОлегПід час написання даної дипломної роботи було розроблено архітектуру розподіленої системи управління обчислювальними задачами, створено прототип системи на хмарній платформі Azure. Було проведення тестування імплементованого рішення та проаналізовано результат, на основі якого запроваджено покращення до розробленої архітектури та прототипу, а також проведено повторне тестування. Надано рекомендації щодо використання та адаптації розробленої архітектури в залежності від ключових вимог до системи.Item Розробка системи документообороту для університету(2024) Курп’як, Олег; Глибовець, АндрійЗагалом результати кваліфікаційної роботи надають імплементацію рішення, яке відповідає заданим вимогам та є інтегрованим з існуючими системами. Система електронного документообігу допоможе прибрати людський фактор на багатьох етапах запровадження нових документів в університеті. Дана роботу є важливим внеском в розвиток внутрішніх систем НаУКМА.Item Огляд та дослідження засобів побудови застосунку з мікросервісною архітектурою на основі можливостей Spring Boot та Spring Cloud(2022) Чернова, Тетяна; Франчук, ОлегДана курсова робота присвячена огляду та дослідженню мікросервісного підходу при побудові веб-застосунків на базі технологій Spring Boot та Spring Cloud. В теоретичній частині роботи розглянено основні переваги та проблематику мікросервісного підходу, найпоширеніші проблеми, що зустрічаються при побудові застосунків з мікросервісною архітектурою та відомі шляхи їх вирішення, реалізація цих рішень в Spring Cloud. В практичній частині роботи було використано найбільш відомі мікросервісні патерни та наведені інструкції щодо їх впровадження до застосунку на основі фреймворку Spring.Item Автоматизація розгортання сервісу за допомогою Vagrant(2022) Іщенко, І.; Черкасов, ДмитроРезультатом курсової роботи є розроблена тестова версія онлайн блогу для обміну знаннями в організаціях невеликого розміру, яка може розгортатись на віртуальну машину для тестування. Застосунок використовує Sql Server для роботи з базами даних та Vagrant для автоматичного налаштування робочої інфраструктури. За допомогою Vagrant можливо автоматично розгортати та копіювати тестові середовища для максимальної імітації робочої інфраструктури. За допомогою логування можна відстежувати помилки, які стаються під час виконання. Було використано велику кількість технологій для розробки : ASP.NET Web App, Razor Pages, Entity Framework Core, Sql Server, Bootstrap, Dependency Injection. А також було використано інструменти та сервіси для автоматизації розгортання застосунку : Vagrant, Virtual Box, Visual Studio File Share, Shell, Apache. В рамках цієї роботи було розглянуто велику кількість сервісів, які можуть додатково покращити автоматизацію розгортання як на локальну віртуальну машину, так і в хмарне середовище, такі як : Chef, Puppet, Ansible. Робочий прототип онлайн блогу демонструє властивості сучасного підходу до розробки веб-застосунків а також тестування правильної роботи до потрапляння в робоче середовище. Застосунок складається з 2х робочих частин, кожна з яких розгортається на віртуальній машині та дозволяє в повній мірі перевірити роботу рішення.Item Розробка смарт-контракту в мережі Ethereum для продажу елементів NFT- колекцій(2022) Скрипнік, Андрій; Франчук, ОлегРоботу присвячено теоретичному огляду технології блокчейн та деяких її витоків, таких як смарт-контракти, NFT, а також, практичній імплементації смарт-контракту для продажу елементів NFT-колекцій. Практичним результатом роботи є розроблений в тестовому блокчейні Ethereum смарт-контракт за стандартом ERC-721, написаний з використанням мови програмування Solidity.Item Побудова багаторівневого веб-застосування з високою доступністю на платформі Google Cloud Platform (GCP)(2022) Возбранний, Роман; Черкасов, ДмитроВ роботі проаналізовано процес розробки, розгортання та підтримки багаторівневих застосунків. Також, описуються особливості налаштування проектів для розгортання в Google Cloud Platform. В результаті, розроблено інструкції та проаналізовано готові рішення для розробки, розгортання та підтримки застосунків.Item Створення застосунку для алгоритмічного трейдингу криптовалют з використанням машинного навчання(2022) Кушка, Михайло; Франчук, ОлегУ даній магістерській роботі розглянуто основні методи трейдингу криптовалют, що застосовуються на фінансових біржах – від традиційних, де рішення про купівлю/продаж приймається брокером в кожному конкретному випадку особисто, до повністю автоматизованих, коли трейдинг криптовалют за вихідними, заздалегідь заданими параметрами, здійснюється за певними алгоритмами без участі людини. Проаналізовано переваги та недоліки кожного з розглянутих методів. Написаний код на Node JS, який на базі машинного навчання може прогнозувати ціну на криптовалюту, а також створено комп’ютерний застосунок для можливості взаємодії з найбільшою світовою біржою криптовалют – "Бінанс" (Binance).Item Побудова багаторівневого веб-застосування з високою доступністю на платформі Google Cloud Platform(2022) Василенко, Олександр; Черкасов, ДмитроВ рамках даної роботи проведено огляд хмарної платформи Google Cloud Platform та її аналогів у якості засобу для розміщення багаторівневого веб-застосування. Проаналізовано можливості платформи для забезпечення високої доступності та розроблено веб-застосування для бібліотеки, що використовує засоби балансування навантаження для забезпечення відмовостійкості.Item Розробка методології імплементації транзакцій в розподілених системах(2023) Чернова, Тетяна; Глибовець, АндрійДана робота присвячена аналізу проблематики використання транзакцій в розподілених системах, реалізації відомого мікросервісного патерну – Transactional Outbox у вигляді Spring starter, що додається до системи, конфігурується та полегшує роботу використання транзакцій і публікацію подій, що є частинами транзакції в мікросервісній архітектурі. Також вагому частину цієї роботи було присвячено створенню загальної методології роботи розподілених транзакцій на базі черг повідомлень, з використанням вищезазначеного стартеру, опису конфігурацій та налаштування черг повідомлень для коректної роботи транзакцій в розподілених системах. Результатом роботи є стартер, опис його конфігурації та загальна методологія роботи транзакцій в розподілених системах на базі черг повідомлень.Item Розробка бібліотеки на .NET для роботи зі знімками (snapshots) для EventStoreDB(2023) Осадчук, Володимир; Франчук, ОлегРобота присвячена базі даних, яка спеціалізується на збереженні подій (events) та їх історії в EventStore, а також патернам, які вона реалізує – Event Sourcing та CQRS (Command Query Responsibility Segregation) в контексті мікросервісної архітектури. Були розглянуті недоліки EventStore та необхідність збереження проміжних подій. Був проведений аналіз існуючих бібліотек на .NET для вирішення цих проблем, а також розроблена власна бібліотека, яка вирішує проблеми EventStore. Проведено порівняння написаної бібліотеки з існуючими та виміряна продуктивність. Розроблену бібліотеку, разом з EventStore, було використано у наявному веб-застосунку для оголошень з прокату паперових книг.Item Розробка бібліотеки підвищення відмовостійкості в мікросервісній архітектурі(2023) Папроцький, Ігор; Глибовець, АндрійДана робота присвячена дослідженню сучасних практик забезпечення відмовостійкості мікросервісів. Дослідження розглядає поширені патерни для реалізації цієї задачі. Основну увагу приділено відомому патерну під назвою Circuit Breaker, а саме спробі покращення його стандартної імплементації з точки зору надійності та продуктивності. Для досягнення цієї мети запропоновано підхід, який полягає у зменшенні кількості часових затримок, які використовуються при переході між його станами, а також зменшенні кількості станів самого інструменту Circuit Breaker за рахунок переходу до моделі прогнозування стабільності системи на основі метрик, що збираються в процесі роботи застосунку. Результатом роботи є модель Circuit Breaker яка працює у двох станах, а також порівняльні експерименти для перевірки правильності припущень покладених на ефективність цієї моделі.Item Створення бібліотек на основі Spring Boot для уніфікації розробки інформаційної системи з мікросервісною архітектурою(2023) Скрипнік, Андрій; Франчук, ОлегРоботу присвячено дослідженню проблематики при використанні мікросервісної архітектури в розробці інформаційних систем, а також, імплементації ряду бібліотек, і пропозиції загального підходу щодо розв’язку виявлених проблем на основі фреймворку Spring Boot. Практичним результатом роботи є 5 бібліотек, які дозволяють привести різні компоненти системи до уніфікованого вигляду в таких аспектах як: логування, обробка помилок, безпека, асинхронна комунікація, інтеграційне тестування.Item Гарантована доставка повідомлень у мікросервісній архітектурі(2023) Смакула, Роман; Глибовець, АндрійДана робота має на меті дослідити методи, які дозволяють досягнути високого рівня гарантування доставки повідомлень у мікросервісній архітектурі. Для цього було розглянуто прикладну проблему, яка виникає в сфері розробки хмарних систем IoT. В роботі розглянуті архітектурні шаблони для збереження інформації в сховищі сервісу та надсилання її в чергу повідомлень. Також розглянуто методи резервування черги повідомлень. У практичній частині даного дослідження було розроблено бібліотеку, яка написана на мові програмування Kotlin та надає інструменти для реалізації шаблону Transactional Outbox. Було проведені заміри швидкодії даної бібліотеки та її аналогів.