Title :
Software Library Usage Pattern Extraction Using a Software Model Checker
Author :
Liu, Chang ; Ye, En ; Richardson, Debra J.
Author_Institution :
Sch. of Electr. Eng. & Comput. Sci., Ohio Univ., Athens, OH
Abstract :
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
Keywords :
application program interfaces; data mining; formal specification; formal verification; software libraries; BLAST; C library; C programs; OpenSSL library; software library usage pattern extraction; software model checker; software temporal property specification; Application software; Computer errors; Computer science; Data mining; Documentation; Logic; Programming profession; Software libraries; Software quality; Software systems;
Conference_Titel :
Automated Software Engineering, 2006. ASE '06. 21st IEEE/ACM International Conference on
Conference_Location :
Tokyo
Print_ISBN :
0-7695-2579-2
DOI :
10.1109/ASE.2006.63