Blog Detail

preview image DevOps
by Anurag Srivastava, Apr 24, 2018, 2:52:28 PM | 3 minutes

Why SonarQube is important for IT projects ?

When we work in any software project then our main focus is to achieve the ultimate goal which is to finish the functionality and deliver it to the customer in a given time-line. It is so important for us that many times we use to compromise with the code quality, potential bugs, code duplications and bad distribution of complexity not only that but also we use to left unused variables, methods etc. Our application would work in a desired way but do you think this it is a proper way to deliver the projects ? Its Not. We should deliver the software with clean code, without code duplication, less code complexity and without any potential bugs.

To achieve these qualities in code we should keep that mind and should always follow good coding practice but sometimes it is not possible to follow the rules and maintain the good quality as there may be n number of reasons. So we need a tool which not only works once to check and tell us the issues in code but also track and monitor the code to check continuous code quality in order to achieve continuous code integration and deployment. For these requirements we have a product SonarQube which have all these features. Now lets discuss more about it.

SonarQube is a widely used tool for Continuous Code Quality. SonarQube is an open source software which can be used for continuous tracking of bugs, vulnerabilities and code smells for more than 20 different programming languages like C#, Java, C, C++, PHP, .Net, JavaScript, Python etc. SonarQube provides the capability to monitor the health of the application and highlights the newly introduced issues.

We can setup SonarQube in a central server to make it visible for developers, leads, managers and QA etc so that then all can monitor the code quality to ensure smooth application deployment with quality. Developer can monitor his own code at any point of time by running the sonar scanner on his code and can take the responsible of his code. To enforce a code quality practice across different teams we can set up a Quality Gate. This core concept of SonarQube is a set of requirements that tells whether or not a new version of a project can go into production.

In SonarQube we have the project listing for multiple project from where we can pick any project to check its health. Under project we have issues which gives us full power to analyze in detail what the main issues are, where they are located, when they were added to your code base and who originally introduced them. Thanks to the Activity page we can dig into the details of the history of your project very easily and precisely to better understand what happened in the past. In this way we must have the SonarQube setup to continuously test our code and to maintain our code in a good health.

If you want to know the Jenkins and SonarQube installation process and configuration then refer to my previous blog:

Configure Jenkins for Automated Code Deployment
SonarQube installation on Ubuntu 
Install Jenkins on Ubuntu  
Configure SonarQube Scanner with Jenkins
Analyze your project with SonarQube

In case of any suggestion or query please leave a comment.

About Author

Anurag Srivastava

Author | Blogger | Tech Lead | Elastic Stack | Innovator |

View Profile

Comments (3)

  • user image
    Rocky Paul
    Apr 29, 2018, 4:17:53 PM

    Nice blog. I want to learn data science please let me know how can I start.

  • user image
    Harinath Reddy Konepalli
    Jul 17, 2018, 5:06:26 AM

    its very nice blog , please prepare material for Chef and ansible

  • user image
    Anurag Srivastava
    Aug 14, 2018, 7:00:27 PM

    Thanks Harinath. We will do that :)

Leave a comment

Related Blogs

Configuring Django application with Elastic APM

Jan 14, 2020, 10:22:34 AM | Anurag Srivastava

Monitoring Application using Elastic APM

Jan 16, 2020, 11:43:29 AM | Anurag Srivastava

MySQL Performance Tuning

Jan 31, 2018, 6:15:34 AM | Anurag Srivastava

Introduction to Logstash

Dec 20, 2019, 11:38:31 AM | Anurag Srivastava

Introduction to Elastic APM

Jan 7, 2020, 7:15:34 PM | Anurag Srivastava

Configure Logstash to send MongoDB data into Elasticsearch

Mar 9, 2019, 8:20:38 AM | Anurag Srivastava

Why monitoring is important?

Jan 6, 2020, 7:30:13 PM | Anurag Srivastava

Snapshot and Restore Elasticsearch Indices

Sep 16, 2019, 5:55:06 AM | Anurag Srivastava

Configure Logstash to push MySQL data into Elasticsearch

Feb 9, 2019, 12:06:18 PM | Anurag Srivastava

Log analysis with Elastic stack

Jan 31, 2018, 6:11:29 AM | Anurag Srivastava

Top Blogs

Configure SonarQube Scanner with Jenkins

Jun 21, 2018, 4:58:11 AM | Anurag Srivastava

Build and deploy Angular code using Python

Jun 26, 2018, 4:50:18 PM | Anurag Srivastava

Configure Jenkins for Automated Code Deployment

Jun 13, 2018, 3:44:01 PM | Anurag Srivastava

SonarQube installation on Ubuntu

May 12, 2018, 4:47:07 PM | Anurag Srivastava

Execute Commands on Remote Machines using sshpass

Jul 16, 2018, 5:00:02 PM | Anurag Srivastava

Why SonarQube is important for IT projects ?

Apr 24, 2018, 2:52:28 PM | Anurag Srivastava

Wildcard and Boolean Search in Elasticsearch

Aug 10, 2018, 7:14:40 PM | Anurag Srivastava

Elasticsearch Rest API

Jul 31, 2018, 6:16:42 PM | Anurag Srivastava

Analyze your project with SonarQube

Jun 2, 2018, 10:49:54 AM | Anurag Srivastava

Configure Logstash to send MongoDB data into Elasticsearch

Mar 9, 2019, 8:20:38 AM | Anurag Srivastava