Investigating Design Patterns Impact on Application Performance and Complexity - Rochimah, Siti; Akbar, Rizky Januar; Langsari, Kholed (IPTEK, DRPM, Institut Teknologi Sepuluh Nopember, 2024)
Many studies in the literature have a premise that design patterns improve the quality of object-oriented software systems. Considerable research has been devoted to re-designing the system to improve software quality, mainly on its maintainability and reliability. Less attention has been paid to evaluating the impact of the performance efficiency quality factor. This research investigates the impact of design patterns on application performance and complexity. It is, therefore, beneficial to evaluate whether the design patterns may improve its performance and complexity or even decrease it. The research demonstrates scientific evidence in quantitative values through experimentation on a case study to present its influences. This paper uses an object-oriented enterprise project named SIA as a case study. Some issues related to design patterns are addressed. The selection of the design pattern is based on the application context issue. Three attributes related to performance efficiency are evaluated: time behavior, resource utilization, and capacity measures. The complexity is also evaluated. We use Apache JMeter and Java Mission Control as tools to support experimentation. The experiment results show that design patterns may decrease the quality of time behavior and resource utilization whilst they may increase the quality of capacity measures and complexity to a significant degree.