2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011) (2006)
Sept. 18, 2006 to Sept. 22, 2006
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/ASE.2006.63
En Ye , Ohio University
Chang Liu , Ohio University
Debra J. Richardson , University of California, Irvine
The need to manually specify temporal properties of software systems is a major barrier to wider adoption of software model checking, because the specification of software temporal properties is a difficult, time-consuming, and error-prone process. To address this problem, we propose to automatically extract software library usage patterns, which are one type of temporal specifications. Our approach uses a model checker to check a set of software library usage pattern candidates against existing programs using that library, and identifies valid patterns based on model checking results. These valid patterns can help programmers learn about common software library usage. They can also be used to check new programs using the same library. We applied our approach to C programs using the OpenSSL library and the C standard library, and extracted valid usage patterns using BLAST. We also successfully used the extracted valid usage patterns to detect an error in an open source project hosted by SourceForge.net.
En Ye, Chang Liu, Debra J. Richardson, "Software Library Usage Pattern Extraction Using a Software Model Checker", 2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011), vol. 00, no. , pp. 301-304, 2006, doi:10.1109/ASE.2006.63