How the detection technology works

Duplicate code blocks + Diff analysis = Sider Scan

Sider Scan uses a proprietary algorithm developed in-house to find duplicate code with maximum speed. It then uses its comparison engine to quickly determine the quality of duplicates. The following is the general process of analysis.

1. Group the duplicates

Sider finds duplicate blocks of code in your project and groups them.

2. Pattern analysis per group

Sider Scan performs two methods of analysis.

(a) Pattern-based analysis

For each pair of duplicates, a diff library is created and pattern analyses are initiated to determine if there are any problems. This is referred to as the 'Pattern' method of analysis.

(b) Action-based analysis

When Sider Scan analyzes code over an extended period of time, any modifications/additions/deletions made in the code will be tracked, and problematic changes will be part of the analysis results. If a pair of duplicate code is detected, and when a modification occurs in one but not the other, these will be flagged as potential problems as a 'possible miss'. This is referred to as the 'Time-series' method of analysis, and is specifically based on actions taken by a user.

Please note that this time-series analysis is only possible when the scan is consistently run at regular intervals.

3. List problems in order of importance

A list of problems or pattern irregularities is created, where details and suggestions are visually presented for you to review.

What this technology can deliver

Sider Scan uses a patent-pending proprietary duplicate code detection engine that provides a fast way to assess the quality of code that revolves around code duplication. In particular, it shows the following:

  • a list of possible misses in order of 'buggyness'
  • a list of prioritized duplicates
  • a visualization of the duplicates

Try Sider Scan for free

Download for Mac
Download for Windows

Free for one repository. No credit card required.