Blog Detail

Covid-19 Tracker Ask Question

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 timeline. 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 the desired way but do you think this is a proper way to deliver the projects? It is Not. We should deliver the software with clean code, without code duplication, less code complexity, and without any potential bugs.

If you want to know how to install and configure SonarQube then refer to my blog SonarQube installation on Ubuntu.

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 that 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 has all these features. Now let us discuss more it.

SonarQube is a widely used tool for Continuous Code Quality. SonarQube is open-source software that 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.

If you want to know how to configure SonarQube scaner then please refer to my blog Configure SonarQube Scanner with Jenkins

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. A developer can monitor his own code at any point in time by running the sonar scanner on his code and can take the responsibility 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 projects from where we can pick any project to check its health. Under the project, we have issues that give us full power to analyze in detail what the main issues are, where they are located when they were added to your codebase 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 good health.

If you want to know how to analyze the project using SonarQube then refer to the blog Analyze your project with SonarQube.

You can refer to the following list for my previous blogs on Jenkins and SonarQube:

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.

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

Introduction to Cloud Computing

Sep 23, 2020, 2:38:00 PM | Anurag Srivastava

Monitoring website uptime using Kibana

Sep 6, 2020, 5:20:33 PM | Anurag Srivastava

Monitoring Application using Elastic APM

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

Configuring Django application with Elastic APM

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

Introduction to Elastic APM

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

Why monitoring is important?

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

Top Blogs

Configure SonarQube Scanner with Jenkins

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

Execute Commands on Remote Machines using sshpass

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

Importing MongoDB data into Elasticsearch

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

Importing MySQL data into Elasticsearch

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

Configure Jenkins for Automated Code Deployment

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

Deploying Angular code using Python script

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