• DocumentCode
    1993915
  • Title

    Automatic dimension inference and checking for object-oriented programs

  • Author

    Hangal, Sudheendra ; Lam, Monica S.

  • Author_Institution
    Comput. Sci. Dept., Stanford Univ., Stanford, CA
  • fYear
    2009
  • fDate
    16-24 May 2009
  • Firstpage
    155
  • Lastpage
    165
  • Abstract
    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.
  • Keywords
    Java; object-oriented programming; program debugging; Java code; UniFi-automatic dimension error detection tool; arbitrary program-specific dimension; context-sensitive analysis; fine-grained dimensional consistency checking; object-oriented language; object-oriented program; programmer annotation; software debugging; Computer displays; Computer errors; Computer languages; Computer science; Equations; Intrusion detection; Java; Physics; Programming profession; Software debugging;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering, 2009. ICSE 2009. IEEE 31st International Conference on
  • Conference_Location
    Vancouver, BC
  • ISSN
    0270-5257
  • Print_ISBN
    978-1-4244-3453-4
  • Type

    conf

  • DOI
    10.1109/ICSE.2009.5070517
  • Filename
    5070517