TY - JOUR
T1 - Automated framework for classification and selection of software design patterns
AU - Hussain, Shahid
AU - Keung, Jacky
AU - Sohail, Muhammad Khalid
AU - Khan, Arif Ali
AU - Ilahi, Manzoor
PY - 2019/2
Y1 - 2019/2
N2 - Though, Unified Modeling Language (UML), Ontology, and Text categorization approaches have been used to automate the classification and selection of design pattern(s). However, there are certain issues such as time and effort for formal specification of new patterns, system context-awareness, and lack of knowledge which needs to be addressed. We propose a framework (i.e. Three-phase method) to discuss these issues, which can aid novice developers to organize and select the correct design pattern(s) for a given design problem in a systematic way. Subsequently, we propose an evaluation model to gauge the efficacy of the proposed framework via certain unsupervised learning techniques. We performed three case studies to describe the working procedure of the proposed framework in the context of three widely used design pattern catalogs and 103 design problems. We find the significant results of Fuzzy c-means and Partition Around Medoids (PAM) as compared to other unsupervised learning techniques. The promising results encourage the applicability of the proposed framework in terms of design patterns organization and selection with respect to a given design problem.
AB - Though, Unified Modeling Language (UML), Ontology, and Text categorization approaches have been used to automate the classification and selection of design pattern(s). However, there are certain issues such as time and effort for formal specification of new patterns, system context-awareness, and lack of knowledge which needs to be addressed. We propose a framework (i.e. Three-phase method) to discuss these issues, which can aid novice developers to organize and select the correct design pattern(s) for a given design problem in a systematic way. Subsequently, we propose an evaluation model to gauge the efficacy of the proposed framework via certain unsupervised learning techniques. We performed three case studies to describe the working procedure of the proposed framework in the context of three widely used design pattern catalogs and 103 design problems. We find the significant results of Fuzzy c-means and Partition Around Medoids (PAM) as compared to other unsupervised learning techniques. The promising results encourage the applicability of the proposed framework in terms of design patterns organization and selection with respect to a given design problem.
KW - Design patterns
KW - Design problems
KW - Feature selection
KW - Supervised learning
KW - Text categorization
KW - Unsupervised learning
UR - http://www.scopus.com/inward/record.url?scp=85056876429&partnerID=8YFLogxK
UR - https://www.scopus.com/record/pubmetrics.uri?eid=2-s2.0-85056876429&origin=recordpage
U2 - 10.1016/j.asoc.2018.10.049
DO - 10.1016/j.asoc.2018.10.049
M3 - RGC 21 - Publication in refereed journal
SN - 1568-4946
VL - 75
SP - 1
EP - 20
JO - Applied Soft Computing Journal
JF - Applied Soft Computing Journal
ER -