Methods and Tools for Refactoring Ontologies

Authors

DOI:

https://doi.org/10.15802/stp2026/356061

Keywords:

information technology, ontology, refactoring, knowledge bases, refactoring methods, quality metrics, software, schema transformation, refactoring quality

Abstract

Purpose. This work is aimed at investigating the evolution of the refactoring concept – from a tool for optimizing program code to a powerful means of improving data structures, algorithms, and business processes. The main purpose of the study is to examine the historical development of software and ontology refactoring, as well as the possibilities of applying improvement methods to ontologies as a specific type of software structure that plays a key role in knowledge-oriented systems, the Semantic Web, and next-generation cyber-physical systems. Methodology. The methodological basis of the study consists of general scientific and specialized methods of analysis and synthesis. A systematic review of scientific publications in the fields of software refactoring and ontology engineering was conducted using full-text and abstract scientometric databases. Comparative analysis methods were applied to compare different refactoring approaches, structural and functional analysis was used to study changes in software and ontology models, and classification methods were employed to group existing refactoring techniques by level of abstraction and application domain. Finding. Within the scope of the study, a comprehensive analysis of scientific publications devoted to refactoring and ontology engineering was performed using full-text and abstract databases. The evolution of refactoring approaches was examined, including data schema transformations, conceptual refactoring, modification of integrity constraints, and the development of tools for assessing the quality of changes. Particular attention was paid to the application of refactoring to ontologies, including an analysis of its impact on modularity, coherence, and knowledge reuse. Originality. The scientific novelty of the work lies in the systematic study of existing refactoring methods and their classification by type. A comprehensive analysis of the strengths and weaknesses of each approach was carried out, enabling a well-founded selection of optimal strategies for software improvement. The proposed approach contributes to a deeper understanding of refactoring mechanisms in the context of various application domains. Practical value. The presented results can be used in the design, maintenance, and evolution of knowledge-oriented systems, where structural consistency and semantic support play an important role. Prospects for further research are outlined, including the automation of ontology refactoring processes using machine learning methods, the expansion of evaluation metric systems, and the adaptation of the proposed solutions to application domains characterized by a high degree of change dynamics.

References

Ambler, S. (2002). Agile modeling: effective practices for extreme programming and the unified process. New York: John Wiley & Sons. (in English)

Ambler, S. (2003). Agile database techniques: effective strategies for the agile software developer. Hoboken: Wiley. (in English)

Ambler, S. W., & Sadalage, P. J. (2006). Refactoring databases: Evolutionary database design. Boston : Addison Wesley Professional. (in English)

Assenova, P., & Johannesson, P. (1996). Improving quality in conceptual modelling by the use of schema trans-formations. Conceptual modeling – ER’96 : 15th international conference on conceptual modeling. (рр. 277-291). Berlin: Springer. DOI: https://doi.org/10.1007/BFb0019929 (in English)

Astels, D. (2002). Refactoring with UML. In Proceedings of the 3rd International Conference on eXtreme Pro-gramming and Flexible Processes in Software Engineering (XP2002) (pp. 67-70). Alghero, Sardinia, Italy. (in English)

Batini, C., Ceri, S., & Navathe, S. B. (1992). Conceptual database design: an entity-relationship approach. Redwood City: Benjamin/Cummings. (in English)

Beck, K. (1999). Extreme programming explained. Boston: Addison-Wesley. (in English)

Bergstein, P. L. (1991). Object-preserving class transformations. In Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA ’91) (pp. 299-313). New York, NY: ACM Press. DOI: https://doi.org/10.1145/117954.117977 (in English)

Bottoni, P., Parisi-Presicce, F., & Taentzer, G. (2003). Coordinated Distributed Diagram Transformation for Software Evolution. Electronic Notes in Theoretical Computer Science, 72(4), 59-70. DOI: https://doi.org/10.1016/s1571-0661(04)80626-1 (in English)

