Романкевич, Віталій ОлексійовичІус, Іван Олександрович2024-12-232024-12-232024Іус, І. О. Система автоматичного тестування програмного забезпечення засобами CI/CD : магістерська дис. : 123 Комп’ютерна інженерія / Іус Іван Олександрович. – Київ, 2024. – 93 с.https://ela.kpi.ua/handle/123456789/71249Актуальність теми зумовлена збільшенням конкуренції між компаніями на ринку розробки програмного забезпечення. Бізнес прагне до більш швидкої розробки та доставки продукту користувачам задля конкурентноспроможності. Внаслідок цього компанії приходять до рішення наймати окремих розробників, які будуть відповідати за інфраструктуру навколо програмного коду, що представляє основну логіку програмного забезпечення. Такі розробники займаються створенням інструментарію, що допоможе пришвидшити створення продукту, його тестування та доставку кінцевим користувачам. Впродовж розвитку окремого напрямку у інформаційних технологіях, спецалісти якого займаються покращенням надійності та продуктивності доставки програмного забезпечення користувачам, була розроблена низка практик та технологій. Деякі з них будуть застосовані у даній роботі. Об'єктом дослідження виступає інфраструктура, яка реалізує автоматизоване тестування розробленого програмного забезпечення, подальша ізоляція продукту у окреме середовище, яке забезпечує безпеку коду та можливість запуску на різних системах, розгортання продукту у середовищі, яке доступне користувачам задля можливості користування програмою, і моніторинг системи для відслідковування критичних навантажень, які можуть спричинити до некоректної роботи розробленого сервісу. Предмет дослідження: вивчення та вибір інструментів для реалізації автоматизованої системи, порівняння переваг та недоліків та огляд можливостей коректної взаємодії для досягнення найкращої ефективності для поставленої у роботі мети. Мета роботи: розробити середовище, яке сприятиме, перш за все, швидкому тестуванню та розгортанню програми, надійності при розгортанні продукту для користування. Також важливим критерієм є забезпечення можливості адаптіції інфраструктури до інших технологій, які використовуватимуться під час розробки, такі як: мови програмування, фреймворки, тощо. Наукова новизна полягає у наступному: запропонована система, що інтегрує у собі лекілька сервісів, які відповідають за багатосторонній підхід до роботи з готовим програмним забезпеченням. Практична цінність даної роботи полягає у тому, щоб представити систему, яка прискоює роботу із забезпечення стабільності роботи програми, яка отримується на виході від розробників. За рахунок автоматизації таких етапів, як: тестування, розміщення в ізольованому середовизі, розгортання та моніторинг, бізнес може заощадити кошти на фахівцях, які мали б власними силами забезпечувати кожний з перелічених процесів. Більш того, за рахунок швидкості, компанія стає конкурентноспроможною на ринку та отримує переваги у подальшому розвитку свого продукту. Апробація Основні положення і результати роботи були представлені та обговорювались на XVII науковій конференції магістрантів та аспірантів «Прикладна математика та комп’ютинг» ПМК-2024 (Київ, 25-27 листопада 2024 р.) та на Х Міжнародній молодіжній науково-практичній інтернет-конференції «Наука і молодь в ХХІ сторіччі» яка відбулась у Полтавському університеті економіки і торгівлі 28 листопада 2024 року. Структура та обсяг роботи Магістерська дисертація складається з вступу, 3-x розділів та висновків. Вступ описує комплекс робіт, який наразі є важливим на практиці для тестування, доставки та розгортання програмного забезпечення. Пояснюється доцільність проведення дослідження даної проблеми. Перший розділ: розгляд понять, що охоплюють сферу безперервної інтеграції та доставки, способів ізоляції програмного коду в окремому середовищі. Також описується доцільність моніторингу, розглядається можливість використання хмарних провайдерів при розгортанні програмного забезпечення. Другий розділ: розгляд інструментів, що найкраще підійдуть до реалізації поставлених задач для кожного з етапів. Третій розділ: створення програми, яка слугуватиме прикладом розробленого продукту для подальної демонстрації процесу автоматизованої контейнеризації та розгортання у хмарному середовищі.. Розробка середовища безперервної інтеграції та доставки із забезпеченням ізоліяції та розгортання програмного коду. Демонстрація результатів роботи створенох системи. Висновки: формулювання результатів проведених досліджень, надання висновків щодо вдалого поєднання технологій задля реалізації поставленої мети та опис можливих шляхів покращень швидкості та якості розробки інфраструктури у подальший час. Робота виконана на 85 аркушах, містить 3 додатки та посилання на список використаних літературних джерел з 5 найменувань. У роботі наведено 26 рисунків та 3 таблиці.93 с.ukCI/CDDockerмоніторингGoogle Cloud PlatformDevOpsmonitoringСистема автоматичного тестування програмного забезпечення засобами CI/CDMaster Thesis004.77