A segmentation-based approach for temporal analysis of software version repositories

Harvey Siy, Parvathi Chundi, Daniel J. Rosenkrantz, Mahadevan Subramaniam

Research output: Contribution to journalArticle

5 Scopus citations

Abstract

Time series segmentation is a promising approach to discover temporal patterns from time-stamped numeric data. A novel approach to apply time series segmentation to discern temporal information from software version repositories is proposed. Data from such repositories, both numeric and non-numeric, are represented as item-set time series data. A dynamic programming algorithm for optimal segmentation is presented. The algorithm automatically produces a compacted item-set time series that can be analyzed to identify temporal patterns. The effectiveness of the approach is illustrated by analyzing version control repositories of several open-source projects to identify time-varying patterns of developer activity. The experimental results show that the segmentation algorithm produces segments that capture meaningful information and is superior to the information content obtained by arbitrarily segmenting software history into regular time intervals.

Original languageEnglish (US)
Pages (from-to)199-222
Number of pages24
JournalJournal of Software Maintenance and Evolution
Volume20
Issue number3
DOIs
Publication statusPublished - May 1 2008

    Fingerprint

Keywords

  • Change analysis
  • Mining software repositories
  • Open-source development
  • Temporal analysis; software evolution
  • Time series segmentation
  • Version control systems

ASJC Scopus subject areas

  • Software

Cite this