Q-Rapids framework for advanced data analysis to improve rapid software development

The quality of software, in particular developed rapidly, is quite a challenge for businesses and IT-dependent societies. Therefore, the H2020 Q-Rapids project consortium develops processes and tools to meet this challenge and improve the quality of the software to meet end-users requirements and needs. In this paper, we focus on data analytics that helps software development companies evaluate the quality of the software. In fact, most software development teams use tools such as GitLab, SonarQube or JIRA (among others) to assess the basic characteristics and metrics of the developed software. In this paper, we propose the framework that gathers basic data from the mentioned tools, and processes the data further (e.g. using Apache Kafka, Kibana and Spark) to calculate more advanced metrics, product factors, indicators, and to find correlations between them. In this paper, we present the concept, the technical details, and the initial results of the advanced data analysis methodology. Furthermore, we provide discussion on how to use the system and show the future development directions. We have already implemented the system at software development SME and managed to find interesting characteristics and correlations about the software quality. The results, based on the real data, were interesting to the company product owners and team leaders, and more importantly helped them improve the software quality development process.

[1]  Satwinder Singh,et al.  Tool for generating code metrics for C# source code using abstract syntax tree technique , 2013, SOEN.

[2]  Petr Vytovtov,et al.  Source code quality classification based on software metrics , 2017, 2017 20th Conference of Open Innovations Association (FRUCT).

[3]  Michael Felderer,et al.  Risk orientation in software testing processes of small and medium enterprises: an exploratory and comparative study , 2015, Software Quality Journal.

[4]  Elvira-Maria Arvanitou,et al.  Software metrics fluctuation: a property for assisting the metric selection process , 2016, Inf. Softw. Technol..

[5]  Jeffrey M. Voas,et al.  What Happened to Software Metrics? , 2017, Computer.

[6]  Tihana Galinac Grbac,et al.  The Stability of Threshold Values for Software Metrics in Software Defect Prediction , 2017, MEDI.

[7]  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).

[8]  Tomasz Andrysiak,et al.  Network Traffic Prediction and Anomaly Detection Based on ARFIMA Model , 2014, SOCO-CISIS-ICEUTE.

[9]  Capers Jones,et al.  The Economics of Software Quality , 2011 .

[10]  Paul C. Jorgensen,et al.  Software Testing: A Craftsman's Approach , 1995 .

[11]  Reinhold Plösch,et al.  Operationalised product quality models and assessment: The Quamoco approach , 2014, Inf. Softw. Technol..

[12]  Vittorio Rosato,et al.  Advanced services for critical infrastructures protection , 2015, Journal of Ambient Intelligence and Humanized Computing.

[13]  Barry W. Boehm,et al.  Function Point Analysis for Software Maintenance , 2016, ESEM.

[14]  Barry W. Boehm,et al.  Negative results for software effort estimation , 2016, Empirical Software Engineering.

[15]  Timo Poranen,et al.  MMT: A Tool for Observing Metrics in Software Projects , 2017, Int. J. Hum. Cap. Inf. Technol. Prof..

[16]  Christian Berger,et al.  Correlations of software code metrics: an empirical study , 2017, IWSM-Mensura.

[17]  Riccardo Rizzo,et al.  Analysis and visualization of meteorological emergencies , 2017, J. Ambient Intell. Humaniz. Comput..

[18]  Xavier Franch,et al.  Data-Driven Requirements Engineering in Agile Projects: The Q-Rapids Approach , 2017, 2017 IEEE 25th International Requirements Engineering Conference Workshops (REW).

[19]  Xavier Franch,et al.  How Can Quality Awareness Support Rapid Software Development? - A Research Preview , 2017, REFSQ.

[20]  Michal Choras,et al.  Machine learning techniques applied to detect cyber attacks on web applications , 2015, Log. J. IGPL.