ABSTRACT
We present a web-based Program Analysis Collaboratory (PAClab) tool that helps researchers to obtain realistic program benchmarks using user-defined selection criteria. Based on selection criteria, PAClab identifies relevant projects and its programs from open-source repositories, obtains those programs, and if necessary performs sound program transformations to adapt them to the targeted verification tool. PAClab makes the resulting program benchmarks available for download. PAClab is designed as a scalable, modular, and parametrizable tool that takes advantage of a computer cluster to handle multiple user requests.
Supplemental Material
- Robert Dyer, Hoan Anh Nguyen, Hridesh Rajan, and Tien N. Nguyen. 2013. Boa: A Language and Infrastructure for Analyzing Ultra-Large-Scale Software Repositories. In Proceedings of the 35th International Conference on Software Engineering (San Francisco, CA) ( ICSE'13). IEEE Press, 422-431. https://doi.org/10.1109/ICSE. 2013.6606588 Google ScholarCross Ref
- Georgios Gousios. 2013. The GHTorrent dataset and tool suite. In Proceedings of the 10th Working Conference on Mining Software Repositories (San Francisco, CA, USA) ( MSR '13). IEEE Press, Piscataway, NJ, USA, 233-236. https://doi.org/10. 1109/MSR. 2013.6624034 Google ScholarCross Ref
- Timotej Kapus and Cristian Cadar. 2017. Automatic Testing of Symbolic Execution Engines via Program Generation and Diferential Testing. In Proceedings of the 32nd IEEE/ACM International Conference on Automated Software Engineering (UrbanaChampaign, IL, USA) ( ASE 2017). IEEE Press, Piscataway, NJ, USA, 590-600. https: //doi.org/10.1109/ASE. 2017.8115669 Google ScholarCross Ref
- Pedro Martins, Rohan Achar, and Cristina V. Lopes. 2018. 50K-C: A Dataset of Compilable, and Compiled, Java Projects. In Proceedings of the 15th International Conference on Mining Software Repositories (Gothenburg, Sweden) (MSR'18). ACM, 1-5. https://doi.org/10.1145/3196398.3196450 Google ScholarDigital Library
- Nuthan Munaiah, Steven Kroh, Craig Cabrey, and Meiyappan Nagappan. 2017. Curating GitHub for engineered software projects. Empirical Software Engineering 22, 6 ( 01 Dec 2017 ), 3219-3253. https://doi.org/10.1007/s10664-017-9512-6 Google ScholarDigital Library
- Corina S. Păsăreanu and Neha Rungta. 2010. Symbolic PathFinder: Symbolic Execution of Java Bytecode. In Proceedings of the IEEE/ACM International Conference on Automated Software Engineering (Antwerp, Belgium) (ASE '10). ACM, New York, NY, USA, 179-180. https://doi.org/10.1145/1858996.1859035 Google ScholarDigital Library
- Michael Reif, Michael Eichberg, Ben Hermann, and Mira Mezini. 2017. Hermes: Assessment and Creation of Efective Test Corpora. In Proceedings of the 6th ACM SIGPLAN International Workshop on State Of the Art in Program Analysis (Barcelona, Spain) (SOAP 2017 ). ACM, New York, NY, USA, 43-48. https://doi.org/10.1145/ 3088515.3088523 Google ScholarDigital Library
- Elena Sherman and Robert Dyer. 2018. Software Engineering Collaboratories (SEClabs) and Collaboratories As a Service (CaaS). In Proceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering (Lake Buena Vista, FL, USA) ( ESEC/FSE 2018). ACM, New York, NY, USA, 760-764. https://doi.org/10.1145/3236024.3264839 Google ScholarDigital Library
- Xuejun Yang, Yang Chen, Eric Eide, and John Regehr. 2011. Finding and Understanding Bugs in C Compilers. In Proceedings of the 32nd ACM SIGPLAN Conference on Programming Language Design and Implementation (San Jose, California, USA) ( PLDI '11). ACM, New York, NY, USA, 283-294. https://doi.org/10.1145/1993498. 1993532 Google ScholarDigital Library
Index Terms
- PAClab: a program analysis collaboratory
Recommendations
Understanding the value of program analysis tools
OOPSLA '07: Companion to the 22nd ACM SIGPLAN conference on Object-oriented programming systems and applications companionIt is difficult to determine the cost effectiveness of program analysis tools because we cannot evaluate them in the same environment where we will be using the tool. Tool evaluations are usually run on mature, stable code after it has passed developer ...
Facilitating collaborative biomedical research
GROUP '07: Doctoral Consortium Papers of the 2007 ACM International Conference on Supporting Group WorkA thorough study of biomedical research collaboration is necessary to systematically identify the social and technical infrastructure needed to support and improve the development of informatics tools to facilitate biomedical collaboration. This ...
Metadata in the collaboratory for multi-scale chemical science
DCMI '03: Proceedings of the 2003 international conference on Dublin Core and metadata applications: supporting communities of discourse and practice---metadata research & applicationsThe goal of the Collaboratory for the Multi-scale Chemical Sciences (CMCS) [1] is to develop an informatics-based approach to synthesizing multi-scale chemistry information to create knowledge in the chemical sciences. CMCS is using a portal and ...
Comments