Удосконалений метод підвищення зручності супроводу за умов застосування безсерверної архітектури

dc.citation.epage16
dc.citation.issue1
dc.citation.journalTitleУкраїнський журнал інформаційних технологій
dc.citation.spage9
dc.citation.volume5
dc.contributor.affiliationНаціональний університет “Львівська політехніка”
dc.contributor.affiliationLviv Polytechnic National University
dc.contributor.authorЛахай, В. Я.
dc.contributor.authorКузьмич, О. М.
dc.contributor.authorСенів, М. М.
dc.contributor.authorLakhai, V. Y.
dc.contributor.authorKuzmych, O. M.
dc.contributor.authorSeniv, M. M.
dc.coverage.placenameЛьвів
dc.coverage.placenameLviv
dc.date.accessioned2024-04-01T07:54:30Z
dc.date.available2024-04-01T07:54:30Z
dc.date.created2023-02-28
dc.date.issued2023-02-28
dc.description.abstractЗ’ясовано, що досягнення високих показників якості програмного забезпечення (ПЗ), зокрема зручності його супроводу (англ. maintainability [1]), з кожним робом стає дедалі більшою проблемою через появу нових технологій, зокрема хмарних технологій та безсерверної архітектури. Попри це, вимоги до рівня зручності супроводу ПЗ тільки зростають, а дана характеристика його якості отримує все більше уваги. Раніше розроблені науковими та інженерними спільнотами численні інструменти, методології, підходи та методи розробки ПЗ для його підвищення якості є недостатньо ефективними за наявних умов. Було підтверджено, що застосування удосконаленого методу підвищення зручності супроводу ПЗ за умов застосування безсерверної архітектури є нагальною необхідністю. Було проаналізовано поточний стан підходів до підвищення зручності супроводу ПЗ. Внаслідок цього була обрана так звана “чиста архітектура” (з англ. Clean Architecture) як найкращий наявний підхід із причини того, що він успадковує основні переваги конкурентних підходів, надає чіткіші настанови та охоплює ширший спектр процесу розроблення ПЗ. Незважаючи на те, що він забезпечує істотне підвищення основних характеристик зручності супроводу ПЗ, таких як модульність (англ. modularity) і зручність перевикористання (англ. resusability), все ще є інші характеристики, які потрібно розглянути, такі як аналізованість (англ. analyzability), модифікованість (англ. modifiability) і тестування (англ. testability). Було визначено вимоги та розроблено удосконалений метод підвищення зручності супроводу ПЗ за умов застосування безсерверної архітектури, який задовольняє всі попередньо сформульовані вимоги. Зокрема, цей підхід покращує роботу з залежностями, надає базову структуру для компонент, підвищує згуртованість та зменшує зчепленість функціоналу. Для оцінювання ефективності створеного методу було розроблено дві реалізації одного й того ж проекту: на підставі Clean Architecture та з використанням удосконаленого методу. Для них були розраховані такі метрики оцінювання зручності супроводу ПЗ: показник зручності супроводу ПЗ (англ. Maintainability Index, MI) та його варіація, за якої до уваги беруться тільки файли з показником менше 100, яку будемо називати відфільтрований показник зручності супроводу ПЗ (англ. Filtered Maintainability Index, FMI). Проаналізувавши отримані результати, було виявлено, що застосування удосконаленого методу підвищує значення першої метрики на 2,1 % та другої на 8,3 %. Отже, було доведено ефективність розробленого вдосконаленого методу.
dc.description.abstractIt has been found that achieving high quality indicators, in particular maintainability [1], is becoming an increasing problem due to the emergence of new technologies, in particular cloud technologies and serverless architecture. Despite this, requirements for the level of ease of support are only growing, and this characteristic of software quality is receiving more and more attention. The numerous tools, methodologies, approaches and methods of software development previously developed by the scientific and engineering communities for its enhancement are insufficiently effective under the existing conditions. It was confirmed that the use of an improved method to increase the convenience of maintenance under the conditions of using a serverless architecture is an urgent necessity. The current state of approaches to increasing the convenience of support was analyzed. As a result, Clean Architecture was chosen as the best existing approach because it inherits the main advantages of competing approaches, provides clearer instructions, and covers a wider range of the development process. Although it provides significant improvements in key maintainability characteristics such as modularity and reusability, there are still other characteristics that need to be considered, such as analyzability. modifiability and testability. The requirements for the improved method were determined and an improved method was developed to increase the convenience of support in the conditions of using a serverless architecture, which satisfies all the previously formulated requirements. In particular, this approach improves work with dependencies, provides a basic structure for components, increases cohesion and reduces coupling of functionality. To evaluate the effectiveness of the created method, two implementations of the same project were developed: based on Clean Architecture and using the improved method. The following maintainability assessment metrics were calculated for them: the Maintainability Index (MI) and its variation, in which only files with an index of less than 100 are taken into account, which we will call the Filtered Maintainability Index FMI. Analyzing the obtained results, it was found that the application of the improved method increases the value of the first metric by 2.1 % and the second by 8.3 %. In this way, the effectiveness of the developed improved method was proven.
dc.format.extent9-16
dc.format.pages8
dc.identifier.citationЛахай В. Я. Удосконалений метод підвищення зручності супроводу за умов застосування безсерверної архітектури / В. Я. Лахай, О. М. Кузьмич, М. М. Сенів // Український журнал інформаційних технологій. — Львів : Видавництво Львівської політехніки, 2023. — Том 5. — № 1. — С. 9–16.
dc.identifier.citationenLakhai V. Y. An improved method for increasing maintainability in terms of serverless architecture application / V. Y. Lakhai, O. M. Kuzmych, M. M. Seniv // Ukrainian Journal of Information Technology. — Lviv : Lviv Politechnic Publishing House, 2023. — Vol 5. — No 1. — P. 9–16.
dc.identifier.doidoi.org/10.23939/ujit2023.01.009
dc.identifier.issn2707-1898
dc.identifier.urihttps://ena.lpnu.ua/handle/ntb/61564
dc.language.isouk
dc.publisherВидавництво Львівської політехніки
dc.publisherLviv Politechnic Publishing House
dc.relation.ispartofУкраїнський журнал інформаційних технологій, 1 (5), 2023
dc.relation.ispartofUkrainian Journal of Information Technology, 1 (5), 2023
dc.relation.references[1] ISO25010/57. (2022). Maintainability. https://iso25000.com/index.php/en/iso-25000-standards/iso-25010/57-maintainability
dc.relation.references[2] Alenezi, M., & Zarour, M. (2020). On the relationship between software complexity and security. International Journal of Software Engineering & Applications (IJSEA), 11(1), 51–60. https://doi.org/10.5121/ijsea.2020.11104
dc.relation.references[3] Abeyrathne, T. K. L., Gayal, B. A. I., Jayathilake, R. D. C. K., Weththasinghe, W. V. S. A. (2021). Increase Maintainability of a Software Product using Structuredness. University of Kelaniya. https://www.researchgate.net/publication/354363138_Increase_Maintainability_of_a_Software_Product_using_Structuredness
dc.relation.references[4] Hasselbring, W. (2018). Software Architecture: Past, Present, Future. Gruhn, V., Striemer, R. (eds.). The Essence of Software Engineering. Springer, Cham. https://doi.org/10.1007/978-3-319-73897-0_10
dc.relation.references[5] Lakhai, V., Kuzmych, O., Seniv, M. (2022). An improved approach to the development of software with increased requirements for flexibility and reliability in terms of creating small and medium-sized projects. IEEE 17th International Conference on Computer Sciences and Information Technologies (CSIT). Lviv. https://doi.org/10.1109/csit56902.2022.10000787
dc.relation.references[6] Bondyopadhyay, A., & Dr. Mandal, A. C. (2022). Improvement of Software Reliability using Data Mining Technique. International Journal of Scientific and Research Publications, 12(6), 183–187. http://dx.doi.org/10.29322/IJSRP.12.06.2022.p126XX
dc.relation.references[7] Anwer, F., Aftab, S., Waheed, U., Muhammad, S. S. (2017). Agile Software Development Models TDD, FDD, DSDM, and Crystal Methods: A Survey. International Journal of Multidisciplinary Sciences and Engineering, 246–270. https://www.researchgate.net/publication/316273992_Agile_Software_Development_Models_TDD_FDD_DSDM_and_Crystal_Methods_A_Survey
dc.relation.references[8] Landre, E., Wesenberg, H., Olmheim, J. (2007). Agile enterprise software development using domain-driven design and test first. 22nd Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2007. https://doi.org/10.1145/1297846.1297967
dc.relation.references[9] Uludag, O., Hauder, M., Kleehaus, M., Schimpfle C., Matthes, F. (2018). Supporting Large-Scale Agile Development with Domain-Driven Design. International Conference on Agile Software Development, 232–247. http://dx.doi.org/10.1007/978-3-319-91602-6_16
dc.relation.references[10] Martin, R. C. (2017). Clean Architecture: A Craftsman’s Guide To Software Structure And Design, London: Pearson [in England].
dc.relation.references[11] Radon. (2020). Code Metrics. https://radon.readthedocs.io/en/latest/intro.html
dc.relation.referencesen[1] ISO25010/57. (2022). Maintainability. https://iso25000.com/index.php/en/iso-25000-standards/iso-25010/57-maintainability
dc.relation.referencesen[2] Alenezi, M., & Zarour, M. (2020). On the relationship between software complexity and security. International Journal of Software Engineering & Applications (IJSEA), 11(1), 51–60. https://doi.org/10.5121/ijsea.2020.11104
dc.relation.referencesen[3] Abeyrathne, T. K. L., Gayal, B. A. I., Jayathilake, R. D. C. K., Weththasinghe, W. V. S. A. (2021). Increase Maintainability of a Software Product using Structuredness. University of Kelaniya. https://www.researchgate.net/publication/354363138_Increase_Maintainability_of_a_Software_Product_using_Structuredness
dc.relation.referencesen[4] Hasselbring, W. (2018). Software Architecture: Past, Present, Future. Gruhn, V., Striemer, R. (eds.). The Essence of Software Engineering. Springer, Cham. https://doi.org/10.1007/978-3-319-73897-0_10
dc.relation.referencesen[5] Lakhai, V., Kuzmych, O., Seniv, M. (2022). An improved approach to the development of software with increased requirements for flexibility and reliability in terms of creating small and medium-sized projects. IEEE 17th International Conference on Computer Sciences and Information Technologies (CSIT). Lviv. https://doi.org/10.1109/csit56902.2022.10000787
dc.relation.referencesen[6] Bondyopadhyay, A., & Dr. Mandal, A. C. (2022). Improvement of Software Reliability using Data Mining Technique. International Journal of Scientific and Research Publications, 12(6), 183–187. http://dx.doi.org/10.29322/IJSRP.12.06.2022.p126XX
dc.relation.referencesen[7] Anwer, F., Aftab, S., Waheed, U., Muhammad, S. S. (2017). Agile Software Development Models TDD, FDD, DSDM, and Crystal Methods: A Survey. International Journal of Multidisciplinary Sciences and Engineering, 246–270. https://www.researchgate.net/publication/316273992_Agile_Software_Development_Models_TDD_FDD_DSDM_and_Crystal_Methods_A_Survey
dc.relation.referencesen[8] Landre, E., Wesenberg, H., Olmheim, J. (2007). Agile enterprise software development using domain-driven design and test first. 22nd Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2007. https://doi.org/10.1145/1297846.1297967
dc.relation.referencesen[9] Uludag, O., Hauder, M., Kleehaus, M., Schimpfle C., Matthes, F. (2018). Supporting Large-Scale Agile Development with Domain-Driven Design. International Conference on Agile Software Development, 232–247. http://dx.doi.org/10.1007/978-3-319-91602-6_16
dc.relation.referencesen[10] Martin, R. C. (2017). Clean Architecture: A Craftsman’s Guide To Software Structure And Design, London: Pearson [in England].
dc.relation.referencesen[11] Radon. (2020). Code Metrics. https://radon.readthedocs.io/en/latest/intro.html
dc.relation.urihttps://iso25000.com/index.php/en/iso-25000-standards/iso-25010/57-maintainability
dc.relation.urihttps://doi.org/10.5121/ijsea.2020.11104
dc.relation.urihttps://www.researchgate.net/publication/354363138_Increase_Maintainability_of_a_Software_Product_using_Structuredness
dc.relation.urihttps://doi.org/10.1007/978-3-319-73897-0_10
dc.relation.urihttps://doi.org/10.1109/csit56902.2022.10000787
dc.relation.urihttp://dx.doi.org/10.29322/IJSRP.12.06.2022.p126XX
dc.relation.urihttps://www.researchgate.net/publication/316273992_Agile_Software_Development_Models_TDD_FDD_DSDM_and_Crystal_Methods_A_Survey
dc.relation.urihttps://doi.org/10.1145/1297846.1297967
dc.relation.urihttp://dx.doi.org/10.1007/978-3-319-91602-6_16
dc.relation.urihttps://radon.readthedocs.io/en/latest/intro.html
dc.rights.holder© Національний університет “Львівська політехніка”, 2023
dc.subjectчиста архітектура
dc.subjectінверсія залежностей
dc.subjectін’єкція залежностей
dc.subjectбезсерверність
dc.subjectclean architecture
dc.subjectdependencies inversion
dc.subjectdependency injection
dc.subjectserverless
dc.titleУдосконалений метод підвищення зручності супроводу за умов застосування безсерверної архітектури
dc.title.alternativeAn improved method for increasing maintainability in terms of serverless architecture application
dc.typeArticle

Files

Original bundle

Now showing 1 - 2 of 2
Thumbnail Image
Name:
2023v5n1_Lakhai_V_Y-An_improved_method_for_increasing_9-16.pdf
Size:
1.3 MB
Format:
Adobe Portable Document Format
Thumbnail Image
Name:
2023v5n1_Lakhai_V_Y-An_improved_method_for_increasing_9-16__COVER.png
Size:
1.81 MB
Format:
Portable Network Graphics

License bundle

Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
1.83 KB
Format:
Plain Text
Description: