Automated Query Generation for Design Pattern Mining in Source Code

07/25/2020
by   Jeffy Jahfar Poozhithara, et al.
0

Identifying which design patterns already exist in source code can help maintenance engineers gain a better understanding of the source code and determine if new requirements can be satisfied. There are current techniques for mining design patterns, but some of these techniques require tedious work of manually labeling training datasets, or manually specifying rules or queries for each pattern. To address this challenge, we introduce Model2Mine, a technique for automatically generating SPARQL queries by parsing UML diagrams, ensuring that all constraints are appropriately addressed. We discuss the underlying architecture of Model2Mine and its functionalities. Our initial results indicate that Model2Mine can automatically generate queries for the three types of design patterns (i.e., creational, behavioral, structural), with a slight performance overhead compared to manually generated queries, and accuracy that is comparable, or perform better than, existing techniques.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
12/03/2020

Feature-Based Software Design Pattern Detection

Software design patterns are standard solutions to common problems in so...
research
07/15/2020

On the Generation, Structure, and Semantics of Grammar Patterns in Source Code Identifiers

Identifiers make up a majority of the text in code. They are one of the ...
research
01/27/2019

CRAQL: A Composable Language for Querying Source Code

This paper describes the design and implementation of CRAQL (Composable ...
research
10/08/2021

Towards Learning (Dis)-Similarity of Source Code from Program Contrasts

Understanding the functional (dis)-similarity of source code is signific...
research
06/03/2019

A Language-Agnostic Model for Semantic Source Code Labeling

Code search and comprehension have become more difficult in recent years...
research
10/09/2020

A Generic Approach to Detect Design Patterns in Model Transformations Using a String-Matching Algorithm

Maintaining software artifacts is among the hardest tasks an engineer fa...
research
08/09/2021

"What makes my queries slow?": Subgroup Discovery for SQL Workload Analysis

Among daily tasks of database administrators (DBAs), the analysis of que...

Please sign up or login with your details

Forgot password? Click here to reset