MEASUREMENT AND VISUALIZATION OF CODE WRITING BY PROGRAMMERS BASED ON CODE QUALITY - Enggar Tiasto, Bagus
Software quality is one of the main challenges faced by developers in the software development process. In addition, the team is also required to always be productive during the development period. In software development management practices, providing insight is important to know how the team works in producing quality software. The SPACE framework also provides an understanding that measuring the quality of code production can be used as a good quantitative measurement in several dimensions. Code quality measurement has been widely carried out by previous researchers, most of whom only focus on the quality of the software assets themselves, while the quality of code production from the programmer's perspective is also important to measure in supporting productivity. Code production quality measurement metrics have been proposed by previous researchers by dividing the number of defective codes by the number of codes produced. The problem is that these measurements do not define in detail what characteristics of software quality are manifested in the code. Previous studies have also not categorized defective code findings based on their impact on the software. There needs to be a more specific measurement of code writing quality in the emergence of defective code, considering its possible impact on software operations. Modifications to the code writing quality measurement metrics were carried out in this study to produce a value called the bad code index. Bad code in this study focuses on bug and code smell findings categorized based on their severity. The category will be given a weight which then becomes one of the measurement variables. The value will be attached to each programmer's activity in writing code to provide insight into the performance of the development team. The design of the system by integrating the github repository, bad code detection tools, metric measurements, and visualization is also proposed in this study. The design is then implemented into a tool called the bad code index system. The bad code index in this study will have a scale of 0 to 1, by inversely multiplying the number of bad code findings per category, with the weight of each value, then divided by the number of lines of code multiplied by the highest weight value. That way the index value will always have a fixed scale. Visualization is applied to several properties, including code authors, the number of code writing activities, and also the bad code index value. Data visualization is presented in the form of a circular chart using the d3.js library which makes it easy to adjust the size and color of the circle. In detecting bad code, this study uses SonarQube as an automatic detection