Comparison of software architecture reverse engineering methods

被引:18
|
作者
Stringfellow, C.
Amory, C. D.
Potnuri, D.
Andrews, A.
Georg, M.
机构
[1] Midwestern State Univ, Dept Comp Sci, Wichita Falls, TX 76308 USA
[2] Washington State Univ, Dept Elect Engn & Comp Sci, Pullman, WA 99164 USA
[3] Washington Univ, Dept Comp Sci & Engn, St Louis, MO 63130 USA
关键词
software architecture; reverse engineering; maintainability;
D O I
10.1016/j.infsof.2005.05.007
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Problems related to interactions between components is a sign of problems with the software architecture of the system and are often costly to fix. Thus it is very desirable to identify potential architectural problems and track them across releases to see whether some relationships between components are repeatedly change-prone. This paper shows a study of combining two technologies for software architecture: architecture recovery and change dependency analysis based on version control information. More specifically, it describes a reverse engineering method to derive a change architecture from Revision Control System (RCS) change history. It compares this method to other reverse engineering methods used to derive software architectures using other types of data. These techniques are illustrated in a case study on a large commercial system consisting of over 800 KLOC of C, C + +, and microcode. The results show identifiable problems with a subset of the components and relationships between them, indicating systemic problems with the underlying architecture. (C) 2005 Elsevier B.V. All rights reserved.
引用
收藏
页码:484 / 497
页数:14
相关论文
共 50 条
  • [1] On the meeting of Software Architecture and Reverse Engineering
    Chikofsky, Elliot
    [J]. 5th Working IEEE/IFIP Conference on Software Architecture, Proceedings, 2006, : 17 - 20
  • [2] Reverse engineering software architecture using rough clusters
    Jahnke, JH
    [J]. NAFIPS 2004: ANNUAL MEETING OF THE NORTH AMERICAN FUZZY INFORMATION PROCESSING SOCIETY, VOLS 1AND 2: FUZZY SETS IN THE HEART OF THE CANADIAN ROCKIES, 2004, : 4 - 9
  • [3] Component-based software architecture for biosystem reverse engineering
    Doheon Lee
    [J]. Biotechnology and Bioprocess Engineering, 2005, 10 : 400 - 407
  • [4] Component-based software architecture for biosystem reverse engineering
    Lee, D
    [J]. BIOTECHNOLOGY AND BIOPROCESS ENGINEERING, 2005, 10 (05) : 400 - 407
  • [5] Comparison of software architecture methods: A framework for a unified architecture method
    Lqsaviq, Francisca
    Guillén-Drija, Christian
    [J]. Revista de la Facultad de Ingenieria, 2010, 25 (01): : 71 - 87
  • [6] Developing tools for reverse engineering in a software product-line architecture
    Chiang, CC
    Lee, RY
    [J]. PROCEEDINGS OF THE 2004 IEEE INTERNATIONAL CONFERENCE ON INFORMATION REUSE AND INTEGRATION (IRI-2004), 2004, : 42 - 47
  • [7] Reverse engineering software
    不详
    [J]. AIRCRAFT ENGINEERING AND AEROSPACE TECHNOLOGY, 1998, 70 (05): : 391 - 392
  • [8] Software reverse engineering
    van Deursen, A
    Burd, E
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 2005, 77 (03) : 209 - 211
  • [9] Reverse engineering for software performance engineering
    Mobley, Kevin
    [J]. 14TH WORKING CONFERENCE ON REVERSE ENGINEERING, PROCEEDINGS, 2007, : 302 - 303
  • [10] Software visualization for reverse engineering
    Koschke, R
    [J]. SOFTWARE VISUALIZATION, 2002, 2269 : 138 - 150