The Visualization of Software Quality Metrics - A Systematic Literature Review

Researchers and practitioners have put a lot of attention in the visualization of software quality metrics. However, there is little attempt to systematically review and classify the different approaches of the quality metrics. Our objective in this study is to conduct a systematic literature review to identify the types and purposes for visualizing software quality metrics, including an analysis of existing visual attributes, interaction mechanisms and the different types of evaluations that are performed on the visualizations. We use a thematic analysis on 18 studies that met our inclusion criteria and found out that graph-based visualization is the most commonly used to visualize quality metrics such as lines of code, McCabe’s complexity and the number of methods. These metrics are mapped to the visual aspect of dimension, such as length, width, height and depth of the visual data, for instance, 3D boxes. In addition, we found out that the main purpose of employing visualization techniques is to improve the understanding of the structural characteristics of a software entity.

[1]  J. Fleiss Measuring nominal scale agreement among many raters. , 1971 .

[2]  E. Taylor-Powell,et al.  Analyzing Qualitative Data , 2003 .

[3]  Mohamed Eltoweissy,et al.  Software visualization , 2005, Innovations in Systems and Software Engineering.

[4]  Stéphane Ducasse,et al.  Characterizing the evolution of class hierarchies , 2005, Ninth European Conference on Software Maintenance and Reengineering.

[5]  Andrian Marcus,et al.  Supporting the evolution of a software visualization tool through usability studies , 2005, 13th International Workshop on Program Comprehension (IWPC'05).

[6]  Ž. Antoli An Example of Using Key Performance Indicators for Software Development Process Efficiency Evaluation , 2008 .

[7]  Harald C. Gall,et al.  Software visualization with audio supported cognitive glyphs , 2008, 2008 IEEE International Conference on Software Maintenance.

[8]  Pierre Poulin,et al.  Exploring the evolution of software quality with animated visualization , 2008, 2008 IEEE Symposium on Visual Languages and Human-Centric Computing.

[9]  Arisa Shollo,et al.  Improving presentations of software metrics indicators using visualization techniques , 2008 .

[10]  Houari Sahraoui,et al.  Understanding the use of inheritance with visual patterns , 2009, ESEM 2009.

[11]  Patricia Lago,et al.  Exploring service-oriented system engineering challenges: a systematic literature review , 2009, Service Oriented Computing and Applications.

[12]  Harald C. Gall,et al.  Smart views for analyzing problem reports: tool demo , 2009, ESEC/FSE '09.

[13]  Jean-Daniel Fekete,et al.  WikipediaViz: Conveying article quality for casual Wikipedia readers , 2010, 2010 IEEE Pacific Visualization Symposium (PacificVis).

[14]  Morgan Ericsson,et al.  A Metrics-Based Approach to Technical Documentation Quality , 2010, 2010 Seventh International Conference on the Quality of Information and Communications Technology.

[15]  Peng Liang,et al.  Improving understandability of architecture design through visualization of architectural design decision , 2010, SHARK '10.

[16]  Andreas Vogelsang,et al.  Software Metrics in Static Program Analysis , 2010, ICFEM.

[17]  Pearl Brereton,et al.  Systematic literature reviews in software engineering - A tertiary study , 2010, Inf. Softw. Technol..

[18]  Feza Buzluca,et al.  E-Quality: A graph based object oriented software quality visualization tool , 2011, 2011 6th International Workshop on Visualizing Software for Understanding and Analysis (VISSOFT).

[19]  Jürgen Döllner,et al.  Monitoring code quality and development activity by software maps , 2011, MTD '11.

[20]  Djamel Meslati,et al.  2D and 3D visualization of AspectJ programs , 2011, 2011 10th International Symposium on Programming and Systems.

[21]  Shinji Kusumoto,et al.  Improvement of a Visualization Technique for the Passage Rate of Unit Testing and Static Checking and Its Evaluation , 2011, 2011 Joint Conference of the 21st International Workshop on Software Measurement and the 6th International Conference on Software Process and Product Measurement.

[22]  Harald C. Gall,et al.  An approach for collaborative code reviews using multi-touch technology , 2012, 2012 5th International Workshop on Co-operative and Human Aspects of Software Engineering (CHASE).

[23]  Lars Heinemann,et al.  Understanding API Usage to Support Informed Decision Making in Software Maintenance , 2012, 2012 16th European Conference on Software Maintenance and Reengineering.

[24]  Ivica Crnkovic,et al.  A systematic review of software architecture evolution research , 2012, Inf. Softw. Technol..

[25]  B. Singh,et al.  A Review on Software Quality Models , 2013, 2013 International Conference on Communication Systems and Network Technologies.

[26]  Victor L. Winter,et al.  Sextant: A tool to specify and visualize software metrics for Java source-code , 2013, 2013 4th International Workshop on Emerging Trends in Software Metrics (WETSoM).

[27]  Manoel G. Mendonça,et al.  Software evolution visualization: A systematic mapping study , 2013, Inf. Softw. Technol..

[28]  Nicolas Larrieu,et al.  METRIX : a new tool to evaluate the quality of software source codes , 2013 .

[29]  Ieee Staff 2013 IEEE 7th International Workshop on Visualizing Software for Understanding and Analysis (VISSOFT) , 2013 .

[30]  Miroslaw Staron,et al.  Measuring and Visualizing Code Stability -- A Case Study at Three Companies , 2013, 2013 Joint Conference of the 23rd International Workshop on Software Measurement and the 8th International Conference on Software Process and Product Measurement.