ABSTRACT
One of the most successful applications of static analysis based bug finding tools is to search the source code for violations of system-specific rules. These rules may describe how functions interact in the code, how data is to be validated or how an API is to be used. To apply these tools, the developer must encode a rule that must be followed in the source code. The difficulty is that many of these system-specific rules are undocumented and "grow" over time as the source code changes. Most research in this area relies on expert programmers to document these little-known rules. In this paper we discuss a method to automatically recover a subset of these rules, function usage patterns, by mining the software repository. We present a preliminary study that applies our work to a large open source software project.
- Edison Design Group, http://www.edg.com/cpp.htmlGoogle Scholar
- Engler, D., Chelf, B., Chou, A., Hallem, S., Checking System Rules Using System Specific, Programmer-Written Compiler Extensions. In Proceedings of the Fourth Symposium on Operating Systems Design and Implementation, San Diego, CA, October 2000. Google ScholarDigital Library
- Engler, D., Chen, D. Y., Hallem, S., Chou, A., Chelf, B., Bugs as Deviant Behavior: A General Approach to Inferring Errors in Systems Code, In Proceedings of the ACM symposium on Operating Systems Principles, Banff, Canada, Oct 2001. Google ScholarDigital Library
- Gutwin, C., Penner, R., Schneider, K., Group Awareness in Distributed Software Development, In Proceedings of ACM Conference on Computer Supported Cooperative Work, Chicago, IL, Nov 2004. Google ScholarDigital Library
- Matsumura, T., Monden, A., Matsumoto, K., The Detection of Faulty Code Violating Implicit Coding Rules, Proceedings of the International Workshop on Principles of Software Evolution (IWPSE '02), Orlando, FL, USA, May 2002. Google ScholarDigital Library
- Pinzger, M., Gall, H., Pattern-supported architecture recovery. In Proceedings of the International Workshop on Program Comprehension (IWPC'02), Paris, France, June 2002. Google ScholarDigital Library
- Rysselberghe, F., Demeyer, S., Mining Version Control Systems for FACs (Frequently Applied Changes), Proceedings of International Workshop on Mining Software Repositories (MSR '04), Edinburgh, Scotland, UK, May 2004. Google ScholarDigital Library
- TouchGraph LinkBrowser, Available online at http://touchgraph.sourceforge.netGoogle Scholar
- Williams, C. C., Hollingsworth, J. K., Bug Driven Bug Finders, In Proceedings of International Workshop on Mining Software Repositories (MSR '04), Edinburgh, Scotland, UK, May 2004.Google Scholar
- Wine, Available online at http://www.winehq.orgGoogle Scholar
Index Terms
- Recovering system specific rules from software repositories
Recommendations
Recovering system specific rules from software repositories
One of the most successful applications of static analysis based bug finding tools is to search the source code for violations of system-specific rules. These rules may describe how functions interact in the code, how data is to be validated or how an ...
Recovering business rules from legacy source code for system modernization
RuleML'07: Proceedings of the 2007 international conference on Advances in rule interchange and applicationsBy using several reverse engineering tools and techniques, it is possible to extract business rules from the legacy source code that are easy to understand by the non-IT experts. These business rules can be used at different stages of system ...
Recovering Business Rules from Legacy Source Code for System Modernization
Advances in Rule Interchange and ApplicationsAbstractBy using several reverse engineering tools and techniques, it is possible to extract business rules from the legacy source code that are easy to understand by the non-IT experts. These business rules can be used at different stages of system ...
Comments