Publication | Closed Access
Software Library Usage Pattern Extraction Using a Software Model Checker
25
Citations
7
References
2006
Year
Unknown Venue
Software MaintenanceEngineeringVerificationSoftware Temporal PropertiesSoftware EngineeringSource Code AnalysisSoftware AnalysisFormal VerificationData ScienceData MiningStatic CheckingSoftware Model CheckerAnalysis PatternSoftware Model CheckingSoftware MiningDependency AnalysisRuntime VerificationApplication AnalysisComputer ScienceStatic Program AnalysisSoftware DesignProgram AnalysisSoftware TestingFormal MethodsSystem SoftwareTemporal Properties
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
| Year | Citations | |
|---|---|---|
Page 1
Page 1