Impact of Design Patterns on Software Complexity and Size

Many different factors influence the quality of software. Among the most important of these factors is software complexity. One way to improve software quality, therefore, is to minimize its complexity making it more understandable and maintainable. The design phase of the software development life...

Full description

Bibliographic Details
Main Authors: Nosheen Qamar, Ali Afzal Malik
Format: Article
Language:English
Published: Mehran University of Engineering and Technology 2020-04-01
Series:Mehran University Research Journal of Engineering and Technology
Online Access:https://publications.muet.edu.pk/index.php/muetrj/article/view/1591
id doaj-a4555bd1dbac445ca13360fbbb2a8420
record_format Article
spelling doaj-a4555bd1dbac445ca13360fbbb2a84202020-11-25T02:13:23ZengMehran University of Engineering and TechnologyMehran University Research Journal of Engineering and Technology0254-78212413-72192020-04-0139234235210.22581/muet1982.2002.101591Impact of Design Patterns on Software Complexity and SizeNosheen Qamar0Ali Afzal Malik1Department of Computer Science and Information Technology, University of Lahore, Lahore, Pakistan.Department of Computer Science, National University of Computer and Emerging Sciences, Lahore, Pakistan.Many different factors influence the quality of software. Among the most important of these factors is software complexity. One way to improve software quality, therefore, is to minimize its complexity making it more understandable and maintainable. The design phase of the software development life cycle plays an instrumental role in fostering quality in software. Seasoned designers often use past design best practices codified in the form of design patterns to make their designs and the resultant code more elegant, robust, and resilient to change. Little work, however, has been done to empirically assess the quantitative impact of design patterns on software complexity. This research is an attempt to fill this gap. A comparative analysis of before and after versions of program pairs written without and with design patterns was performed for all twentythree GoF (Gang of Four) design patterns. These program pairs were collected (or, in some cases, developed) and compared with respect to their complexity and size. The results of this comparative analysis reveal that the cyclomatic complexity of the programs written using design patterns was less for most of the design patterns as compared to the programs written without using design patterns. However, the values of CK metrics, number of classes, and software size SLOC (Source Lines of Code) increased when design patterns were used.https://publications.muet.edu.pk/index.php/muetrj/article/view/1591
collection DOAJ
language English
format Article
sources DOAJ
author Nosheen Qamar
Ali Afzal Malik
spellingShingle Nosheen Qamar
Ali Afzal Malik
Impact of Design Patterns on Software Complexity and Size
Mehran University Research Journal of Engineering and Technology
author_facet Nosheen Qamar
Ali Afzal Malik
author_sort Nosheen Qamar
title Impact of Design Patterns on Software Complexity and Size
title_short Impact of Design Patterns on Software Complexity and Size
title_full Impact of Design Patterns on Software Complexity and Size
title_fullStr Impact of Design Patterns on Software Complexity and Size
title_full_unstemmed Impact of Design Patterns on Software Complexity and Size
title_sort impact of design patterns on software complexity and size
publisher Mehran University of Engineering and Technology
series Mehran University Research Journal of Engineering and Technology
issn 0254-7821
2413-7219
publishDate 2020-04-01
description Many different factors influence the quality of software. Among the most important of these factors is software complexity. One way to improve software quality, therefore, is to minimize its complexity making it more understandable and maintainable. The design phase of the software development life cycle plays an instrumental role in fostering quality in software. Seasoned designers often use past design best practices codified in the form of design patterns to make their designs and the resultant code more elegant, robust, and resilient to change. Little work, however, has been done to empirically assess the quantitative impact of design patterns on software complexity. This research is an attempt to fill this gap. A comparative analysis of before and after versions of program pairs written without and with design patterns was performed for all twentythree GoF (Gang of Four) design patterns. These program pairs were collected (or, in some cases, developed) and compared with respect to their complexity and size. The results of this comparative analysis reveal that the cyclomatic complexity of the programs written using design patterns was less for most of the design patterns as compared to the programs written without using design patterns. However, the values of CK metrics, number of classes, and software size SLOC (Source Lines of Code) increased when design patterns were used.
url https://publications.muet.edu.pk/index.php/muetrj/article/view/1591
work_keys_str_mv AT nosheenqamar impactofdesignpatternsonsoftwarecomplexityandsize
AT aliafzalmalik impactofdesignpatternsonsoftwarecomplexityandsize
_version_ 1724905623729995776