A Methodology to Automate the Selection of Design Patterns

Research output: Chapters, Conference Papers, Creative and Literary Works (RGC: 12, 32, 41, 45)32_Refereed conference paper (with ISBN/ISSN)

8 Scopus Citations
View graph of relations

Related Research Unit(s)

Detail(s)

Original languageEnglish
Title of host publicationProceedings : 2016 IEEE 40th Annual Computer Software and Applications Conference Workshops
EditorsSorel Reisman, Sheikh Iqbal Ahamed, Ling Liu, Dejan Milojicic, William Claycomb, Mihhail Matskin, Hiroyuki Sato, Motonori Nakamura, Stevlio Cimato, Chung Horng Lung, Zhiyong Zhang
PublisherIEEE Computer Society
Pages161-166
Volume2
ISBN (Print)978-1-4673-8845-0
Publication statusPublished - Jun 2016

Publication series

Name
ISSN (Print)0730-3157

Conference

TitleCOMPSAC 2016: The 40th IEEE Computer Society International Conference on Computers, Software & Applications
LocationSheraton Atlanta Hotel
PlaceUnited States
CityAtlanta
Period10 - 14 June 2016

Abstract

Background: Over the last two decades, numerous software design patterns have been introduced and cataloged on the basis of developer's interest and skills. Motivation: In software design phase, inexperienced designers are mostly concerned on how to select an appropriate design pattern from the catalog of relevant patterns in order to solve a design problem. The existing automated design pattern selection methodologies are limited to the need of formal specification of design patterns or an appropriate sample size to make the learning process more effective. Method: To address this concern, we propose a three step methodology to automate the selection process of design pattern for a design problem. The steps of the methodology are text preprocessing, use of an unsupervised learning technique (that is Fuzzy c-Mean) as a core function to quantitatively determine the resemblance of different objects and selection of most appropriate pattern for a design problem. We evaluate our methodology with two samples that is Gang-of-Four (GoF) design pattern and spoiled pattern collection, and three object-oriented related design problems. Moreover, we used Fuzzy Silhouette test, Kappa (k) test, Cosine Similarity and argmax function to measure the effectiveness of our methodology. Results: In case of GoF pattern collection, we validated the reliability of Fuzzy c-Mean (FCM) results using a classification decision tree, and observed promising results compared to other automation techniques. Conclusion: From the comparison results, we observed 11%, 4% and 18% improvement in the performance of proposed technique as compared to supervised learning techniques of Support Vector Machine, Naïve Bayes and C4.5 respectively.

Research Area(s)

  • Software Design Pattern, Gang-of-Four, Text Mining, Fuzzy c-means, Decision Tree, Classification, Selection

Citation Format(s)

A Methodology to Automate the Selection of Design Patterns. / Hussain, Shahid; Keung, Jacky; Khan, Arif Ali; Bennin, Kwabena Ebo.

Proceedings : 2016 IEEE 40th Annual Computer Software and Applications Conference Workshops. ed. / Sorel Reisman; Sheikh Iqbal Ahamed; Ling Liu; Dejan Milojicic; William Claycomb; Mihhail Matskin; Hiroyuki Sato; Motonori Nakamura; Stevlio Cimato; Chung Horng Lung; Zhiyong Zhang. Vol. 2 IEEE Computer Society, 2016. p. 161-166.

Research output: Chapters, Conference Papers, Creative and Literary Works (RGC: 12, 32, 41, 45)32_Refereed conference paper (with ISBN/ISSN)