Mining logical clones in software: Revealing high-level business and programming rules

Wenyi Qian, Xin Peng, Zhenchang Xing, Stan Jarzabek, Wenyun Zhao

Research output: Contribution to conferencePaperpeer-review

13 Citations (Scopus)

Abstract

Software systems contain many implicit application-specific business and programming rules. These rules represent high-level logical structures and processes for application-specific business and programming concerns. They are crucial for program understanding, consistent evolution, and systematic reuse. However, existing pattern mining and analysis approaches cannot effectively mine such application-specific rules. In this paper, we present an approach for mining logical clones in software that reveal high-level business and programming rules. Our approach extracts a program model from source code, and enriches the program model with code clone information, functional clusters (i.e., a set of methods dealing with similar topics or concerns), and abstract entity classes (representing sibling entity classes). It then analyzes the enriched program model for mining recurring logical structures as logical clones. We have implemented our approach in a tool called MiLoCo (Mining Logical Clone) and conducted a case study with an open-source ERP and CRM software. Our results show that MiLoCo can identify meaningful and useful logical clones for program understanding, evolution and reuse.

Original languageEnglish
Pages40-49
Number of pages10
DOIs
Publication statusPublished - 2013
Externally publishedYes
Event29th IEEE International Conference on Software Maintenance, ICSM 2013 - Eindhoven, Netherlands
Duration: 22 Sept 201328 Sept 2013

Conference

Conference29th IEEE International Conference on Software Maintenance, ICSM 2013
Country/TerritoryNetherlands
CityEindhoven
Period22/09/1328/09/13

Fingerprint

Dive into the research topics of 'Mining logical clones in software: Revealing high-level business and programming rules'. Together they form a unique fingerprint.

Cite this