Candoia: A Platform for Building and Sharing Mining Software Repositories Tools as Apps

By: Nitin M. Tiwari, Ganesha Upadhyaya, Hoan Anh Nguyen, and Hridesh Rajan

PDF Download Download Paper

Abstract

We propose Candoia, a novel platform and ecosys- tem for building and sharing Mining Software Repositories (MSR) tools. Using Candoia, MSR tools are built as apps, and Candoia ecosystem, acting as an appstore, allows effective sharing. Candoia platform provides, data extraction tools for curating custom datasets for user projects, and data abstractions for enabling uniform access to MSR artifacts from disparate sources, which makes apps portable and adoptable across diverse software project settings of MSR researchers and practitioners. The structured design of a Candoia app and the languages selected for building various components of a Candoia app promotes easy customization. To evaluate Candoia we have built over two dozen MSR apps for analyzing bugs, software evolution, project management aspects, and source code and programming practices showing the applicability of the platform for building a variety of MSR apps. For testing portability of apps across diverse project settings, we tested the apps using ten popular project repositories, such as Apache Tomcat, JUnit, Node.js, etc, and found that apps required no changes to be portable. We performed a user study to test customizability and we found that five of eight Candoia users found it very easy to customize an existing app. Candoia is available for download.

ACM Reference

Tiwari, N.M. et al. 2017. Candoia: A Platform for Building and Sharing Mining Software Repositories Tools as Apps. Proceedings of the 14th International Conference on Mining Software Repositories, MSR, Buenos Aires, Argentina (2017), 53–63.

BibTeX Reference

@inproceedings{TiwariUpadhyayaNguyenRajan2017,
  author = {Nitin M. Tiwari and Ganesha Upadhyaya and Hoan Anh Nguyen and Hridesh Rajan},
  title = {Candoia: A Platform for Building and Sharing Mining Software Repositories Tools as Apps},
  booktitle = {Proceedings of the 14th International Conference on Mining Software Repositories, MSR, Buenos Aires, Argentina},
  pages = {53--63},
  year = {2017},
  publisher = {{IEEE} Computer Society},
  editor = {Jes{\'{u}}s M. Gonz{\'{a}}lez{-}Barahona and Abram Hindle and Lin Tan},
  doi = {10.1109/MSR.2017.56},
  abstract = {
  We propose Candoia, a novel platform and ecosys- tem for building and sharing
  Mining Software Repositories (MSR) tools. Using Candoia, MSR tools are built as
  apps, and Candoia ecosystem, acting as an appstore, allows effective sharing.
  Candoia platform provides, data extraction tools for curating custom datasets
  for user projects, and data abstractions for enabling uniform access to MSR
  artifacts from disparate sources, which makes apps portable and adoptable across
  diverse software project settings of MSR researchers and practitioners. The
  structured design of a Candoia app and the languages selected for building
  various components of a Candoia app promotes easy customization. To evaluate
  Candoia we have built over two dozen MSR apps for analyzing bugs, software
  evolution, project management aspects, and source code and programming practices
  showing the applicability of the platform for building a variety of MSR apps.
  For testing portability of apps across diverse project settings, we tested the
  apps using ten popular project repositories, such as Apache Tomcat, JUnit,
  Node.js, etc, and found that apps required no changes to be portable. We
  performed a user study to test customizability and we found that five of eight
  Candoia users found it very easy to customize an existing app. Candoia is
  available for download.},
}