Du Bois, B. (2004). Opportunities and challenges in deriving metric impacts from refactoring postconditions. Proceedings of WOOR’04. (in English)

Du Bois, B., Demeyer, S., & Verelst, J. (2004). Refactoring – improving coupling and cohesion of existing code. In Proceedings of the 11th Working Conference on Reverse Engineering (WCRE 2004) (pp. 144-151). IEEE. DOI: https://doi.org/10.1109/wcre.2004.33 (in English)

Casais, E. (1989). Reorganizing an object system. Object-oriented development. (рр. 161-189). Genève: Centre universitaire d’informatique (in English)

Chung, L., Nixon, B. A., Yu, E., & Mylopoulos, J. (2000). Non-functional requirements in software engineering: monograph. Boston: Kluwer Academic Publishers. (in English)

Conesa Caralt, J. (2004). Ontology-driven information systems: Pruning and refactoring of ontologies. In Doc-toral Symposium of the 7th International Conference on the Unified Modeling Language (UML 2004), Lisbon, Portugal. (in English)

Conesa Caralt, J. (2008). Pruning and refactoring ontologies in the development of conceptual schemas of in-formation systems (Doctoral dissertation). Technical University of Catalonia, Barcelona, Spain. (in English)

Correa, A., & Werner, C. (2004). Applying refactoring techniques to UML/OCL models. In Proceedings of the International Conference on the Unified Modeling Language (UML 2004) Lecture Notes in Computer Science. (Vol. 3273, pp. 173-187). Springer, Berlin, Heidelberg. DOI: https://doi.org/10.1007/978-3-540-30187-5_13 (in English)

Critchlow, M., Dodd, K., Chou, J., & van der Hoek, A. (2003). Refactoring product line architectures. In Pro-ceedings of the Workshop on Refactoring: Achievements, Challenges, Effects (REFACE’03) (pp. 23-26). (in English)

Ding, L., Finin, T., Joshi, A., Pan, R., Cost, R. S., Peng, Y., Reddivari, P., Doshi, V., & Sachs, J. (2004, November). Swoogle: A search and metadata engine for the semantic web. In Proceedings of the 13th ACM Confer-ence on Information and Knowledge Management (CIKM ’04) (pp. 652-659). Washington, USA. DOI: https://doi.org/10.1145/1031171.1031289 (in English)

Eckhardt, J., Vogelsang, A., & Méndez Fernández, D. (2016). Are “non-functional” requirements really non-functional? An investigation of non-functional requirements in practice. In Proceedings of the 38th Inter-national Conference on Software Engineering (ICSE) (рр. 832-842). New York, USA. DOI: https://doi.org/10.1145/2884781.2884788 (in English)

Eick, S. G., Steffen, J. L., & Sumner, E. E. (1992). SeeSoft – A tool for visualizing line-oriented software statistics. IEEE Transactions on Software Engineering, 18(11), 957-968. DOI: https://doi.org/10.1109/32.177365 (in English)

Ernst, M. D., Cockrell, J., Griswold, W. G., & Notkin, D. (2001). Dynamically discovering likely program invariants to support program evolution. IEEE Transactions on Software Engineering, 27(2), 99-123. DOI: https://doi.org/10.1109/32.908957 (in English)

Fowler, M., Beck, K., Brant, J., Opdyke, W., & Roberts, D. (1999). Refactoring: Improving the design of existing code. Boston: Addison-Wesley. (in English)

Gamma, E., Helm, R., Johnson, R., & Vlissides, J. (1995). Design patterns: elements of reusable object-oriented software. Boston: Addison-Wesley. (in English)

Griswold, W. G., & Notkin, D. (1993). Automated assistance for program restructuring. ACM transactions on software engineering and methodology, 2(3), 228-269. DOI: https://doi.org/10.1145/152388.152389 (in English)

Halpin, T. (2001). Information modeling and relational databases: from conceptual analysis to logical design. San Francisco: Morgan Kaufmann. (in English)

