CSDL Home A ASE 2006 Proceedings. 21st IEEE International Conference on Automated Software Engineering
Sept. 18, 2006 to Sept. 22, 2006
Chang Liu , Ohio University
En Ye , Ohio University
Debra J. Richardson , University of California, Irvine
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/ASE.2006.63
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.
Chang Liu, En Ye, Debra J. Richardson, "Software Library Usage Pattern Extraction Using a Software Model Checker", ASE, 2006, Proceedings. 21st IEEE International Conference on Automated Software Engineering, Proceedings. 21st IEEE International Conference on Automated Software Engineering 2006, pp. 301-304, doi:10.1109/ASE.2006.63