An Ontology-Based Approach to Reduce the Negative Impact of Code Smells in Software Development Projects

被引:0
作者
Castellano, Ivian L. [1 ]
Aguilar, Gilberto Fernando Castro [2 ,3 ]
Silega, Nemury [4 ]
Kamal, Tahir [5 ]
Al-Gaashani, Mehdhar S. A. M. [6 ]
Samee, Nagwan Abdel [7 ]
Alabdulhafith, Maali [7 ]
机构
[1] Int Univ Andalusia, Oficina Estudios Posgrad, Seville 41092, Spain
[2] Univ Catol Santiago Guayaquil, Fac Ingn, Guayaquil 090109, Ecuador
[3] Univ Guayaquil, Fac Ciencias Matemat & Fis, Guayaquil 090511, Ecuador
[4] Southern Fed Univ, Dept Syst Anal & Telecommun, Taganrog 347900, Russia
[5] Zhejiang Normal Univ, Coll Comp Sci & Technol, Jinhua 321017, Zhejiang, Peoples R China
[6] Chongqing Univ Posts & Telecommun, Coll Comp Sci & Technol, Chongqing 400065, Peoples R China
[7] Princess Nourah Bint Abdulrahman Univ, Coll Comp & Informat Sci, Dept Informat Technol, Riyadh 11671, Saudi Arabia
来源
IEEE ACCESS | 2023年 / 11卷
关键词
Code smells; knowledge representation; ontology; reasoning; software quality;
D O I
10.1109/ACCESS.2023.3300575
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
The quality of software systems may be seriously impacted by specific types of source code anomalies. For example, poor programming practices result in Code Smells (CSs), which are a specific type of source code anomalies. They lead to architectural problems that consequently impact some significant software quality attributes, such as maintainability, portability, and reuse. To reduce the risk of introducing CSs and alleviate their consequences, the knowledge and skills of developers and architects is essential. On the other hand, ontologies, which are an artificial intelligence technique, have been used as a solution to deal with different software engineering challenges. Hence, the aim of this paper is to describe an ontological approach to representing and analyzing code smells. Since ontologies are a formal language based on description logics, this approach may contribute to formally analyzing the information about code smells, for example, to detect inconsistencies or infer new knowledge with the support of a reasoner. In addition, this proposal may support the training of software developers by providing the most relevant information on code smells. This ontology can also be a means of representing the knowledge on CSs from different sources (documents in natural language, relational databases, HTML documents, etc.). Therefore, it could be a valuable knowledge base to support the struggle of software developers and architects either to avoid CSs or to detect and remove them. The ontology was developed following a sound methodology. The well-known tool Protege was used to manage the ontology and it was validated by using different techniques. An experiment was conducted to demonstrate the applicability of the ontology and evaluate its impact on speeding up the analysis of CSs.
引用
收藏
页码:100146 / 100153
页数:8
相关论文
共 30 条
[1]  
Alkharabsheh K., 2016, Jornadas de Ingenieria del Software Y Bases de Datos, P143
[2]  
Alkharabsheh K., 2016, Jornadas de Ingenieria del Software Y Bases de Datos, P159
[3]  
April A., 2012, Software maintenance management: evaluation and continuous improvement, V67
[4]  
Bastias O. A., 2018, REV CUB CIENC INFORM, P156
[5]  
Beniaminov EM, 2018, AUTOM DOC MATH LINGU, V52, P117, DOI 10.3103/S0005105518030020
[6]  
Benjumea J. D. S., 2013, THESIS U MEDELLIN ME
[7]  
Breis J. T. F., 2003, THESIS U INGENIERIA
[8]   An Ontology-based Approach to Analyzing the Occurrence of Code Smells in Software [J].
da Silva Carvalho, Luis Paulo ;
Novais, Renato ;
Salvador, Lais do Nascimento ;
de Mendonca Neto, Manoel Gomes .
ICEIS: PROCEEDINGS OF THE 19TH INTERNATIONAL CONFERENCE ON ENTERPRISE INFORMATION SYSTEMS - VOL 2, 2017, :155-165
[9]  
DAML, 2004, DAML ONT LIB
[10]  
DBpedia, 2019, DM CONTR