IJISA Vol. 6, No. 10, 8 Sep. 2014
Cover page and Table of Contents: PDF (size: 304KB)
Full Text (PDF, 304KB), PP.41-46
Views: 0 Downloads: 0
Design Patterns, Software Maintainability, Metrics, Pattern Size, Tool
This paper mainly studies the effect of design patterns on the Software maintainability. Design patterns describe solutions for common design problems and they were introduced to improve software quality and accelerate software development. However, there are some difficulties to choose an optimal pattern adapted to a certain application and problem. So until now the results on the effect of design patterns on software quality are controversial. In this context, we propose a tool for design pattern guided that retrieves the appropriate pattern with respect to software maintainability from a repository of patterns. It measures the maintainability of design pattern by some metrics and candidate the more maintainable pattern to the designer or developer. It provides a support for decision making during system design and refactoring. As the results, the decision of applying a certain design pattern is usually a trade-off since the effect of design pattern on software maintainability is influenced by some factors such as the pattern size and the prior expertise of the developer.
Fatimah Mohammed Alghamdi, M. Rizwan Jameel Qureshi, "Impact of Design Patterns on Software Maintainability", International Journal of Intelligent Systems and Applications(IJISA), vol.6, no.10, pp.41-46, 2014. DOI:10.5815/ijisa.2014.10.06
[1]C. Zhang and D. Budgen, "What Do We Know about the Effectiveness of Software Design Patterns?," IEEE Transactions on Software Engineering, vol. 38, no. 5, Sep./Oct. 2012, pp. 1213- 1231.
[2]E. Gamma, R. Helms, R. Johnson, J. Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley Professional, Reading, MA, 1995.
[3]B. Nadia, A. Kouas and H. Ben-Abdallah, "A design pattern recommendation approach", CORD Conference Proceedings, pp. 590- 593, 2011.
[4]A. Ampatzoglou, G. Frantzeskou and I. Stamelos, "A methodology to assess the impact of design patterns on software quality," Information and Software Technology, Elsevier, vol. 54, no. 4, April 2012, pp. 331–346.
[5]L. Prechelt, B. Unger, W.F. Tichy, P. Brossler and L.G. Votta , "A controlled experiment in maintenance: comparing design patterns to simpler solutions," IEEE Transactions on Software Engineering, vol. 27, no. 12, Dec. 2001, pp. 1134-1144.
[6]L. Prechelt and M. Liesenberg, "Design Patterns in Software Maintenance: An Experiment Replication at Freie University at Berlin," Second International Workshop on Replication in Empirical Software Engineering Research (RESER), Sept. 2011 pp.1-6, 21. DOI 10.1109/ RESER.2011.12
[7]N. Juristo, S. Vegas, "Design Patterns in Software Maintenance: An Experiment Replication at UPM - Experiences with the RESER'11 Joint Replication Project," Second International Workshop on Replication in Empirical Software Engineering Research (RESER), Sept. 2011, pp.7-14, 21. DOI 10.1109/RESER.2011.8
[8]A. Nanthaamornphong and J. C. Carver, "Design Patterns in Software Maintenance: An Experiment Replication at University of Alabama," Second International Workshop on Replication in Empirical Software Engineering Research (RESER), Sept. 2011, pp.15-24, 21-21. DOI 10.1109/RESER.2011.11
[9]J.L. Krein, L. J. Pratt, A.B. Swenson, A.C. MacLean, C. D. Knutson, and D.L. Eggett , "Design Patterns in Software Maintenance: An Experiment Replication at Brigham Young University," Second International Workshop on Replication in Empirical Software Engineering Research (RESER), Sept. 2011, pp.25-34, 21-21. DOI 10.1109/ RESER.2011.10
[10]P. Hegedűs, B. Dénes, F. Rudolf and G. Tibor, "Myth or Reality? Analyzing the Effect of Design Patterns on Software Maintainability."Computer Applications for Software Engineering, Disaster Recovery, and Business Continuity , 2012, pp. 138-145
[11]M. Ali and M.O. Elish, "A Comparative Literature Survey of Design Patterns Impact on Software Quality," Information Science and Applications (ICISA), 2013 International Conference on , vol., no., pp.1,7, 24-26 June 2013. doi: 10.1109/ICISA.2013.6579460.
[12]N.L. Hsueh, L.C. Wen, D.H. Ting, W. Chu, C.H. Chang, and C.S. Koong, "An Approach for Evaluating the Effectiveness of Design Patterns in Software Evolution," In: IEEE 35th Annual Computer Software and Applications Conference Workshops (COMPSACW), July 2011, pp. 315–320. DOI 10.1109/COMPSACW.2011.59.
[13]T.H. Ng, S.C. Cheung, W.K. Chan, Y.T. Yu, Do maintainers utilize deployed design patterns effectively?, IEEE Proceedings of the 29th International Conference on Software Engineering, IEEE Computer Society, 20–26 May 2007, Washington, USA, pp.168-177.
[14]A. Van Koten, A.R. Gray, An application of bayesian network for predicting object-oriented software maintainability, Information and Software Technology, Jan. 2006, pp. 59–67.
[15]U. Zdun, P. Alexiou, C. Hentrich, S. Dustdar, Architecting as decision making with patterns and primitives, Proceedings of the 3rd International Workshop on Sharing and Reusing Architectural Knowledge (ICSE’08), IEEE, Leipzig, Germany, 10–18 May 2008, pp. 11–18.
[16]B. Henderson-Sellers, L. Constantine, I. Graham, Coupling, cohesion: towards a valid metrics suite for object-oriented analysis and design, Object-Oriented Systems, Mar. 2002, pp. 143–158.
[17]M. Lorenz, J. Kidd, Object-Oriented Software Metrics, Prentice Hall, New Jersey, USA, 2004.