Optimization of the development process of monolithic multi-module projects in Java

dc.contributor.authorVeres, Maksym Dmytrovych
dc.contributor.authorGolian, Natalia Viktorivna
dc.date.accessioned2024-08-13T10:54:07Z
dc.date.available2024-08-13T10:54:07Z
dc.date.issued2024
dc.description.abstractIn recent years, there has been an increase in the complexity of Java software development and a change in the scope of projects, including an increase in the number of modules in projects. The multi-modularity of projects, although it improves manageability to a certain extent, but often creates a number of problems that can complicate development and, a problem that will appear in the future, require more resources to support. This article will analyze the main problems of monolithic multi-module Java projects and will try to consider a number of possible solutions to overcome the above problems. The article discusses the peculiarities of working with multi-module monolithic projects using Java as the main programming language. The purpose of this article is to identify features and obstacles using the above architectural approach of the software, analysis of the main possible issues of working with the monolithic multi-module Java projects, as well as providing recommendations for eliminating these obstacles or describing the features of the process that could help engineers in supporting this kind of projects. In other word the main goal of this work is to create recommendations, provide modern best practices for working with monolithic multi-modular software architecture and the most popular modern technological solutions used in corporate development. The proposed recommendations allow the team, primarily developers and the engineering side, to avoid possible obstacles that lead to the loss of efficiency of the monolithic software development process. The most important advantage, from the recommendations given in the article, is the optimization of resource costs (time, money and labor) for the development process. As a result of the article, a general list of recommendations was obtained, which allows the developer to better analyze what changes in the project should (if necessary) be made to optimize the development, assembly and deployment processes of a monolithic Java project, as well as advice before designing new software to avoid the main obstacles of monolithic architecture in the future.
dc.description.abstractВ останні роки спостерігається зростання складності розробки програмного забезпечення на Java та зміна обсягу проєктів, у тому числі збільшення кількості модулів у проєктах. Багатомодульність проєктів хоча й покращує певною мірою керованість, але часто створює низку проблем, які можуть ускладнити розробку та, проблему, яка з’явиться в майбутньому, вимагати більше ресурсів для підтримки. У цій статті буде проаналізовано основні проблеми монолітних багатомодульних Java-проєктів і зроблена спроба розглянути ряд можливих рішень для подолання вищезазначених проблем. У статті розглядаються особливості роботи з багатомодульними монолітними проєктами з використанням Java як основної мови програмування. Метою даної статті є виявлення особливостей і перешкод при використанні вищезазначеного архітектурного підходу програмного забезпечення, аналіз основних можливих проблем роботи з монолітними багатомодульними Java-проєктами, а також надання рекомендацій щодо усунення цих перешкод або опису особливостей процесу, який може допомогти інженерам у підтримці такого роду проєктів. Іншими словами, основною метою даної роботи є створення рекомендацій, надання сучасних кращих практик роботи з монолітною багатомодульною архітектурою програмного забезпечення та найпопулярнішими сучасними технологічними рішеннями, які використовуються в корпоративній розробці. Запропоновані рекомендації дозволяють команді, насамперед розробникам та інженерній стороні, уникнути можливих перешкод, які призводять до втрати ефективності процесу розробки монолітного програмного забезпечення. Найважливішою перевагою, з рекомендацій, наведених у статті, є оптимізація витрат ресурсів (часвих, грошових і трудових) на процес розробки. У результаті статті отримано загальний список рекомендацій, який дозволяє розробнику краще проаналізувати, які зміни в проєкті необхідно (якщо необхідно) внести для оптимізації процесів розробки, збірки та розгортання монолітного Java-проєкту, а також поради для розробки нового програмного забезпечення, щоб уникнути основних перешкод монолітної архітектури в майбутньому.
dc.identifier.citationVeres M. D. Optimization of the development process of monolithic multi-module projects in Java / M. D. Veres, N. V. Golian // Вісник Національного технічного університету "ХПІ". Сер. : Системний аналіз, управління та інформаційні технології = Bulletin of the National Technical University "KhPI". Ser. : System analysis, control and information technology : зб. наук. пр. – Харків : НТУ "ХПІ", 2024. – № 1. – С. 80-84.
dc.identifier.doihttps://doi.org/10.20998/2079-0023.2024.01.13
dc.identifier.orcidhttps://orcid.org/0009-0009-1768-8693
dc.identifier.orcidhttps://orcid.org/0000-0002-1390-3116
dc.identifier.urihttps://repository.kpi.kharkov.ua/handle/KhPI-Press/80091
dc.language.isoen
dc.publisherНаціональний технічний університет "Харківський політехнічний інститут"
dc.subjectmulti-module architecture
dc.subjectsoftware
dc.subjectprogramming languages
dc.subjectmonolithic architecture
dc.subjectпрограмне забезпечення
dc.subjectбагатомодульність проєктів
dc.subjectмови програмування
dc.subjectмонолітні архітектури
dc.subjectплагіни
dc.titleOptimization of the development process of monolithic multi-module projects in Java
dc.title.alternativeОптимізація процесу розробки монолітних багатомодульних проєктів на Java
dc.typeArticle

Файли

Контейнер файлів

Зараз показуємо 1 - 1 з 1
Ескіз
Назва:
visnyk_KhPI_2024_1_SAUIT_Veres_Optimization.pdf
Розмір:
694.11 KB
Формат:
Adobe Portable Document Format

Ліцензійна угода

Зараз показуємо 1 - 1 з 1
Ескіз недоступний
Назва:
license.txt
Розмір:
1.71 KB
Формат:
Item-specific license agreed upon to submission
Опис: