Cloned code finder offered for Visual Studio

Open-source technology to help developers eliminate duplicate code.

Clone Detective for Visual Studio is available under the Apache 2.0 license

Clone Detective for Visual Studio is available under the Apache 2.0 license

An open-source technology has been launched to help developers using Microsoft Visual Studio 2008 find duplicated code in their software projects.

Called Clone Detective for Visual Studio, the product allows developers to analyze C# projects for source code duplicated elsewhere. These duplicates can lead to inconsistencies and indicate poorly factored code, according to the Clone Detective Web page at Microsoft's CodePlex site for open-source projects.

Version 1.0.0.0 of Clone Detective for Visual Studio was released on August 16 under an Apache 2.0 license.

"Duplicated source code can be an indicator for quality problems," said project coordinator Immo Landwerth. "Having the same algorithm spread across the whole application in slightly different variations will lead to increased maintenance effort, which ultimately may result in inconsistencies."

Among the reasons for code duplication is "lazy" developers who only know how to cut and paste, Landwerth said. Other reasons could include architectural constraints and methodology issues.

While currently limited to C# code, the next release will add capabilities to examine Visual Basic .Net and C++ code, Landwerth said. The integration between Clone Detective and Visual Studio was developed by Landwerth and colleague Thomas Dallmair in cooperation with Technical University of Munich.

"Clone Detective makes it easy for developers to perform a clone detection and visualize the existing clones. However, in some cases, the source duplication cannot be easily removed (e.g. the cost of removing the clones outweighs the costs of keeping them due to heavy design change requirements)," Landwerth said. "In this case, Clone Detective helps by reminding you that a given portion of code is duplicated (by a purple bar in the code editor). So if you make changes to it you should review the other occurrences and make sure you keep your application consistent."

Clone Detective leverages the university's ConQUAT (continuous quality assessment toolkit) tool for clone detection.

The next version of Clone Detective will be able to find "fuzzy clones," said Landwerth. "Fuzzy clones are clones that are almost identical but not token by token. This will allow you to find existing inconsistencies in your code base," he said.

Separately in the Visual Studio realm, TeamExpand this week is offering timesheet-tracking software for Visual Studio.Net software development teams. Functioning with the Microsoft TFS (Team Foundation Server) application lifecycle management server, TeamExpand's commercial release of its TX Chrono timesheet application allows project managers to submit and analyze timesheets.

The Web-based application features a set of notifications and reporting capabilities lacking in TFS, TeamExpand said. TX Chrono offers workflow and TFS compatibility to make software development activities more predictable and visible, the company said. Bug fixes are included as well.

TX Chrono offers:

  • Automated notifications and alerts on projects, individuals and activities.
  • Timesheet submission and approval.
  • Individual and non-standard schedules.
  • Non-standard working hours per day or week.
  • Separate billable and non-billable tasks.
  • Custom timetables.
  • Advanced reporting.

TX Chrono is licensed at US$15 per seat each month. A 30-day free trial version is available at this Web page.

Join the newsletter!

Error: Please check your email address.
Rocket to Success - Your 10 Tips for Smarter ERP System Selection

Tags .netvisualstudioopensourcevisualbasic

Keep up with the latest tech news, reviews and previews by subscribing to the Good Gear Guide newsletter.

Paul Krill

InfoWorld
Show Comments

Most Popular Reviews

Latest Articles

Resources

PCW Evaluation Team

Ben Ramsden

Sharp PN-40TC1 Huddle Board

Brainstorming, innovation, problem solving, and negotiation have all become much more productive and valuable if people can easily collaborate in real time with minimal friction.

Sarah Ieroianni

Brother QL-820NWB Professional Label Printer

The print quality also does not disappoint, it’s clear, bold, doesn’t smudge and the text is perfectly sized.

Ratchada Dunn

Sharp PN-40TC1 Huddle Board

The Huddle Board’s built in program; Sharp Touch Viewing software allows us to easily manipulate and edit our documents (jpegs and PDFs) all at the same time on the dashboard.

George Khoury

Sharp PN-40TC1 Huddle Board

The biggest perks for me would be that it comes with easy to use and comprehensive programs that make the collaboration process a whole lot more intuitive and organic

David Coyle

Brother PocketJet PJ-773 A4 Portable Thermal Printer

I rate the printer as a 5 out of 5 stars as it has been able to fit seamlessly into my busy and mobile lifestyle.

Kurt Hegetschweiler

Brother PocketJet PJ-773 A4 Portable Thermal Printer

It’s perfect for mobile workers. Just take it out — it’s small enough to sit anywhere — turn it on, load a sheet of paper, and start printing.

Featured Content

Product Launch Showcase

Latest Jobs

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?