July 29 Johannes Schmitt schmittjoh

Code Rating System Released!

As you work on software projects, you often have some areas in the project which suffer from technical debt. Maybe there was a deadline which had to be met, and a feature had to be implemented a bit more unconventionally. Often, there are multiple areas which suffer from this. So, where should you start to pay your debt down and how much is it anyway?

To address these questions, we are very excited to announce the immediate availability of our new code rating system. The new ratings - which are available for all future inspections - pinpoint the parts of your software that require your attention most. Besides, they also allow to track the progress of your project not only for developers but also for project managers easily.

Criteria and Scores

In our rating system, we rate the design of your code. Design problems manifest themselves mainly in the form of code duplication, unclearity and complexity. These three factors are measured in the form of software metrics that we collect for your code (see used tools). For example, one metric that is used to assess complexity is cyclomatic complexity.

All code elements are rated on a scale from 0 (worst) to 10 (best). Besides, we also use the following attribute classes:

Class Interval
very good [8, 10]
good [6, 8)
satisfactory [4, 6)
pass [2, 4)
critical [0, 2)

Tangible Assessment, your Quality Score

In addition to the individual ratings of code elements (like methods), we also compute a weighted average for your entire project, the Quality Score.

This average is a good assessment of the overall quality of your project and its technical debt. On one hand this is interesting for yourself, as it allows you to track overall progress. On the other hand, it is also very interesting for developers who think about adopting your library/framework and helps them to make a more informed decision.

If you would like to share your quality score, we also provide a new shiny badge for you: badge

Finding Problem Areas

We also added a new code structure view page, which gives you a quick overview over the problematic areas of your project.

Code Structure Overview

While we only show the areas at this point, in future versions we will add more detailed views and suggestions how to fix them.

We hope that these new features enable the community to write even better software; something that we all will benefit from. Help us spread the word.

That’s it so far. Enjoy and tweet us your quality score! :)

 

Have Feedback? Tweet to @scrutinizerci

If you experienced a bug or have any questions, please send them to [email protected].