The CodeImprover Analytical Engine is connected to a GIT Code Repository. The Code Repository notifies the CodeImprover Engine every time a code change is pushed or a pull request is created. The CodeImprover Engine immediately analyses the change and gives feedback to the Developer in real-time, while ensuring that the complete and updated quality and maintainability information is available on the Web-based CodeImprover Portal in real-time.
CodeImprover is technically closely tied to the GIT version control system. This is not going to change in the foreseeable future. GIT seems increasingly to become the industry standard and the natural first choice in all but legacy and special situations.
CodeImprover apps work in GitHub on both public and private repositories.
The Metrics app supports source code in the Microsoft C# language.
The Duplication app supports source code in almost any programming language.
The CodeImprover platform analyses and collects data from the repository and extracts information regarding the codebase. This means that CodeImprover analyses and orchestrates your existing data into information. This is visualized in the CodeImpover dashboard creating transparency of the code quality for both management and developers.
To gain value from this information it must be analyzed and translated into action. This is of course a manual process that also involves many other pieces of information.
The analysis creates actionable insights that help developers to write better code and helps management prioritize tasks and optimize development teams.
Insight in data across time
The CodeImprover platform not only analyzes snapshots and single commits, but also the entire history of commits. All data is available at any point in a timeline. The benefits include the tracking of the development in quality for individual modules over time as well as the quality of the performance of teams and individuals.
Transparency for management
Management has access to data through the CodeImprover Web Portal, as does everybody who is authorized. The default Management view is a number of dynamic reports that provide valuable real-time insight into the code base and of the quality performance of the team. This aids management in making fact-based decisions, such as whether to strengthen the team or prioritize the effort differently.
Transparency for developers
Through the feedback from the Git Repository and access to the CodeImprover Web Portal, developers have insight into the performance, scores, and ranking for themselves, as well as the entire team. The developer can use this information to improve skills and deliver the level of quality that is requested.
Automatic real-time feedback
On each code change pushed to the repository, the analytical engine sends real-time feedback to the developer. This includes a code quality score, as well as actionable insights into how the quality can be improved if needed. Management can set up policies that prevent the merging of branches that contain bad quality code.
The CodeImprover Analytical Engine utilizes state of art metrics algorithms to achieve the best and most useful measures of code quality. See the Metrics Reference for technical details.
The CodeImprover Web Portal provides a set of reports with drilling facilities to provide the most comprehendible and actionable information on the code quality and maintainability. There are reports to show holistic views of the current quality level and reports that show how the quality levels develop over time.