• DocumentCode
    492580
  • Title

    Calysto

  • Author

    Babic, Domagoj ; Hu, Alan J.

  • Author_Institution
    Dept. of Comput. Sci., Univ. of British Columbia, Vancouver, BC
  • fYear
    2008
  • fDate
    10-18 May 2008
  • Firstpage
    211
  • Lastpage
    220
  • Abstract
    Automatically detecting bugs in programs has been a long-held goal in software engineering. Many techniques exist, trading-off varying levels of automation, thoroughness of coverage of program behavior, precision of analysis, and scalability to large code bases. This paper presents the Calysto static checker, which achieves an unprecedented combination of precision and scalability in a completely automatic extended static checker. Calysto is interprocedurally path-sensitive, fully context-sensitive, and bit-accurate in modeling data operations - comparable coverage and precision to very expensive formal analyses - yet scales comparably to the leading, less precise, static-analysis-based tool for similar properties. Using Calysto, we have discovered dozens of bugs, completely automatically, in hundreds of thousands of lines of production, open-source applications, with a very low rate of false error reports. This paper presents the design decisions, algorithms, and optimizations behind Calysto´s performance.
  • Keywords
    program debugging; program diagnostics; program verification; Calysto static checker; analysis precision; automatic extended static checker; bugs detection; data operations; formal analysis; open source application; precise extended static checking; program behavior; scalable extended static checking; software engineering; static analysis; Automation; Computer bugs; Computer science; Context modeling; Formal verification; Java; Permission; Scalability; Software engineering; Software testing; formal verification; static analysis; static checking;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering, 2008. ICSE '08. ACM/IEEE 30th International Conference on
  • Conference_Location
    Leipzig
  • ISSN
    0270-5257
  • Print_ISBN
    978-1-4244-4486-1
  • Electronic_ISBN
    0270-5257
  • Type

    conf

  • DOI
    10.1145/1368088.1368118
  • Filename
    4814132