메뉴 건너뛰기




Volumn 80, Issue 7, 2007, Pages 1156-1168

A framework for the static verification of api calls

Author keywords

api; FindBugs; Library; Programming by contract; Static analysis

Indexed keywords

COMPUTER SOFTWARE; COMPUTER VIRUSES; DIGITAL LIBRARIES; ERROR ANALYSIS; STATIC ANALYSIS; VERIFICATION;

EID: 34248582382     PISSN: 01641212     EISSN: None     Source Type: Journal    
DOI: 10.1016/j.jss.2006.09.040     Document Type: Article
Times cited : (11)

References (53)
  • 3
    • 0036039066 scopus 로고    scopus 로고
    • Ball, T., Rajamani, S.K., 2002. The SLAM project: debugging system software via static analysis. In: POPL'02: Proceedings of the 29th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 1-3.
  • 4
    • 34248516105 scopus 로고    scopus 로고
    • Ball, T., Cook, B., Levin, V., Rajamani, S.K., 2004. SLAM and static driver verifier: technology transfer of formal methods inside Microsoft. Tech. Rep. MSR-TR-2004-08, Microsoft Research, Redmond, WA.
  • 5
    • 84976790961 scopus 로고
    • A technique for finding storage allocation errors in C-language programs
    • Barach D.R., Taenzer D.H., and Wells R.E. A technique for finding storage allocation errors in C-language programs. SIGPLAN Notices 17 7 (1982) 32-38
    • (1982) SIGPLAN Notices , vol.17 , Issue.7 , pp. 32-38
    • Barach, D.R.1    Taenzer, D.H.2    Wells, R.E.3
  • 6
    • 33646590893 scopus 로고    scopus 로고
    • Barringer, H., Finkbeiner, B., Gurevich, Y., Sipma, H.B. (Eds.), 2006. Proceedings of the Fifth Workshop on Runtime Verification (RV 2005). Electronic Notes in Theoretical Computer Science, 144(4).
  • 7
    • 0002190545 scopus 로고    scopus 로고
    • Test infected: programmers love writing tests
    • Beck K., and Gamma E. Test infected: programmers love writing tests. Java Report 3 7 (1998) 37-50
    • (1998) Java Report , vol.3 , Issue.7 , pp. 37-50
    • Beck, K.1    Gamma, E.2
  • 8
    • 0038039865 scopus 로고    scopus 로고
    • Blanchet, B., Cousot, P., Cousot, R., Feret, J., Mauborgne, L., Miné, A., Monniaux, D., Rival, X., 2003. A static analyzer for large safety-critical software. In: PLDI'03: Proceedings of the ACM SIGPLAN 2003 Conference on Programming Language Design and Implementation, pp. 196-207.
  • 10
    • 0033688092 scopus 로고    scopus 로고
    • A static analyzer for finding dynamic programming errors
    • Bush W.R., Pincus J.D., and Sielaff D.J. A static analyzer for finding dynamic programming errors. Software-Pract. Exp. 30 7 (2000) 775-802
    • (2000) Software-Pract. Exp. , vol.30 , Issue.7 , pp. 775-802
    • Bush, W.R.1    Pincus, J.D.2    Sielaff, D.J.3
  • 11
    • 0038601527 scopus 로고    scopus 로고
    • Chaki, S., Clarke, E., Groce, A., Jha, S., Veith, H., 2003. Modular verification of software components in C. In: ICSE'03: Proceedings of the 25th International Conference on Software Engineering, pp. 385-395.
  • 12
    • 0038349200 scopus 로고    scopus 로고
    • Chen, H., Wagner, D., 2002. MOPS: an infrastructure for examining security properties of software. In: CCS'02: Proceedings of the 9th ACM Conference on Computer and Communications Security, pp. 235-244.
  • 13
    • 25844442786 scopus 로고    scopus 로고
    • ESC/Java2: Uniting ESC/Java and JML-progress and issues in building and using ESC/Java2
    • Construction and Analysis of Safe, Secure, and Interoperable Smart Devices: International Workshop, CASSIS 2004. Barthe G., Burdy L., Huisman M., et al. (Eds), Springer-Verlag
    • Cok D.R., and Kiniry J.R. ESC/Java2: Uniting ESC/Java and JML-progress and issues in building and using ESC/Java2. In: Barthe G., Burdy L., Huisman M., et al. (Eds). Construction and Analysis of Safe, Secure, and Interoperable Smart Devices: International Workshop, CASSIS 2004. Lecture Notes in Computer Science vol. 3362 (2004), Springer-Verlag 108-129
    • (2004) Lecture Notes in Computer Science , vol.3362 , pp. 108-129
    • Cok, D.R.1    Kiniry, J.R.2
  • 15
    • 0033697422 scopus 로고    scopus 로고
    • Corbett, J.C., Dwyer, M.B., Hatcliff, J., Laubach, S., Pǎsǎreanu, C.S., Robby, Zheng, H., 2000. Bandera: extracting finite-state models from Java source code. In: ICSE'00: Proceedings of the 22nd International Conference on Software engineering, pp. 439-448.
  • 16
    • 85050550846 scopus 로고    scopus 로고
    • Cousot, P., Cousot, R., 1977. Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: POPL'77: Proceedings of the 4th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages, pp. 238-252.
  • 17
    • 33244471534 scopus 로고    scopus 로고
    • Csallner, C., Smaragdakis, Y., 2005. Check 'n' crash: Combining static checking and testing. In: ICSE'05: Proceedings of the 27th International Conference on Software Engineering, pp. 422-431.
  • 18
    • 0005363881 scopus 로고    scopus 로고
    • Byte code engineering
    • Cap C.H. (Ed), Springer-Verlag
    • Dahm M. Byte code engineering. In: Cap C.H. (Ed). JIT'99, Java-Informations-Tage 1999 (1999), Springer-Verlag 267-277
    • (1999) JIT'99, Java-Informations-Tage 1999 , pp. 267-277
    • Dahm, M.1
  • 19
    • 0036040604 scopus 로고    scopus 로고
    • Das, M., Lerner, S., Seigle, M., 2002. ESP: Path-sensitive program verification in polynomial time. In: PLDI'02: Proceedings of the ACM SIGPLAN 2002 Conference on Programming Language Design and Implementation, pp. 57-68.
  • 20
    • 0034826554 scopus 로고    scopus 로고
    • DeLine, R., Fähndrich, M., 2001. Enforcing high-level protocols in low-level software. In: PLDI'01: Proceedings of the ACM SIGPLAN 2001 Conference on Programming Language Design and Implementation, pp. 59-69.
  • 21
    • 34248528350 scopus 로고    scopus 로고
    • DeLine, R., Fähndrich, M., 2004. The Fugue protocol checker: Is your software Baroque? Tech. Rep. MSR-TR-2004-07, Microsoft Research, Redmond, WA.
  • 22
    • 0036041420 scopus 로고    scopus 로고
    • Engler, D., Chen, D.Y., Hallem, S., Chou, A., Chelf, B., 2001. Bugs as deviant behavior: A general approach to inferring errors in systems code. In: SOSP'01: Proceedings of the Eighteenth ACM Symposium on Operating Systems Principles, pp. 57-72.
  • 23
    • 0036147522 scopus 로고    scopus 로고
    • Improving security using extensible lightweight static analysis
    • Evans D., and Larochelle D. Improving security using extensible lightweight static analysis. IEEE Software 19 1 (2002) 42-51
    • (2002) IEEE Software , vol.19 , Issue.1 , pp. 42-51
    • Evans, D.1    Larochelle, D.2
  • 24
    • 0017292244 scopus 로고
    • Design and code inspections to reduce errors in program development
    • Fagan M.E. Design and code inspections to reduce errors in program development. IBM Syst. J. 15 3 (1976) 182-211
    • (1976) IBM Syst. J. , vol.15 , Issue.3 , pp. 182-211
    • Fagan, M.E.1
  • 26
    • 84881144443 scopus 로고    scopus 로고
    • Flanagan, C., Leino, K.R.M., 2001. Houdini, an annotation assistant for ESC/Java. In: FME'01: Proceedings of the International Symposium of Formal Methods Europe on Formal Methods for Increasing Software Productivity, pp. 500-517.
  • 27
    • 0036036098 scopus 로고    scopus 로고
    • Flanagan, C., Leino, K.R.M., Lillibridge, M., Nelson, G., Saxe, J.B., Stata, R., 2002. Extended static checking for Java. In: PLDI'02: Proceedings of the ACM SIGPLAN 2002 Conference on Programming Language Design and Implementation, pp. 234-245.
  • 29
    • 0036039794 scopus 로고    scopus 로고
    • Hallem, S., Chelf, B., Xie, Y., Engler, D., 2002. A system and language for building system-specific, static analyses. In: PLDI'02: Proceedings of the ACM SIGPLAN 2002 Conference on Programming Language Design and Implementation, pp. 69-82.
  • 30
    • 11144354549 scopus 로고    scopus 로고
    • An overview of the runtime verification tool Java PathExplorer
    • Havelund K., and Roşu G. An overview of the runtime verification tool Java PathExplorer. Formal Methods Syst. Design 24 2 (2004) 189-215
    • (2004) Formal Methods Syst. Design , vol.24 , Issue.2 , pp. 189-215
    • Havelund, K.1    Roşu, G.2
  • 31
    • 14544301479 scopus 로고    scopus 로고
    • Hovemeyer, D., Pugh, W., 2004. Finding bugs is easy. In: OOPSLA'04: Companion to the 19th Annual ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications, pp. 132-136.
  • 32
    • 0029280675 scopus 로고
    • Aspect: detecting bugs with abstract dependences
    • Jackson D. Aspect: detecting bugs with abstract dependences. ACM Trans. Software Eng. Methodol. 4 2 (1995) 109-145
    • (1995) ACM Trans. Software Eng. Methodol. , vol.4 , Issue.2 , pp. 109-145
    • Jackson, D.1
  • 33
    • 85084164164 scopus 로고    scopus 로고
    • Jim, T., Morrisett, G., Grossman, D., Hicks, M., Cheney, J., Wang, Y., 2002. Cyclone: a safe dialect of C. In: USENIX Annual Technical Conference, pp. 275-288.
  • 34
    • 34248544049 scopus 로고    scopus 로고
    • JLint, 2004. JLint. Available online .
  • 35
    • 34248526399 scopus 로고    scopus 로고
    • Johnson, S., 1977. Lint, a C program checker. Computer Science Technical Report 65, Bell Laboratories, Murray Hill, NJ.
  • 40
    • 34248538813 scopus 로고    scopus 로고
    • Leavens, G.T., Baker, A.T., Ruby, C., 2005. Preliminary design of JML: A behavioral interface specification for Java. Tech. Rep. TR #98-06-rev28, Department of Computer Science, University of Iowa, Ames, IA.
  • 41
    • 32044471874 scopus 로고    scopus 로고
    • Detecting software defects in telecom applications through lightweight static analysis: a war story
    • APLAS 2004: Second Asian Symposium on Programming Languages and Systems, Springer
    • Lindahl T., and Sagonas K. Detecting software defects in telecom applications through lightweight static analysis: a war story. APLAS 2004: Second Asian Symposium on Programming Languages and Systems. Lecture Notes in Computer Science vol. 3302 (2004), Springer 91-106
    • (2004) Lecture Notes in Computer Science , vol.3302 , pp. 91-106
    • Lindahl, T.1    Sagonas, K.2
  • 42
    • 31844436753 scopus 로고    scopus 로고
    • Mandelin, D., Xu, L., Bodík, R., Kimelman, D., 2005. Jungloid mining: helping to navigate the api jungle. In: PLDI'05: Proceedings of the 2005 ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 48-61.
  • 43
    • 34248510473 scopus 로고    scopus 로고
    • Marinov, D., Khurshid, S., 2001. TestEra: A novel framework for automated testing of Java programs. In: ASE'01: Proceedings of the 16th IEEE International Conference on Automated Software Engineering. IEEE Computer Society, Washington, DC, USA, p. 22.
  • 46
    • 23744480722 scopus 로고    scopus 로고
    • Reimer, D., Schonberg, E., Srinivas, K., Srinivasan, H., Alpern, B., Johnson, R.D., Kershenbaum, A., Koved, L., 2004. SABER: Smart analysis based error reduction. In: ISSTA'04: Proceedings of the 2004 ACM SIGSOFT International Symposium on Software Testing and Analysis, pp. 243-251.
  • 47
    • 16244364044 scopus 로고    scopus 로고
    • Rutar, N., Almazan, C.B., Foster, J.S., 2004. A comparison of bug finding tools for Java. In: ISSRE'04: Proceedings of the 15th International Symposium on Software Reliability Engineering (ISSRE'04), pp. 245-256.
  • 48
    • 0346026383 scopus 로고    scopus 로고
    • Notable design patterns for domain specific languages
    • Spinellis D. Notable design patterns for domain specific languages. J. Syst. Software 56 1 (2001) 91-99
    • (2001) J. Syst. Software , vol.56 , Issue.1 , pp. 91-99
    • Spinellis, D.1
  • 51
    • 84949505015 scopus 로고    scopus 로고
    • Viega, J., Bloch, J.T., Kohno, Y., McGraw, G., 2000. ITS4: A static vulnerability scanner for C and C++ code. In: ACSAC'00: Proceedings of the 16th Annual Computer Security Applications Conference, p. 257.
  • 52
    • 85050273691 scopus 로고    scopus 로고
    • Weiser, M., 1981. Program slicing. In: ICSE'81: Proceedings of the 5th International Conference on Software Engineering, pp. 439-449.


* 이 정보는 Elsevier사의 SCOPUS DB에서 KISTI가 분석하여 추출한 것입니다.