SMEAGOL
a static code smell detector for MongoDB
Additional information
Authors
Cherry B.,
Nagy C.,
Lanza M.,
Cleve A.
Type
Article in conference proceedings
Year
2024
Language
English
Abstract
MongoDB is one of the most popular NoSQL database engines. To foster scalability, it provides multiple features such as schema-less data storage or sharding. However, those new features introduce additional considerations for the maintainer to be careful, which might lead to erroneous implementation choices often referred to as code smells or antipatterns. Detecting and fixing those code smells can play a crucial role for developers in their maintenance efforts. We present SMEAGOL (SMEll and Antipattern detection for monGOdb appLications), a static analysis tool to detect MongoDB code smells in JavaScript applications. SMEAGOL relies on CodeQL and detects code smells by analyzing and extracting all the necessary information (e.g., data structure) from the database access code of the application. We demonstrate it by examining the evolution of MongoDB code smells in five popular open-source projects, showing promising results.
Keywords
Code smells, Static analysis, MongoDB, JavaScript
Conference proceedings
2024 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER)
Pages (or article number)
816-820
Diffusion
License
License undefined
Visibility
Public
Status open access
Green