CodeLabeller: A Web-based Code Annotation Tool for Java Design Patterns and Summaries

06/14/2021
by   Norman Chen, et al.
0

The appropriate use of design patterns in code is a vital measurement of good software quality in object-oriented software applications. There exist tools to detect design pattern usage in Java source files, where their detection mechanisms have been honed through the use of supervised machine learning techniques that require large datasets of labelled files. However, manually labelling these files leads to issues such as tediousness if the team of labellers is small, and conflicting opinions between labellers, if large. Thus, we present CodeLabeller, a web-based tool which aims to provide a more efficient approach in handling the process of labelling Java source files at scale by improving the data collection process throughout, and improving the degree of reliability of responses by requiring each labeller to attach a confidence rating to each of their responses. We test CodeLabeller by constructing a corpus of over a thousand source files obtained from a large collection of open-source Java projects, and labelling each Java source file with their respective design patterns (if any), and summaries. This paper discusses the motivation behind thecreation of CodeLabeller, a demonstration of the tool and its UI, its implementation, benefits and lastly, some ideas for future improvements. A demo version of CodeLabeller can be found at: https://codelabeller.org.

READ FULL TEXT
research
04/12/2018

The Java Build Framework: Large Scale Compilation

Large repositories of source code for research tend to limit their utili...
research
10/11/2019

Design Smell Analysis for Developing and Established Open Source Java Software

Software design smells are design attributes which violate the fundament...
research
03/11/2020

On Tracking Java Methods with Git Mechanisms

Method-level historical information is useful in research on mining soft...
research
07/09/2021

On the Nature of Code Cloning in Open-Source Java Projects

Code cloning plays a very important role in open-source software enginee...
research
04/25/2023

Automatic Extraction of Security-Rich Dataflow Diagrams for Microservice Applications written in Java

Dataflow diagrams (DFDs) are a valuable asset for securing applications,...
research
01/15/2020

Integrating the Common Variability Language with Multilanguage Annotations for Web Engineering

Web applications development involves managing a high diversity of files...
research
11/16/2017

Fast ordered sampling of DNA sequence variants

Explosive growth in the amount of genomic data is matched by increasing ...

Please sign up or login with your details

Forgot password? Click here to reset