The rapid development of mobile applications in recent years has forced developers to develop their applications quickly. Application quality must be one of the top concerns of developers since poor application design will affect the quality of the application. Performance is one of the important quality attributes that determine the quality of an application. One approach that can be used to overcome performance problems is the design pattern. However, as the research progressed, other approaches were discovered such as refactoring code smells and design principles. In this study, a detailed design analysis was carried out on the source code of the mobile application by applying design patterns, refactoring the code smells, and implementing design principles to determine their impact on the application's performance. To measure the application performance, Central Processing Unit (CPU) usage, memory usage, and frame rate metrics are used. Based on the implementation design patterns, refactoring the code smells, and applying design principles, the result found that design patterns can affect application performance depending on the design pattern used. The Strategy pattern and Visitor pattern optimize memory usage by 1%, while the Bridge pattern increases memory usage by 2%. Meanwhile, the result of refactoring the code smells can optimize CPU usage by 35% and memory usage by 2%, and design principles can optimize CPU usage by 25% and application frame rates by 5 frame per second (fps).
Read full abstract