A comparison of abstract data types and objects recovery techniques

被引:11
|
作者
Girard, JF
Koschke, R
机构
[1] Fraunhofer Inst Expt Software Engn, D-67661 Kaiserslautern, Germany
[2] Univ Stuttgart, D-70565 Stuttgart, Germany
关键词
D O I
10.1016/S0167-6423(99)00035-0
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In the context of the authors' research on architectural features recovery, abstract data types (ADT) and abstract data objects (ADO, also called objects) have been identified as two of the smallest components which are useful for building a significant architectural overview of the system. The authors have named these the atomic components (AC) of an architecture. This article compares six published techniques which extract ADTs and ADOs from source code without extensive data flow analysis. A prototype tool implementing each technique has been developed and applied to three medium-sized systems written in C (each over 30 Kloc). The results from each approach are compared with the atomic components identified by hand by a group of software engineers. This article extends previous papers by discussing how the software engineers' AC identification was validated and by analyzing the false positives, i.e., the atomic components identified by automatic approaches which were not identified by software engineers. (C) 2000 Elsevier Science B.V. All rights reserved.
引用
收藏
页码:149 / 181
页数:33
相关论文
共 50 条
  • [1] ABSTRACT OBJECT TYPES =ABSTRACT KNOWLEDGE TYPES+ABSTRACT DATA TYPES+ABSTRACT CONNECTOR TYPES
    PARK, HS
    JOURNAL OF OBJECT-ORIENTED PROGRAMMING, 1991, 4 (03): : 37 - &
  • [2] ABSTRACT DATA TYPES
    Laskov, Lasko M.
    MATHEMATICS AND INFORMATICS, 2020, 63 (06): : 608 - 621
  • [3] From abstract data types to algebraic development techniques: A shift of paradigms
    Ehrig, H
    Gajewsky, M
    Wolter, U
    RECENT TRENDS IN ALGEBRAIC DEVELOPMENT TECHNIQUES, 1998, 1376 : 1 - 17
  • [4] Abstract Data Types without the Types
    Wadler, Philip
    JOURNAL OF UNIVERSAL COMPUTER SCIENCE, 2017, 23 (01) : 5 - 20
  • [5] Comparison of abstract data type and abstract state encapsulation detection techniques for architectural understanding
    Girard, JF
    Koschke, R
    Schied, G
    PROCEEDINGS OF THE FOURTH WORKING CONFERENCE ON REVERSE ENGINEERING, 1997, : 66 - 75
  • [6] Abstract Data Types.
    Zoller, P.
    Angewandte Informatik/Applied Informatics, 1981, 23 (10): : 429 - 431
  • [7] Programs are abstract data types
    Erwig, M
    16TH ANNUAL INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE 2001), PROCEEDINGS, 2001, : 400 - 403
  • [8] Distributed abstract data types
    Picco, Gian Pietro
    Migliavacca, Matteo
    Murphy, Amy L.
    Roman, Gruia-Catalin
    ON THE MOVE TO MEANINGFUL INTERNET SYSTEMS 2006: COOPIS, DOA, GADA, AND ODBASE PT 2, PROCEEDINGS, 2006, 4276 : 1594 - 1612
  • [9] ABSTRACT-DATA-TYPES
    BENTLEY, J
    GRIES, OD
    COMMUNICATIONS OF THE ACM, 1987, 30 (04) : 284 - 290
  • [10] A logic for abstract data types as existential types
    Poll, E
    Zwanenburg, J
    TYPED LAMBDA CALCULI AND APPLICATIONS, 1999, 1581 : 310 - 324