Refactor Aplikasi Absensi Berdasarkan Clean Architecture dan Prinsip Desain SOLID - Manalu, Josua; Widhiarso, Wijang; Rachmadi, Muhammad (MDP Student Conference, 2024)
The attendance application for lecturers and employees of Multi Data University Palembang was built with Java language and based on Android. The purpose of this research is to analyze the application's compliance with Clean Architecture rules and SOLID design principles, and refactoring the application source code based on these rules and principles. Refactoring is done on seven classes that do not comply with the Single Responsibility principle. Refactoring is done by breaking functions with the same responsibility into a class, and removing unnecessary function implementations to comply with the principle of interface segregation. Four classes that did not comply with the Dependency Inversion principle were adjusted by creating dependencies on abstraction classes and using dependency injection with Hilt. The Clean Architecture concept is also applied by creating a domain layer that contains entities and use cases that contain the application's business logic. This makes the presentation layer not directly dependent on the data layer, but rather dependent on the domain layer. The application of Clean Architecture and SOLID design principles results in a smaller amount of source code and code recommendations from this research are expected to facilitate developers in maintaining applications.