Impact of Design Principles and Patterns on Software Flexibility: An Experimental Evaluation Using Flexible Point (FXP)
Muhammad Ehsan Rana1 & Eddy Khonica1 Show affiliations
- Asia Pacific University of Technology and Innovation, Malaysia
Journal of Computer Science, Volume 17, Issue 7, pp. 624–638 · doi.org/10.3844/jcssp.2021.624.638
Abstract
Software flexibility is a crucial factor in designing and developing software as it reflects its capability to adapt to changes. It is a topic that has been discussed for a very long time which indicates its importance in software development. However, it is not easy to produce a flexible software design. Design principles provide fundamental concepts in designing good software. On the other hand, design patterns are proven solution to recurring problem. When used correctly, design principles and patterns can be used to improve software flexibility. However, it is necessary to evaluate its impact on software flexibility. For this purpose, this research will conduct an experiment by developing a simple application using Object-Oriented Programming (OOP) based on a case study. Based on the requirements of the case study, two SOLID design principles are chosen such as Single Responsibility Principle (SRP) and Open Closed Principle (OCP) while Strategy and Decorator for the patterns from the GoF. Then, Flexible Points (FXP) is used to measure the differences in software flexibility by comparing the solutions developed before and after applying design principles and patterns. This is aimed to prove that the chosen design principles and patterns have positive impact on software flexibility. Lastly, the result analysis shows that the use of the chosen design principles and patterns indeed improve the flexibility of the software. Therefore, the authors highly recommend adopting design principles and patterns in software development.
Licence and reuse
Open access. This article is licensed under a Creative Commons Attribution 4.0 International Licence (CC BY 4.0), as printed on the article, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original authors and the source. No permission is needed.
How to reuse this articleResponses (0)
About this article
Rana, M. E. & Khonica, E. (2021). Impact of Design Principles and Patterns on Software Flexibility: An Experimental Evaluation Using Flexible Point (FXP). Journal of Computer Science, 17(7), 624–638. https://doi.org/10.3844/jcssp.2021.624.638
- Licence
- CC BY 4.0
- Issue
- Volume 17, Issue 7
- Policies
- Editorial independenceUse of generative AIData availabilityAppeals and complaints
- Version
- Version of record
