Система підтримки прийняття рішень для процесу тестування програмного забезпечення

Автор: Бешлей Роман Ігорович
Кваліфікаційний рівень: магістр
Спеціальність: Системи і методи прийняття рішень
Інститут: Інститут комп'ютерних наук та інформаційних технологій
Форма навчання: денна
Навчальний рік: 2025-2026 н.р.
Мова захисту: українська
Анотація: У роботі представлено концепцію, проєктування та реалізацію системи під-тримки прийняття рішень для процесу тестування програмного забезпечення. Система реалізована у вигляді веб-орієнтованої системи управління тестуванням (TMS), що надає функціонал для централізованого управління тестовими арте-фактами та інтелектуальну підтримку для оптимізації тестових зусиль. Процес тестування, який традиційно розглядався як завершальний етап ко-нтролю, трансформувався у безперервний процес забезпечення якості, інтегро-ваний у кожну фазу життєвого циклу розробки (SDLC). Однак, експоненційне зростання кількості тестів (особливо автоматизованих) створює проблему "інфо-рмаційного шуму" та дефіциту часу. Команди QA стикаються з необхідністю ви-бору: які тести запустити, коли час на реліз обмежений годинами або хвилина-ми? Існуючі інструменти (TestRail, TestLink) ефективно вирішують задачі обліку, але не надають інтелектуальної підтримки у пріоритезації. Розробка системи, яка використовує історичні дані для оптимізації тестових наборів, є актуальною на-уково-практичною задачею. Наукова новизна роботи полягає у розробці архітектури легкої TMS, яка ін-тегрує прозору та гнучку модель підтримки прийняття рішень для динамічної пріоритезації тест-кейсів. Запропонована модель базується на методі зваженого скорингу, що враховує історію збоїв тест-кейсів, їхню складність та бізнес-критичність, що є ефективною альтернативою складним моделям машинного нав-чання. Об’єкт дослідження – системи для керування тестуванням програмного за-безпечення. Предмет дослідження – моделі та алгоритми підтримки прийняття рішень в рамках системи управління тестуванням. Метою магістерської роботи є підвищення ефективності процесу тестування шляхом розробки інформаційної системи класу TMS (Test Management System) з інтегрованим модулем прийняття рішень (СППР), що базується на методах бага-токритеріального аналізу. Основними завданнями роботи є: аналіз сучасних підходів до управління тестуванням та існуючих TMS; системний аналіз предметної області та побудова архітектурної моделі з використанням UML; обґрунтування вибору методів та засобів для реалізації СППР та TMS; практична реалізація та тестування програ-много прототипу системи. Задачі дослідження: 1. Провести системний аналіз предметної області та існуючих рішень, іденти-фікувати їх архітектурні та функціональні обмеження. 2. Обґрунтувати вибір стратегії створення системи (Custom vs SaaS vs Open Source) за допомогою методу аналізу ієрархій (AHP). 3. Розробити математичну модель та алгоритм пріоритезації тест-кейсів на ос-нові зваженого скорингу. 4. Спроєктувати та програмно реалізувати прототип системи з використанням сучасного стеку технологій (Node.js, React, PostgreSQL). 5. Здійснити верифікацію ефективності запропонованого підходу. У ході дослідження було проведено детальний порівняльний аналіз провідних TMS (TestRail, Qase, TestLink). Встановлено, що комерційні рішення мають висо-ку вартість масштабування, а Open Source альтернативи страждають від застарі-лого UX та складності інтеграції. Застосування методу аналізу ієрархій (МАІ) до-зволило математично обґрунтувати доцільність власної розробки порівняно з ви-користанням готових рішень, зважаючи на пріоритетність критерію гнучкості для реалізації наукового компонента. Розроблено алгоритм динамічної пріоритезації, який враховує частоту виявлення помилок (Failure Rate), бізнес-пріоритет та складність тесту. Реалізовано веб-орієнтовану систему, що включає модулі уп-равління проєктами, конструктор тест-кейсів, модуль виконання тестів (Test Runner) та аналітичний дашборд. Перший розділ надає аналітичний огляд предметної області, розглянуто ви-клики сучасного процесу тестування та проаналізовано існуючі TMS-рішення, що обґрунтовує актуальність розробки. Другий розділ показує проведену аналітич-ну роботу та розробку архітектурного рішення за допомогою дерева цілей та на-бору UML-діаграм (варіантів використання, класів, послідовності, діяльності, компонентів). Третій розділ демонструє вибір методу зваженого скорингу для ре-алізації СППР та технологічного стеку (Node.js, Express, React, PostgreSQL). Чет-вертий розділ пропонує оглянути метод розробки прототипу, наведено фрагмен-ти коду, скріншоти інтерфейсу та результати тестування системи. Розроблений прототип демонструє життєздатність запропонованої архітек-тури та ефективність обраного методу пріоритезації, що підтверджує досягнення мети дослідження та може слугувати базою для подальшої розробки. Ключові слова – управління тестуванням, TMS, пріоритезація тест-кейсів, системний аналіз, UML, Node.js, React, зважений скоринг, тестування програмно-го забезпечення