Title :
Mining Logical Clones in Software: Revealing High-Level Business and Programming Rules
Author :
Wenyi Qian ; Xin Peng ; Zhenchang Xing ; Jarzabek, Stan ; Wenyun Zhao
Author_Institution :
Software Sch., Fudan Univ., Shanghai, China
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.
Keywords :
commerce; customer relationship management; data mining; enterprise resource planning; public domain software; software reusability; CRM software; MiLoCo; application-specific business; high-level business; logical clones mining; open-source ERP software; pattern mining; program reuse; programming rules; software systems; Abstracts; Business; Cloning; Clustering algorithms; Data mining; Programming; Semantics; evolution; logical clone; program comprehension; reuse; semantic clustering;
Conference_Titel :
Software Maintenance (ICSM), 2013 29th IEEE International Conference on
Conference_Location :
Eindhoven
DOI :
10.1109/ICSM.2013.15