Integrating conceptual and logical couplings for change impact analysis in software

被引:56
|
作者
Kagdi, Huzefa [1 ]
Gethers, Malcom [2 ]
Poshyvanyk, Denys [3 ]
机构
[1] Wichita State Univ, Dept Elect Engn & Comp Sci, Wichita, KS USA
[2] Univ Maryland Baltimore Cty, Baltimore, MD 21250 USA
[3] Coll William & Mary, Williamsburg, VA 23185 USA
基金
美国国家科学基金会;
关键词
Change impact analysis; Information Retrieval; Conceptual and logical coupling; Mining software repositories; Open-source software; Software evolution and maintenance; INFORMATION-RETRIEVAL; CODE; TOOL; REQUIREMENTS; REPOSITORIES; DEPENDENCIES; RIPPLES;
D O I
10.1007/s10664-012-9233-9
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The paper presents an approach that combines conceptual and evolutionary techniques to support change impact analysis in source code. Conceptual couplings capture the extent to which domain concepts and software artifacts are related to each other. This information is derived using Information Retrieval based analysis of textual software artifacts that are found in a single version of software (e.g., comments and identifiers in a single snapshot of source code). Evolutionary couplings capture the extent to which software artifacts were co-changed. This information is derived from analyzing patterns, relationships, and relevant information of source code changes mined from multiple versions in software repositories. The premise is that such combined methods provide improvements to the accuracy of impact sets compared to the two individual approaches. A rigorous empirical assessment on the changes of the open source systems Apache httpd, ArgoUML, iBatis, KOffice, and jEdit is also reported. The impact sets are evaluated at the file and method levels of granularity for all the software systems considered in the empirical evaluation. The results show that a combination of conceptual and evolutionary techniques, across several cut-off points and periods of history, provides statistically significant improvements in accuracy over either of the two techniques used independently. Improvements in F-measure values of up to 14% (from 3% to 17%) over the conceptual technique in ArgoUML at the method granularity, and up to 21% over the evolutionary technique in iBatis (from 9% to 30%) at the file granularity were reported.
引用
收藏
页码:933 / 969
页数:37
相关论文
共 50 条
  • [1] Integrating conceptual and logical couplings for change impact analysis in software
    Huzefa Kagdi
    Malcom Gethers
    Denys Poshyvanyk
    Empirical Software Engineering, 2013, 18 : 933 - 969
  • [2] Change Impact Analysis with a Software Traceability Approach to Support Software Maintenance
    Shahid, Muhammad
    Ibrahim, Suhaimi
    2016 13TH INTERNATIONAL BHURBAN CONFERENCE ON APPLIED SCIENCES AND TECHNOLOGY (IBCAST), 2016, : 391 - 396
  • [3] Agile Change Impact Analysis of Safety Critical Software
    Stalhane, Tor
    Hanssen, Geir Kjetil
    Myklebust, Thor
    Haugset, Borge
    COMPUTER SAFETY, RELIABILITY, AND SECURITY, 2014, 8696 : 444 - 454
  • [4] A Literature Review of Automatic Traceability Links Recovery for Software Change Impact Analysis
    Aung, Thazin Win Win
    Huo, Huan
    Sui, Yulei
    2020 IEEE/ACM 28TH INTERNATIONAL CONFERENCE ON PROGRAM COMPREHENSION, ICPC, 2020, : 14 - 24
  • [5] ImpactMiner: A Tool for Change Impact Analysis
    Dit, Bogdan
    Wagner, Michael
    Wen, Shasha
    Wang, Weilin
    Linares-Vasquez, Mario
    Poshyvanyk, Denys
    Kagdi, Huzefa
    36TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE COMPANION 2014), 2014, : 540 - 543
  • [6] Change impact analysis for maintenance and evolution of variable software systems
    Angerer, Florian
    Grimmer, Andreas
    Praehofer, Herbert
    Gruenbacher, Paul
    AUTOMATED SOFTWARE ENGINEERING, 2019, 26 (02) : 417 - 461
  • [7] Change Impact Analysis of a Software Process using Process Slicing
    Park, Seunghun
    Kim, Hyeonjeong
    Bae, Doo-Hwan
    2009 NINTH INTERNATIONAL CONFERENCE ON QUALITY SOFTWARE (QSIC 2009), 2009, : 359 - 366
  • [8] Integrating information retrieval, execution and link analysis algorithms to improve feature location in software
    Dit, Bogdan
    Revelle, Meghan
    Poshyvanyk, Denys
    EMPIRICAL SOFTWARE ENGINEERING, 2013, 18 (02) : 277 - 309
  • [9] Integrating information retrieval, execution and link analysis algorithms to improve feature location in software
    Bogdan Dit
    Meghan Revelle
    Denys Poshyvanyk
    Empirical Software Engineering, 2013, 18 : 277 - 309
  • [10] Change impact analysis for maintenance and evolution of variable software systems
    Florian Angerer
    Andreas Grimmer
    Herbert Prähofer
    Paul Grünbacher
    Automated Software Engineering, 2019, 26 : 417 - 461