skip to main content
10.1145/2901739.2901768acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Comparing repositories visually with repograms

Published: 14 May 2016 Publication History

Abstract

The availability of open source software projects has created an enormous opportunity for software engineering research. However, this availability requires that researchers judiciously select an appropriate set of evaluation targets and properly document this rationale. After all, the choice of targets may have a significant effect on evaluation.
We developed a tool called RepoGrams to support researchers in qualitatively comparing and contrasting software projects over time using a set of software metrics. RepoGrams uses an extensible, metrics-based, visualization model that can be adapted to a variety of analyses. Through a user study of 14 software engineering researchers we found that RepoGrams can assist researchers in filtering candidate software projects and make more reasoned choices of targets for their evaluations. The tool is open source and is available online: http://repograms.net/

References

[1]
An extendable open source automation server. https://jenkins-ci.org.
[2]
AngularJS - Superheroic JavaScript MVW Framework. https://angularjs.org.
[3]
Ansible is Simple IT Automation. https://www.ansible.com/.
[4]
DB Browser for SQLite project. https://github.com/sqlitebrowser/sqlitebrowser.
[5]
Flickr uploading tool for GNOME. https://github.com/GNOME/postr.
[6]
jQuery. https://jquery.com/.
[7]
Summarizing Software Artifacts. https://www.cs.ubc.ca/cs-research/software-practices-lab/projects/summarizing-software-artifacts.
[8]
Welcome to Apache Maven. http://maven.apache.org/.
[9]
C. Bird, N. Nagappan, B. Murphy, H. Gall, and P. Devanbu. Don't touch my code!: Examining the effects of ownership on software quality. In Proceedings of the 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering, ESEC/FSE '11, pages 4--14, 2011.
[10]
C. A. Brewer. ColorBrewer2. http://colorbrewer2.org/.
[11]
K. Chen, P. Liu, and Y. Zhang. Achieving Accuracy and Scalability Simultaneously in Detecting Application Clones on Android Markets. In ICSE, 2014.
[12]
C. Collberg, S. Kobourov, J. Nagra, J. Pitts, and K. Wampler. A system for graph-based visualization of the evolution of software. In Proceedings of the 2003 ACM Symposium on Software Visualization, SoftVis '03, pages 77--ff, New York, NY, USA, 2003. ACM.
[13]
M. D'Ambros, H. Gall, M. Lanza, and M. Pinzger. Analysing software repositories to understand software evolution. In Software evolution, pages 37--67. Springer Berlin Heidelberg, 2008.
[14]
M. D'Ambros, M. Lanza, and H. Gall. Fractal figures: Visualizing development effort for cvs entities. In Visualizing Software for Understanding and Analysis, 2005. VISSOFT 2005. 3rd IEEE International Workshop on, pages 1--6, 2005.
[15]
M. D'Ambros, M. Lanza, and M. Lungu. The Evolution Radar: Visualizing Integrated Logical Coupling Information. In MSR, 2006.
[16]
S. Diehl. Software Visualization: Visualizing the Structure, Behaviour, and Evolution of Software. Springer, 2010.
[17]
R. Dyer, H. A. Nguyen, H. Rajan, and T. N. Nguyen. Boa: A language and infrastructure for analyzing ultra-large-scale software repositories. In ICSE, 2013.
[18]
M. Foucault, M. Palyart, X. Blanc, G. C. Murphy, and J.-R. Falleri. Impact of Developer Turnover on Quality in Open-source Software. In ESEC/FSE, 2015.
[19]
M. Foucault, M. Palyart, J.-R. Falleri, and X. Blanc. Computing contextual metric thresholds. In Proceedings of the 29th Annual ACM Symposium on Applied Computing, 2014.
[20]
T. Girba, A. Kuhn, M. Seeberger, and S. Ducasse. How developers drive software evolution. In Proceedings of the Eighth International Workshop on Principles of Software Evolution, IWPSE '05, pages 113--122, Washington, DC, USA, 2005. IEEE Computer Society.
[21]
G. Gousios. The ghtorent dataset and tool suite. In Proceedings of the 10th Working Conference on Mining Software Repositories, MSR '13, pages 233--236, Piscataway, NJ, USA, 2013. IEEE Press.
[22]
G. Gousios, B. Vasilescu, A. Serebrenik, and A. Zaidman. Lean ghtorrent: Github data on demand. In Proceedings of the 11th Working Conference on Mining Software Repositories, MSR 2014, pages 384--387, New York, NY, USA, 2014. ACM.
[23]
K. Herzig and A. Zeller. The Impact of Tangled Code Changes. In MSR, 2013.
[24]
R. Just, D. Jalali, and M. D. Ernst. Defects4J: A database of existing faults to enable controlled testing studies for Java programs. In Proceedings of the International Symposium on Software Testing and Analysis (ISSTA), pages 437--440, San Jose, CA, USA, July 23--25 2014.
[25]
E. Kalliamvakou, G. Gousios, K. Blincoe, L. Singer, D. M. German, and D. Damian. The promises and perils of mining github. In Proceedings of the 11th Working Conference on Mining Software Repositories, MSR 2014, New York, NY, USA, 2014. ACM.
[26]
M. Lanza. The evolution matrix: Recovering software evolution using software visualization techniques. In Proceedings of the 4th International Workshop on Principles of Software Evolution, IWPSE '01, pages 37--42, New York, NY, USA, 2001. ACM.
[27]
M. Lungu, M. Lanza, T. Gîrba, and R. Robbes. The Small Project Observatory: Visualizing Software Ecosystems. Sci. Comput. Program., 75(4):264--275, Apr. 2010.
[28]
T. Mens and S. Demeyer. Future trends in software evolution metrics. In Proceedings of the 4th International Workshop on Principles of Software Evolution, IWPSE '01, pages 83--86, New York, NY, USA, 2001. ACM.
[29]
C. Metz. How github conquered google, microsoft, and everyone else. http://www.wired.com/2015/03/github-conquered-google-microsoft-everyone-else/.
[30]
T. Munzner. Visualization Analysis and Design. CRC Press, 2014.
[31]
M. Nagappan, T. Zimmermann, and C. Bird. Diversity in software engineering research. In Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering, ESEC/FSE 2013, pages 466--476, New York, NY, USA, 2013. ACM.
[32]
D. L. Parnas. Classics in Software Engineering. chapter On the Criteria to Be Used in Decomposing Systems into Modules, pages 139--150. Yourdon Press, Upper Saddle River, NJ, USA, 1979.
[33]
M. Pinzger, H. Gall, M. Fischer, and M. Lanza. Visualizing multiple evolution metrics. In Proceedings of the 2005 ACM symposium on Software visualization, pages 67--75. ACM, 2005.
[34]
F. Rahman and P. Devanbu. Ownership, Experience and Defects: A Fine-grained Study of Authorship. In ICSE, 2011.
[35]
S. Rastkar, G. C. Murphy, and G. Murray. Summarizing software artifacts: A case study of bug reports. In ICSE, 2010.
[36]
B. Ray, D. Posnett, V. Filkov, and P. Devanbu. A large scale study of programming languages and code quality in github. In Proceedings of the 22Nd ACM SIGSOFT International Symposium on Foundations of Software Engineering, FSE 2014, New York, NY, USA, 2014. ACM.
[37]
D. Rozenberg, I. Beschastnikh, F. Kosmale, V. Poser, H. Becker, M. Palyart, and G. C. Murphy. RepoGrams evaluation details. http://repograms.net/msr2016.
[38]
F. Servant and J. A. Jones. History slicing: Assisting code-evolution tasks. In Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering, FSE '12, pages 43:1--43:11, New York, NY, USA, 2012. ACM.
[39]
F. Sokol, M. Finavaro Aniche, and M. Gerosa. Metricminer: Supporting researchers in mining software repositories. In Source Code Analysis and Manipulation (SCAM), 2013 IEEE 13th International Working Conference on, pages 142--146, Sept 2013.
[40]
C. Taylor and M. Munro. Revision towers. In Visualizing Software for Understanding and Analysis, 2002. Proceedings. First International Workshop on, pages 43--50, 2002.
[41]
E. Tempero, C. Anslow, J. Dietrich, T. Han, J. Li, M. Lumpe, H. Melton, and J. Noble. Qualitas corpus: A curated collection of java code for empirical studies. In 2010 Asia Pacific Software Engineering Conference (APSEC2010), pages 336--345, Dec. 2010.
[42]
C. Treude and M. Storey. Work item tagging: Communicating concerns in collaborative software development. Software Engineering, IEEE Transactions on, 38(1):19--34, Jan 2012.
[43]
L. Voinea and A. Telea. An Open Framework for CVS Repository Querying, Analysis and Visualization. In MSR, 2006.
[44]
S. L. Voinea and A. Telea. CVSgrab: Mining the History of Large Software Projects. In EuroVis, 2006.
[45]
J. Warner. Top 100 most popular languages on github. https://jaxbot.me/articles/github-most-popular-languages, July 2014.
[46]
J. Wu, R. Holt, and A. Hassan. Exploring software evolution using spectrographs. In Reverse Engineering, 2004. Proceedings. 11th Working Conference on, pages 80--89, Nov 2004.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
MSR '16: Proceedings of the 13th International Conference on Mining Software Repositories
May 2016
544 pages
ISBN:9781450341868
DOI:10.1145/2901739
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 14 May 2016

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article

Funding Sources

Conference

ICSE '16
Sponsor:

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)16
  • Downloads (Last 6 weeks)0
Reflects downloads up to 06 Jan 2025

Other Metrics

Citations

Cited By

View all

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media