CM evolveIT Clone Detection Datasheet

CM evolveIT Clone Detection Datasheet


 

CM evolveIT

Clone Management

 

Cloned code impacts your company’s ability to modernize and even maintain your applications, hurts systems availability and drives up costs. CM First offers automated clone detection with Clone Management, a component of CM evolveIT that eliminates technical debt and streamlines development.

 

Reduce Risk by Remediating Technical Debt

Detecting, managing, and remediating cloned code should be an integral part of an organization’s efforts to reduce technical debt. It is estimated that any large system contains 10-25% of cloned code.  Cloned code tends to build up over time, as developers cut and paste common routines into different parts of the application. Although the developer saves significant time initially, over time, the costs of cloned code build up. Applying maintenance and adding new enhancements become increasingly more difficult, costly and time-consuming, since the developer may have to change all instances of a clone or risk production failures.   In addition, clone creation is not done systematically, which may introduce bugs to the application.

 

Automating the clone management process

Automation is the only viable strategy for remediating technical debt.  CM First’s industry-leading, clone detection algorithms go to work as part of the DevOps process. The advanced pattern matching works on semantic structures, eliminating many of the issues seen with source code search. Simple code search may find identical code segments, but not the many similar code fragments which are also clones. 

 

Clone Management Features

  • Performs code analysis, comparing files across your entire system
  • Works with a variety of coding languages and across procedural code
  • Works quickly across the entire code base, using parallel processing to review millions of lines of code
  • Results are hyperlinked to show clones in a variety of ways and are easily navigated.
  • Provides the ability to see all instances of a clone including similar but not identical code.
  • Facilitates the creation of a library which makes routine replacements easier.
  • Enables elimination of cloned code that is no longer necessary or which has introduced problems.

 

Clone Management Benefits

Eliminating the risks to uptime, the costs to the company and the time wasted to do the additional maintenance are factors that drive companies to invest in automated clone management.  Removing clones has been estimated to save at least $1.00 per source line per year.  When you consider how much of your code might be cloned code, those savings can add up fast.

 

Problem management becomes simpler because when an outage is determined to be caused by this kind of code, ALL instances can be fixed.  The importance of this step cannot be understated – if a system is 25% cloned, then when a line of code is changed there is a 25% chance the same line exists elsewhere in the application and unfixed could create a production issue.

 

And most importantly, as new code is created or old code modified, clone management ensures that you avoid incurring more technical debt. Keep your systems running clean, fast and safe with CM evolveIT.

 



    • Related Articles

    • Clone Detection Web Interface

      Our Clone Detection Summary page provides a % of Clones statistic in a speedometer presentation with a cost calculator below. Enter your estimated cost per line of code for maintenance each year and we will calculate your potential savings when you ...
    • CM evolveIT v11.6 Release Note

      CM evolveIT v11.6 Release Note IBM Power® (AKA IBM i, AS/400) Cobol support CM evolveIT handles IBM Power Cobol sources with copybook, CL, DDS base Table, View, DSPF and PRTF on Desktop and Web mode Asset relations program calls program program uses ...
    • CM evolveIT Asset Query

      CM evolveIT Asset Query This document will cover the basics of the CM evolveIT Dashboard Asset Query. After completing this document, you should have a basic understanding of the CM evolveIT Dashboard Asset Query 1. What is Asset Query for? This ...
    • CM evolveIT Dashboard APIs

      This document will cover the basics of the CM evolveIT Dashboard Configuration Tool. There will be a discussion about what APIs are available, how to use the APIs and how to test results from the APIs. The last section of the document will walk ...
    • CM evolveIT Text Search

      CM evolveIT Text Search This document will cover the basics of the CM evolveIT Dashboard Text Search. After completing this document, you should have a basic understanding of the CM evolveIT Dashboard Text Search 1. What is Text Search for? This ...