• DocumentCode
    650684
  • 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
  • fYear
    2013
  • fDate
    22-28 Sept. 2013
  • Firstpage
    40
  • Lastpage
    49
  • 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;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Maintenance (ICSM), 2013 29th IEEE International Conference on
  • Conference_Location
    Eindhoven
  • ISSN
    1063-6773
  • Type

    conf

  • DOI
    10.1109/ICSM.2013.15
  • Filename
    6676875