作者: Kevin Bierhoff , Nels E. Beckman , Jonathan Aldrich
DOI: 10.1007/978-3-642-03013-0_10
关键词:
摘要: Reusable APIs often define usage protocols. We previously developed a sound modular type system that checks compliance with typestate-based protocols while affording great deal of aliasing flexibility. also Plural, prototype tool embodies our approach as an automated static analysis and includes several extensions we found useful in practice. This paper evaluates along the following dimensions: (1) report on experience specifying relevant rules for large Java standard API approach. specify other identify recurring patterns. (2) summarize two case studies verifying third-party open-source code bases few false positives using tool. discuss how shortcomings can be addressed either refactorings or to itself. These results indicate used enforce real