Predicting Software Design Patterns from Text using NeuralEmbeddingWorkshop
Software design patterns are solutions to common software problems that are proven to work adequately in particular scenarios. Deciding which design pattern to use for a given software problem often requires practical knowledge acquired with experience in a similar domain and can be highly subjective and error-prone. Further, for novice programmers, an automated approach would be a tremendous help as they usually lack practical knowledge required for deciding which design pattern to use for a particular software problem. The majority of research in software design pattern prediction involves using software structure and features in determining which design pattern to implement. However, there are circumstances where software designers would prefer to know which design pattern to be used by looking at the design problem during or before the implementation phase. Existing design pattern prediction tools cannot be utilized in this scenario due to the absence of code and class structures. To address this issue, this paper proposes a new approach that analyses the context of the software problem from text and predicts a suitable design pattern for the given problem context using feature learning, neural embedding, and classification. To evaluate our approach, we make use of Stack Overflow posts, where developers often discuss design problems and consequences that they should consider, which are related to two main design pattern elements. We evaluate our approach on a case study from Stack Overflow with more than 66,000 questions that discuss problems and consequences related to 23 design patterns. The experimental evaluation shows that our approach can predict design patterns from the text with 82% overall accuracy. This indicates that our approach can successfully be used to support software designers in determining the most suitable design pattern for their software implementation.
Fri 25 SepDisplayed time zone: (UTC) Coordinated Universal Time change
08:00 - 10:35 | International Workshop on Software Engineering Automation: A Natural Language Perspective[Workshop] NLP-SEA at Kangaroo Chair(s): Sajid Anwer , Abdul Rauf RISE Research Institutes of Sweden, Mehrdad Saadatmand RISE SICS | ||
08:00 15mTalk | Boosting Component-based Synthesis with API Usage KnowledgeWorkshop [Workshop] NLP-SEA Jiaxin Liu National University of Defense Technology, Wei Dong School of Computer, National University of Defense Technology, China, Binbin Liu National University of Defense Technology | ||
08:20 15mTalk | Collective Intelligence for Smarter Neural Program SynthesisWorkshop [Workshop] NLP-SEA Daiyan Wang National University of Defense Technology, Wei Dong School of Computer, National University of Defense Technology, China, Yating Zhang National University of Defense Technology | ||
08:40 15mTalk | Predicting Software Design Patterns from Text using NeuralEmbeddingWorkshop [Workshop] NLP-SEA | ||
09:00 15mTalk | NLP-based Enhancement of Information Security in ITO Service Delivery – A Diffusion of Innovation Theory perspectiveWorkshop [Workshop] NLP-SEA Baber Majid Bhatti University of South Australia | ||
09:20 15mTalk | AutoEPRS-20: Extracting Business Process Redesign Suggestions from Natural Language TextWorkshop [Workshop] NLP-SEA Amina Mustansir PUCIT, University of the Punjab, Khurram Shahzad PUCIT, University of the Punjab, Muhammad Kamran Malik PUCIT, University of the Punjab | ||
09:40 15mTalk | Emotion Detection in Roman Urdu Text using Machine LearningWorkshop [Workshop] NLP-SEA Adil Majeed National University of Computer and Emerging Sciences, Islamabad, Pakistan, Hasan Mujtaba National University of Computer and Emerging Sciences, Islamabad, Pakistan, Mirza Omer Beg National University of Computer and Emerging Sciences, Islamabad, Pakistan | ||
10:00 15mTalk | Mapping Textual Feedback to Process Model ElementsWorkshop [Workshop] NLP-SEA Sanam Ahmed Punjab University College of Information Technology , University of the Punjab, Amina Mustansir PUCIT, University of the Punjab | ||
10:20 15mTalk | Roman Urdu Reviews Dataset for Aspect Based Opinion MiningWorkshop [Workshop] NLP-SEA Rabail Zahid National University of Computer and Emerging Sciences, Islamabad, Pakistan, Muhammad Owais Idrees National University of Computer and Emerging Sciences, Islamabad, Pakistan, Hasan Mujtaba National University of Computer and Emerging Sciences, Islamabad, Pakistan, Mirza Omer Beg National University of Computer and Emerging Sciences, Islamabad, Pakistan |