Методи та засоби системи перевірки умісності окремих компонент вебсерверів

dc.contributor.affiliationНаціональний університет “Львівська політехніка”
dc.contributor.authorКрупа , Дмитро
dc.coverage.placenameЛьвів
dc.date.accessioned2025-10-29T10:22:01Z
dc.date.issued2024
dc.date.submitted2025
dc.description.abstractУ статті розглянуто сучасний стан проблем у роботі з АРІ різних систем. Проаналізовано найпоширеніші методології (Agile та DevOps), методи та засоби побудови автоматизованих конвеєрів для збірки та тестування продуктів проєкту; наведено загальний вигляд конвеєра, що слугує відправною точкою під час розроблення проєктів. У результаті аналізу опитувань розробників DevOps інженерів виділено ключові проблеми в інтеграції між різними системами з використанням АРІ. У роботі описано повний процес виконання тестів, що передбачає ініціалізацію кроку тестування, варіанти побудови конвеєра, опрацювання виключних ситуацій та збереження результатів. Наведено взаємодію різних зацікавлених сторін. Зазначені процеси проілюстровані діаграмами послідовностей, прецедентів та діяльності. Наведено псевдокод алгоритму, що описує використання нечіткого логічного виведення для отримання рекомендацій на основі тестування. Розроблено розширений контракт для тестування, який передбачає: пари запит-відповідь, обмеження сфери значень полів та предикати для забезпечення логічної сумісності компонентів. Використання цього контракту дає змогу не лише перевіряти сумісність АРІ компонент вебсерверів, але й задавати правила логічної відповідності між об’єктами. Впровадження онтологічного підходу для тестування створює додатковий рівень тестів, що перевіряють відповідність між сутностями системи-споживача та онтологією системи-постачальника. Впровадження перевірки сфери значень полів та їхніх типів під час виконання тестів дасть змогу надати розробникові на етапі тестування повноту інформації про можливі проблеми під час роботи двох систем. Оскільки онтологія повинна постійно підтримуватися експертами в галузі, то завдяки використанню розширених контрактних тестів можна буде зменшити ймовірність помилок унаслідок недостатньої комунікації через зміну концептів у бізнес-структурі системи-постачальника. Розроблений метод передбачає використання нечіткої логіки для прийняття рішень на основі нечітких оцінок сумісності двох компонент. This article examines the current state of issues in working with APIs of various systems. The most common methodologies (Agile and DevOps), methods, and tools for building automated pipelines for project assembly and testing were analyzed, and a general pipeline structure was presented, which serves as a starting point for project development. As a result of analyzing surveys of developers and DevOps engineers, key problems in integration between different systems using APIs were identified. The paper describes the complete process of executing tests, which includes the initialization of the testing step, pipeline construction options, exception handling, and result storage. The interaction of various stakeholders is presented. These processes are illustrated with sequence, use case, and activity diagrams. Pseudocode of an algorithm is provided, which describes the use of fuzzy logic inference for generating recommendations based on testing. An extended contract for contract testing was developed, which includes request-response pairs, field value range constraints, and predicates to ensure the logical compatibility of components. The use of this contract allows not only to verify the compatibility of API components of web servers but also to define rules for logical consistency between objects. The implementation of an ontological approach for testing creates an additional layer of tests that check the correspondence between the entities of the consumer system and the ontology of the provider system. The introduction of field value range and type checks during test execution will provide the developer with comprehensive information about potential issues when two systems interact. Since the ontology must be continuously maintained by domain experts, the use of extended contract tests will reduce the likelihood of errors due to insufficient communication caused by changes in the concepts within the provider system’s business structure. The developed method involves the use of fuzzy logic for decision making based on fuzzy assessments of the compatibility of two components
dc.format.pages112–120
dc.identifier.citationКрупа Д. Методи та засоби системи перевірки умісності окремих компонент вебсерверів / Дмитро Крупа // Вісник Національного університету “Львівська політехніка”. Серія: Інформаційні системи та мережі. — Львів : Видавництво Львівської політехніки, 2024. — № 16. — С. 112–120.
dc.identifier.urihttps://ena.lpnu.ua/handle/ntb/115674
dc.language.isouk
dc.publisherВидавництво Львівської політехніки
dc.relation.references1.(2024, May 29). DevOps Market Statistics – Key Figures and Trends in 2024. TechReport. https://techreport.com/statistics/software-web/devops-market-statistics-2024/ 2. (2023). State of the API Report. Postman. https://www.postman.com/state-of-api/api-global-growth/#api global-growth 3. (n.d.). How Do Agile and DevOps Interrelate? Instatus. https://instatus.com/blog/agile-devops 4. Методи та засоби системи перевірки сумісності окремих компонент вебсерверів 119 Sharma, S., Sarkar, D., Gupta, D. (2012, December). Agile Processes and Methodologies: A Conceptual Study. International Journal on Computer Science and Engineering, 4(5). 5. MAAYAN, G. D. (2023, December 15). The Future of Jenkins in 2024. DevOps.com. https://devops.com/the-future-of-jenkins-in-2024/ 6. 7. April (n.d.). Pipeline. Jenkins. https://www.jenkins.io/doc/book/pipeline/ (2024, 19). How to Make a CI-CD Pipeline in Jenkins? GeeksforGeeks. https://www.geeksforgeeks.org/how-to-make-a-ci-cd-pipeline-in-jenkins/ 8. Sotomayor, J., Allala, S., Santiago, D., King, T. (2022). Comparison of open-source runtime testing tools for microservices. Software Quality Journal, 31(1), 1–33. https://doi.org/10.1007/s11219-022-09583-4 9. Желдак Т. А., Коряшкіна Л. С. Коряшкіна. (2020). Нечіткі множини в системах управління та прийняття рішень. НТУ “Дніпровська політехніка”. 10. Cingolani, P., Alcal, J. (2013). FuzzyLogic: A Java library to design fuzzy logic controllers according to the standard for fuzzy control programming. International Journal of Computational Intelligence Systems. 11. Gillis, A. S. (2023, March). API testing. TechTarget. https://www.techtarget.com/searchapparchitecture/ definition/API-testing 12. Braakman, W. (2023, March 30). Introduction to Contract Testing. Medium. https://www.techtarget.com/ searchapparchitecture/definition/API-testing 13. (n.d.). Writing consumer tests. GitLab. https://docs.gitlab.com/ee/development/testing_guide/contract/ consumer_tests.html 14. (n.d.). Reasoner PReferences. Protégé 5 Documentation. https://protegeproject.github.io/protege/ pReferences/reasoner/ 15. World Wide Web Consortium (2017, July 20). Shapes Constraint Language (SHACL). W3C. https://www.w3.org/TR/shacl/ 16. Tartir, S., Arpinar, I. B., Moore, M., Sheth, A. P., Aleman-Meza, B. (2005). OntoQA: Metric-Based Ontology Quality Analysis. IEEE ICDM 2005 Workshop on Knowledge Acquisition from Distributed, Autonomous, Semantically Heterogeneous Data and Knowledge Sources. https://www.researchgate.net/publication/ 266795541_OntoQA_Metric-Based_Ontology_Quality_Analysis 17. Tartir, S. (2020, May 7). OntoQA. GitHub. https://github.com/Samir-Tartir/OntoQA
dc.relation.references1. (2024, May 29). DevOps Market Statistics – Key Figures and Trends in 2024. TechReport. https://techreport.com/statistics/software-web/devops-market-statistics-2024/ 2. (2023). State of the API Report. Postman. https://www.postman.com/state-of-api/api-global-growth/#api global-growth 3. 4. (n.d.). How Do Agile and DevOps Interrelate? Instatus. https://instatus.com/blog/agile-devops Sharma, S., Sarkar, D., Gupta, D. (2012). Agile Processes and Methodologies: A Conceptual Study. International Journal on Computer Science and Engineering, 4(5). 5. MAAYAN, G. D. (2023, December 15). The Future of Jenkins in 2024. DevOps.com. https://devops.com/the-future-of-jenkins-in-2024/ 6. (n.d.). Pipeline. Jenkins. https://www.jenkins.io/doc/book/pipeline/ 7. (2024, April 19). How to Make a CI-CD Pipeline in Jenkins? GeeksforGeeks. https://www.geeksforgeeks.org/how-to-make-a-ci-cd-pipeline-in-jenkins/ 8. Sotomayor, J., Allala, S., Santiago, D., King, T. (2022). Comparison of open-source runtime testing tools for microservices. Software Quality Journal, 31(1), 1–33. https://doi.org/10.1007/s11219-022-09583-4 9. Zheldak, T. A., Koryashkina, L. S. (2020). Fuzzy sets in control and decision-making systems. NTU “Dnipro Polytechnic”. 10. Cingolani, P., Alcal, J. (2013). FuzzyLogic: A Java library to design fuzzy logic controllers according to the standard for fuzzy control programming. International Journal of Computational Intelligence Systems. 11. Gillis, A. S. (2023, March). API testing. TechTarget. https://www.techtarget.com/searchapparchitecture/ definition/API-testing 12. Braakman, W. (2023, March 30). Introduction to Contract Testing. Medium. https://www.techtarget. com/searchapparchitecture/definition/API-testing 13. (n.d.). Writing consumer tests. GitLab. https://docs.gitlab.com/ee/development/testing_guide/contract/ consumer_tests.html 14. (n.d.). Reasoner PReferences. Protégé 5 Documentation. https://protegeproject.github.io/protege/ pReferences/reasoner/ 15. World Wide Web Consortium (2017, July 20). Shapes Constraint Language (SHACL). W3C. https://www.w3.org/TR/shacl/ 16. Tartir, S., Arpinar, I. B., Moore, M., Sheth, A. P., Aleman-Meza, B. (2005). OntoQA: Metric-Based Ontology Quality Analysis. IEEE ICDM 2005 Workshop on Knowledge Acquisition from Distributed, Autonomous, Semantically Heterogeneous Data and Knowledge Sources. https://www.researchgate.net/publication/ 266795541_OntoQA_Metric-Based_Ontology_Quality_Analysis 17. Tartir, S. (2020, May 7). OntoQA. GitHub. https://github.com/Samir-Tartir/OntoQA
dc.relation.urihttps://doi.org/10.23939/sisn2024.16.112
dc.subjectонтологічний підхід, автоматизоване тестування, сумісність компонента, контракте тестування, DevOps
dc.subjectontological approach, automated testing, component compatibility, contract testing, DevOps
dc.subject.udc004.05
dc.titleМетоди та засоби системи перевірки умісності окремих компонент вебсерверів
dc.title.alternativeMethods and tools for the system of compatibility checking of individual components of web-servers
dc.typeArticle

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
241164maket4-114-122_0.pdf
Size:
526.12 KB
Format:
Adobe Portable Document Format

License bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
license.txt
Size:
1.71 KB
Format:
Item-specific license agreed upon to submission
Description: