An Ontology-Enabled Approach for the Detection of Software Design Smells
Software evolution and bad smells have been widely studied over past two decades, occurring at architecture, design, implementation, and requirement levels. Design smells, which result from poor software design or violations of best programming practices, often seep into the implementation stage, ca...
Saved in:
| Main Authors: | , , , , |
|---|---|
| Format: | Article |
| Language: | English |
| Published: |
IEEE
2025-01-01
|
| Series: | IEEE Access |
| Subjects: | |
| Online Access: | https://ieeexplore.ieee.org/document/11083597/ |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| Summary: | Software evolution and bad smells have been widely studied over past two decades, occurring at architecture, design, implementation, and requirement levels. Design smells, which result from poor software design or violations of best programming practices, often seep into the implementation stage, causing hindrances for writing cleaner and maintainable code. Detecting design smells at design stage significantly reduces their proliferation to implementation stage. This paper introduces an innovative Ontology based Detection of Design Smell (ODDS) approach for detecting software design smells at the design level. We analyzed 4,820 classes and 27,563 methods across various Java projects, proposing new design-level metrics and axioms tailored for identifying 10 design smells. Our approach also identified that some design smells serve as precursors to the occurrence of other design smells. Unlike existing approaches that rely on source code metrics for detecting architectural and design smells, our method emphasizes using metrics, corresponding to the specific level of granularity—architectural, design, and code. Our methodology facilitates research community by early detection during the design phase, ensures design consistency by supporting automated reasoning, and reducing propagation of design smells in to implementation phase. This highlights the importance of clear and understandable designs to facilitate refactoring and minimize design smells. The efficacy of our approach is validated through its application to open-source software projects, giving precision and recall of 0.92, 0.91 and demonstrating significant potential in enhancing the detection and management of design smells. |
|---|---|
| ISSN: | 2169-3536 |