Automatic Dimension Inference and Checking for Object-Oriented Programs

被引:16
|
作者
Hangal, Sudheendra [1 ]
Lam, Monica S. [1 ]
机构
[1] Stanford Univ, Dept Comp Sci, Stanford, CA 94305 USA
关键词
D O I
10.1109/ICSE.2009.5070517
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
This paper introduces UniFi, a tool that attempts to automatically detect dimension errors in Java programs. UniFi infers dimensional relationships across primitive type and string variables in a program, using an inter-procedural, context-sensitive analysis. It then monitors these dimensional relationships as the program evolves, flagging inconsistencies that may be errors. UniFi requires no programmer annotations, and supports arbitrary program-specific dimensions, thus providing fine-grained dimensional consistency checking. UniFi exploits features of object-oriented languages, but can be used for other languages as well. We have run UniFi on real-life Java code and found that it is useful in exposing dimension errors. We present a case study of using UniFi on nightly builds of a 19,000 line code base as it evolved over 10 months.
引用
收藏
页码:155 / 165
页数:11
相关论文
共 50 条
  • [41] AutoAlias: Automatic Variable-Precision Alias Analysis for Object-Oriented Programs
    Rivera V.
    Meyer B.
    SN Computer Science, 2020, 1 (1)
  • [42] AUTOMATIC TRANSFORMATION OF HIGH-LEVEL OBJECT-ORIENTED SPECIFICATIONS INTO PARALLEL PROGRAMS
    RUPPELT, T
    WIRTZ, G
    PARALLEL COMPUTING, 1989, 10 (01) : 15 - 28
  • [43] The effect of call graph construction algorithms for object-oriented programs on automatic clustering
    Rayside, D
    Reuss, S
    Hedges, E
    Kontogiannis, K
    8TH INTERNATIONAL WORKSHOP ON PROGRAM COMPREHENSION (IWPC 2000), PROCEEDINGS, 2000, : 191 - 200
  • [44] Automatic generation of numerical control part programs using object-oriented software
    Srinivas, J
    PROCEEDINGS OF THE INSTITUTION OF MECHANICAL ENGINEERS PART B-JOURNAL OF ENGINEERING MANUFACTURE, 2004, 218 (02) : 239 - 244
  • [45] Automatic testing of object-oriented software
    Meyer, Bertrand
    Ciupa, Ilinca
    Leitner, Andreas
    Liu, Lisa Ling
    SOFSEM 2007: THEORY AND PRACTICE OF COMPUTER SCIENCE, PROCEEDINGS, 2007, 4362 : 114 - +
  • [46] Recursive object types in a logic of object-oriented programs
    Leino, KRM
    PROGRAMMING LANGUAGES AND SYSTEMS, 1998, 1381 : 170 - 184
  • [47] Design and implementation of an object-oriented inference engine
    Chen, Zhaoqian
    Li, Hongbing
    Chen, Shifu
    Jisuanji Yanjiu yu Fazhan/Computer Research and Development, 1997, 34 (03): : 188 - 193
  • [48] Improvements in model checking for Object-Oriented Petri Nets
    Hasa, L
    Ceska, M
    ISAS/CITSA 2004: INTERNATIONAL CONFERENCE ON CYBERNETICS AND INFORMATION TECHNOLOGIES, SYSTEMS AND APPLICATIONS AND 10TH INTERNATIONAL CONFERENCE ON INFORMATION SYSTEMS ANALYSIS AND SYNTHESIS, VOL 3, PROCEEDINGS, 2004, : 269 - 274
  • [49] SAFE AND DECIDABLE TYPE CHECKING IN AN OBJECT-ORIENTED LANGUAGE
    BRUCE, KB
    CRABTREE, J
    MURTAGH, TP
    VANGENT, R
    DIMOCK, A
    MULLER, R
    SIGPLAN NOTICES, 1993, 28 (10): : 29 - 46
  • [50] Safe and decidable type checking in an object-oriented language
    Bruce, Kim B.
    Crabtree, Jon
    Murtagh, Thomas P.
    van Gent, Robert
    Dimock, Allyn
    Muller, Robert
    SIGPLAN Notices (ACM Special Interest Group on Programming Languages), 1993, 28 (10):