Halpin, T. A., & Proper, H. A. (1995, December). Database schema transformation and optimization. In Proceedings of the 14th International Conference on Object-Oriented and Entity-Relationship Modeling (OOER’95) (pp. 191-203). Gold Coast, Australia. (in English)

Kataoka, Y., Ernst, M. D., Griswold, W. G., & Notkin, D. (2001, November). Automated support for program refactoring using invariants. In Proceedings of the IEEE International Conference on Software Maintenance (ICSM 2001) (pp. 736-743). Florence, Italy. DOI: https://doi.org/10.1109/icsm.2001.972794 (in English)

Mens, K., & Tourwé, T. (2005). Delving source code with formal concept analysis. Computer Languages, Systems & Structures, 31(3-4), 183-197. DOI: https://doi.org/10.1016/j.cl.2004.11.004 (in English)

Murphy-Hill, E., Parnin, C., & Black, A. P. (2012). How we refactor, and how we know it. IEEE transactions on software engineering, 38(1), 5-18. DOI: https://doi.org/10.1109/tse.2011.41 (in English)

Opdyke, W. F. (1992). Refactoring object-oriented frameworks (Doctoral dissertation). Urbana-Champaign: University of Illinois at Urbana-Champaign (in English)

Roberts, D., Brant, J., & Johnson, R. (1997). A refactoring tool for Smalltalk. Theory and practice of object sys-tems, 3(4), 253-263. (in English)

Shynkarenko, V., & Zhuchyi, L. (2021, April). Ontological harmonization of railway transport information systems. In Proceedings of the 5th International Conference on Computational Linguistics and Intelligent Systems (COLINS-2021) (Vol. 2870, pp. 541-554). Kharkiv, Ukraine. (in English)

Shynkarenko, V., & Zhuchyi, L. (2022, May). Semantic Checking of Different Type Information Sources About Permitted Speeds in Railway Transport. CEUR Workshop Proceedings. 6th International Conference on Computational Linguistics and Intelligent Systems (COLINS 2022) (Vol. 3171, pp. 711-723). Gliwice, Poland. (in English)

Shynkarenko, V., Zhuchyi, L., & Ivanov, O. (2021, September). Conceptualization of the tabular representation of knowledge. In 2021 IEEE 16th International Conference on Computer Sciences and Information Technologies (CSIT) (рр. 248-251). Lviv, Ukraine. DOI: https://doi.org/10.1109/csit52700.2021.9648761 (in English)

Shynkarenko, V., Zhuchyi, L., & Ivanov, O. (2022). Ontology-based semantic checking of data in railway infra-structure information systems. Foundations of computing and decision sciences, 47(3), 291-319. DOI: https://doi.org/10.2478/fcds-2022-0016 (in English)

Simon, F., Steinbrückner, F., & Lewerentz, C. (2001, March). Metrics based refactoring. In Proceedings of the 5th European Conference on Software Maintenance and Reengineering (CSMR 2001) (рр. 30-38). Lisbon, Portugal. DOI: https://doi.org/10.1109/.2001.914965 (in English)

Van Eetvelde, N., & Janssens, D. (2004). A hierarchical program representation for refactoring. Electronic notes in theoretical computer science, 82(7), 91-104. DOI: https://doi.org/10.1016/s1571-0661(04)80749-7 (in English)

Van Gorp, P., Stenten, H., Mens, T., & Demeyer, S. (2003). Towards automating source-consistent UML refac-toring. «UML» 2003 – The Unified Modeling Language. Modeling Languages and Applications. Lecture Notes in Computer Science, 2863, 144-158. https://doi.org/10.1007/978-3-540-45221-8_15 (in English)

Published

2026-03-27

How to Cite

Karpovskyi, D. O. (2026). Methods and Tools for Refactoring Ontologies. Science and Transport Progress, (1(113), 105–118. https://doi.org/10.15802/stp2026/356061

Issue

Section

INFORMATION AND COMMUNICATION TECHNOLOGIES AND MATHEMATICAL MODELING