Lime: A Model to Identify Antipatterns

cityu.schoolSchool of Technology and Computing
cityu.siteSeattle
cityu.site.countryUnited States
dc.contributor.authorHerrera Lopez, Gibran
dc.date.accessioned2021-11-23T22:48:19Z
dc.date.available2021-11-23T22:48:19Z
dc.date.issued2021-09
dc.description.abstractSoftware designing is a technique that is not well-engineered as developers are still being involved with their experience and knowledge in order to create compelling solutions for complex problems. Two schools of thought were created to overcome the issue, antipatterns, and patterns. Antipatterns are an effort to avoid proven not suitable solutions to common issues, even though, their identification process also involves developer time and human error factors that may lead to accidental bugs and underperformance solutions. The lime model is a code-based tool that makes usage of ASTs (Abstract Syntax Trees) to identify syntax Python code following its features and rules, as well as the Flake8 API to create node visitors for the trees to check if an antipattern was introduced, and if so, the model provides a compelling explanation of the problem and a possible solution for the antipattern. The results of the lime model are impressive as the average time to check for three antipatterns in four open-source projects with several lines of code was 9.86 seconds with a precision of 98.35 percent. The lime model can be implemented as a static analysis tool within IDEs, and CI/CD pipelines. Also, it opens the possibility to enforce coding guidelines and grammar checking for several human languages.
dc.identifier.urihttp://hdl.handle.net/20.500.11803/1573
dc.language.isoen
dc.publisher.institutionCity University of Seattle (CityU)
dc.rightsAttribution-NonCommercial-NoDerivs 3.0 United States
dc.rightsopenAccess
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/3.0/us/
dc.subjectantipatterns
dc.subjectsoftware design
dc.subjectsoftware development
dc.subjectdesign patterns
dc.titleLime: A Model to Identify Antipatterns
dc.typeCapstone
thesis.degree.disciplineComputer Science
thesis.degree.grantorCity University of Seattle
thesis.degree.levelUndergraduate
thesis.degree.nameBachelor of Science
Files
Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
GibranHerreraLopezCapstone.pdf
Size:
81.75 KB
Format:
Adobe Portable Document Format
Description:
Gibran Herrera Lopez Capstone