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 language | English (US) |
---|---|
Pages (from-to) | 199-222 |
Number of pages | 24 |
Journal | Journal of Software Maintenance and Evolution |
Volume | 20 |
Issue number | 3 |
DOIs | |
State | Published - May 2008 |
Keywords
- Change analysis
- Mining software repositories
- Open-source development
- Temporal analysis; software evolution
- Time series segmentation
- Version control systems
ASJC Scopus subject areas
- Software