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 条
  • [21] Model checking in object-oriented Petri nets
    Rodrigues, CL
    Guerrero, DDS
    de Figueiredo, JCA
    2004 IEEE INTERNATIONAL CONFERENCE ON SYSTEMS, MAN & CYBERNETICS, VOLS 1-7, 2004, : 4977 - 4982
  • [22] Confidentiality checking an object-oriented class hierarchy
    Chandra S.
    Khan R.A.
    Network Security, 2010, 2010 (03) : 16 - 20
  • [23] Data Layouts for Object-Oriented Programs
    Hirzel, Martin
    SIGMETRICS'07: PROCEEDINGS OF THE 2007 INTERNATIONAL CONFERENCE ON MEASUREMENT & MODELING OF COMPUTER SYSTEMS, 2007, 35 (01): : 265 - 276
  • [24] AN OBJECT-ORIENTED DESIGN OF FEM PROGRAMS
    KONG, XA
    CHEN, DP
    COMPUTERS & STRUCTURES, 1995, 57 (01) : 157 - 166
  • [25] Object-oriented design of FEM programs
    Kong, X.A.
    Chen, D.P.
    Computers and Structures, 1995, 57 (01): : 157 - 166
  • [26] Intermodular slicing of object-oriented programs
    Steindl, C
    COMPILER CONSTRUCTION, 1998, 1383 : 264 - 278
  • [27] The structured complexity of object-oriented programs
    Fóthi, A
    Nyéky-Gaizler, J
    Porkoláb, Z
    MATHEMATICAL AND COMPUTER MODELLING, 2003, 38 (7-9) : 815 - 827
  • [28] Declarative specialization of object-oriented programs
    Volanschi, EN
    Consel, C
    Muller, G
    Cowan, C
    ACM SIGPLAN NOTICES, 1997, 32 (10) : 286 - 300
  • [29] Improving the quality of object-oriented programs
    Alexander, RT
    IEEE SOFTWARE, 2001, 18 (05) : 90 - 91
  • [30] A differencing algorithm for object-oriented programs
    Apiwattanapong, T
    Orso, A
    Harrold, MJ
    19TH INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, PROCEEDINGS, 2004, : 2 - 13