Please use this identifier to cite or link to this item: http://elartu.tntu.edu.ua/handle/lib/52693
Title: Розробка та тестування мобільного застосунку супроводу ремонтних робіт з використанням мови програмування Kotlin
Other Titles: Development and testing of a mobile application for monitoring renovation using Kotlin
Authors: Огінський, Назар Анатолійович
Ohinskyi, Nazar
Affiliation: ТНТУ ім. І. Пулюя, Факультет комп’ютерно-інформаційних систем і програмної інженерії, Кафедра програмної інженерії, м. Тернопіль, Україна
Bibliographic reference (2015): Огінський Н. А. Розробка та тестування мобільного застосунку супроводу ремонтних робіт з використанням мови програмування Kotlin : робота на здобуття кваліфікаційного ступеня бакалавра : 121 - інженерія програмного забезпечення / наук. кер. І. Я. Мудрик. Тернопіль : Тернопільський національний технічний університет імені Івана Пулюя, 2026. 83 с.
Issue Date: Jun-2026
Date of entry: 25-Jun-2026
Publisher: Тернопільський національний технічний університет імені Івана Пулюя
Country (code): UA
Place of the edition/event: ТНТУ ім. І.Пулюя, ФІС, м. Тернопіль, Україна
Supervisor: Мудрик, Іван Ярославович
Committee members: Тиш, Євгенія Володимирівна
UDC: 004.9
Keywords: Android
Kotlin
Jetpack Compose
Room (SQLite)
Apache POI
MVVM
автономний мобільний застосунок
ремонтні роботи
кошторис
звітність
тестування
mobile application
renovation
foreman
reporting
testing
Number of pages: 83
Abstract: Розробка та тестування мобільного застосунку супроводу ремонтних робіт з використанням мови програмування Kotlin Метою кваліфікаційної роботи є розробка автономного локального мобільного застосунку «Renovum» для автоматизації обліку, геометричних розрахунків та фінансового супроводу ремонтних робіт з використанням мови програмування Kotlin та сучасних технологій Android-розробки. Під час виконання роботи у першому розділі здійснено всебічний аналіз предметної області та сформовано комплекс функціональних вимог до системи. У другому розділі спроєктовано автономну архітектуру застосунку на основі шаблону MVVM (Model–View–ViewModel), деталізовано користувацькі сценарії використання, а також розроблено обчислювальні моделі даних кімнат різної конфігурації та структуру локальної реляційної бази даних Room (SQLite). У третьому розділі виконано практичну програмну реалізацію та тестування мобільного клієнта, а також інтегровано підсистему асинхронного експорту звітів. У четвертому розділі досліджено аспекти безпеки життєдіяльності та охорони праці розробника. Реалізація виконана мовою Kotlin із використанням декларативного фреймворку Jetpack Compose, СУБД Room (SQLite) та інструментарію Apache POI. Застосунок забезпечує створення списку кімнат, розрахунок їх параметрів, збереження виконаних робіт для кожної кімнати, обрахунок кошторису усіх кімнат окремо та ремонту в цілому, формування звітності в форматі Microsoft Word Document (.docx) та перегляд історії звітності.
Development and testing of a mobile application for monitoring renovation using Kotlin. The goal of this thesis is to develop a standalone local mobile application “Renovum” for automating accounting, geometric calculations, and financial management of renovation projects using the Kotlin programming language and modern Android development technologies. During the course of the work, the first chapter provides a comprehensive analysis of the subject area and establishes a set of functional requirements for the system. In the second chapter, an autonomous application architecture based on the MVVM (Model–View–ViewModel) pattern was designed, user scenarios were detailed, and computational models for rooms of various configurations, as well as the structure of the local relational database Room (SQLite), were developed. In the third chapter, the practical software implementation and testing of the mobile client were performed, and a subsystem for asynchronous report export was integrated. In the fourth chapter, aspects of developer safety and occupational health were examined. The implementation is written in Kotlin using the Jetpack Compose declarative framework, the Room (SQLite) database management system, and the Apache POI toolkit. The application enables the creation of a list of rooms, the calculation of their parameters, the saving of completed work for each room, the calculation of estimates for all rooms individually and for the renovation as a whole, the generation of reports in Microsoft Word Document (.docx) format, and the viewing of report history.
Content: ВСТУП 9 1 АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ МОБІЛЬНОГО ЗАСТОСУНКУ СУПРОВОДУ РЕМОНТНИХ РОБІТ ……………………………………………………………………..11 1.1 Аналіз предметної області ………………………………………………………..11 1.2 Огляд існуючих цифрових рішень …………………………………………………13 1.3 Обґрунтування необхідності розробки Renovum ……………………………..15 1.4 Формування функціональних вимог …………………………………………..16 1.5 Формування нефункціональних вимог …………………………………………..19 1.6 Вибір технологій розробки ………………………………………………………...20 2 ПРОЄКТУВАННЯ МОБІЛЬНОГО ЗАСТОСУНКУ RENOVUM ………………..23 2.1 Загальна архітектура системи …………………………………………………23 2.2 Проєктування сценаріїв використання …………………………………………..27 2.3 Моделювання доменної області та моделей даних ……………………………..32 2.4 Проєктування структури локальної бази даних Room ……………………………..34 2.5 Проєктування логіки навігації та інтерфейсу користувача ………………………37 2.6 Проєктування бізнес-правил та алгоритмів розрахунку ………………………40 3 РЕАЛІЗАЦІЯ ТА ТЕСТУВАННЯ МОБІЛЬНОГО ЗАСТОСУНКУ RENOVUM ………………………………………………………………………………………….43 3.1 Структура Android-проєкту ………………………………………………………..43 3.2 Реалізація додавання ремонту та керування кімнатами ………………………45 3.3 Реалізація обчислювального модуля та екрана геометричних замірів …………47 3.4 Реалізація модуля призначення технологічних робіт та формування розцінок ………………………………………………………………………………………….49 3.5 Реалізація екрана фінального кошторису та інтерактивних інструментів управління проєктом ……………………………………………………………………...52 3.6 Реалізація підсистеми фонової генерації звітів та взаємодії з файловою системою ОС Android …………………………………………………………………………………...55 3.7 Програмна реалізація екрана локального архіву кошторисів та інструментів пакетного управління файлами ………………………………………………………...58 3.8 Верифікація функціональних вимог та управління версіями за допомогою системи Git ………………………………………………………………………………………….62 3.9 Автоматизована збірка та розгортання релізного пакету застосунку …………65 3.10 Тестування застосунку та верифікація функціональних вимог ………………..66 4 БЕЗПЕКА ЖИТТЄДІЯЛЬНОСТІ, ОСНОВИ ОХОРОНИ ПРАЦІ ………………..69 4.1 Інформаційне перевантаження як фактор ризику для життєдіяльності людини …..69 4.2 Ергономічні вимоги та оптимізація мікроклімату на робочому місці розробника ………………………………………………………………………………………….71 ВИСНОВКИ …………………………………………………………………………….73 СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ …………………………………………………75 ДОДАТКИ …………………………………………………………………………………...79 Додаток А …………………………………………………………………………………...80 Додаток Б …………………………………………………………………………………...81 Додаток В …………………………………………………………………………………...82 Додаток Д …………………………………………………………………………………...83
URI: http://elartu.tntu.edu.ua/handle/lib/52693
Copyright owner: © Огінський Назар Анатолійович
References (Ukraine): 1. Kotlin Documentation [Електронний ресурс]. Режим доступу: https://kotlinlang.org/docs/home.html
2. Android Developers. Kotlin and Android [Електронний ресурс]. Режим доступу: https://developer.android.com/kotlin
3. Android Developers. Jetpack Compose documentation [Електронний ресурс]. Режим доступу: https://developer.android.com/jetpack/compose/documentation
4. Android Developers. Guide to app architecture [Електронний ресурс]. Режим доступу: https://developer.android.com/topic/architecture
5. Android Developers. Navigation with Compose [Електронний ресурс]. Режим доступу: https://developer.android.com/develop/ui/compose/navigation
6. Android Developers. ActivityResultContracts [Електронний ресурс]. Режим доступу: https://developer.android.com/reference/androidx/activity/result/contract/ActivityResultContracts
7. Material Design 3. Design system documentation [Електронний ресурс]. Режим доступу: https://m3.material.io/
8. Android Developers. Room persistence library [Електронний ресурс]. Режим доступу: https://developer.android.com/training/data-storage/room
9. Android Developers. Defining data using Room entities [Електронний ресурс]. Режим доступу: https://developer.android.com/training/data-storage/room/defining-data
10. Android Developers. Accessing data using Room DAOs [Електронний ресурс]. Режим доступу: https://developer.android.com/training/data-storage/room/accessing-data
11. Android Developers. Migrating Room databases [Електронний ресурс]. Режим доступу: https://developer.android.com/training/data-storage/room/migrating-db-versions
12. Android Developers. Referencing complex data using Room [Електронний ресурс]. Режим доступу: https://developer.android.com/training/data-storage/room/referencing-data
13. Overview (POI API Documentation) [Електронний ресурс]. Режим доступу: https://poi.apache.org/apidocs/dev/index.html
14. Gradle User Manual [Електронний ресурс]. Режим доступу: https://docs.gradle.org/current/userguide/userguide.html
15. Android Studio User Guide [Електронний ресурс]. Режим доступу: https://developer.android.com/studio/intro
Content type: Bachelor Thesis
Appears in Collections:121 — Інженерія програмного забезпечення, F2 Інженерія програмного забезпечення (бакалаври)

Files in This Item:
File Description SizeFormat 
KRB_Ohinskyi_N_2026.pdf2,48 MBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.

Admin Tools