Delving source code with formal concept analysis

被引:15
|
作者
Mens, K
Tourwé, T
机构
[1] Catholic Univ Louvain, Dept Ingn Informat INGI, B-1348 Louvain, Belgium
[2] CWI, NL-1090 GB Amsterdam, Netherlands
关键词
source-code mining; formal concept analysis; software classification;
D O I
10.1016/j.cl.2004.11.004
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Getting an initial understanding of the structure of a software system, whether it is for software maintenance, evolution or reengineering purposes, is a nontrivial task. We propose a lightweight approach to delve a system's source code automatically and efficiently for relevant concepts of interest: what concerns are addressed in the code, what patterns, coding idioms and conventions have been adopted, and where and how are they implemented. We use formal concept analysis to do the actual source-code mining, and then filter, classify and combine the results to present them in a format that is more convenient to a software engineer. We applied a prototype tool that implements this approach to several small to medium-sized Smalltalk applications. For each of these, the tool uncovered several design pattern instances, coding and naming conventions, refactoring opportunities and important domain concepts. Although the tool and approach can still be improved in many ways, the tool does already provides useful results when trying to get an initial understanding of a system. The obtained results also illustrate the relevance and feasibility of using formal concept analysis as an efficient technique for source-code mining. (c) 2005 Elsevier Ltd. All rights reserved.
引用
收藏
页码:183 / 197
页数:15
相关论文
共 50 条
  • [41] A logical generalization of formal concept analysis
    Ferré, S
    Ridoux, O
    CONCEPTUAL STRUCTURES: LOGICAL, LINGUISTIC, AND COMPUTATIONAL ISSUES, PROCEEDINGS, 2000, 1867 : 371 - 384
  • [42] Continuous Domains in Formal Concept Analysis
    Wang, Longchun
    Guo, Lankun
    Li, Qingguo
    FUNDAMENTA INFORMATICAE, 2021, 179 (03) : 295 - 319
  • [43] Agreement contexts in formal concept analysis
    Cole, R
    Becker, P
    CONCEPT LATTICES, PROCEEDINGS, 2004, 2961 : 172 - 179
  • [44] Similarity measures in formal concept analysis
    Faris Alqadah
    Raj Bhatnagar
    Annals of Mathematics and Artificial Intelligence, 2011, 61 : 245 - 256
  • [45] Learning Thresholds in Formal Concept Analysis
    Priss, Uta
    FORMAL CONCEPT ANALYSIS, ICFCA 2017, 2017, 10308 : 198 - 210
  • [46] Formal concept analysis of higher order
    Kridlo, Ondrej
    Krajci, Stanislav
    Antoni, Lubomir
    INTERNATIONAL JOURNAL OF GENERAL SYSTEMS, 2016, 45 (02) : 116 - 134
  • [47] Relational reasoning in formal concept analysis
    Golinska-Pilarek, Joanna
    Orlowska, Ewa
    2007 IEEE INTERNATIONAL CONFERENCE ON FUZZY SYSTEMS, VOLS 1-4, 2007, : 1053 - 1058
  • [48] Formal concept analysis on fuzzy sets
    Shen, Lili
    Zhang, Dexue
    PROCEEDINGS OF THE 2013 JOINT IFSA WORLD CONGRESS AND NAFIPS ANNUAL MEETING (IFSA/NAFIPS), 2013, : 215 - 219
  • [49] Functorial properties of formal concept analysis
    Mori, Hideo
    Conceptual Structures: Knowledge Architectures for Smart Applications, Proceedings, 2007, 4604 : 505 - 508
  • [50] A triadic approach to formal concept analysis
    Lehmann, F
    Wille, R
    CONCEPTUAL STRUCTURES: APPLICATIONS, IMPLEMENTATION AND THEORY, 1995, 954 : 32 - 43