Program evolution: processes of software change
Program evolution: processes of software change
Component software: beyond object-oriented programming
Component software: beyond object-oriented programming
Predicting Fault Incidence Using Software Change History
IEEE Transactions on Software Engineering
Managing the Complexity of Large Free and Open Source Package-Based Software Distributions
ASE '06 Proceedings of the 21st IEEE/ACM International Conference on Automated Software Engineering
Using Software Dependencies and Churn Metrics to Predict Field Failures: An Empirical Case Study
ESEM '07 Proceedings of the First International Symposium on Empirical Software Engineering and Measurement
IEEE Transactions on Software Engineering
Predicting vulnerable software components
Proceedings of the 14th ACM conference on Computer and communications security
Journal of Software Maintenance and Evolution: Research and Practice
Predicting defects using network analysis on dependency graphs
Proceedings of the 30th international conference on Software engineering
Macro-level software evolution: a case study of a large software compilation
Empirical Software Engineering
Strong dependencies between software components
ESEM '09 Proceedings of the 2009 3rd International Symposium on Empirical Software Engineering and Measurement
Speculative analysis: exploring future development states of software
Proceedings of the FSE/SDP workshop on Future of software engineering research
Predicting upgrade failures using dependency analysis
ICDEW '11 Proceedings of the 2011 IEEE 27th International Conference on Data Engineering Workshops
Bootstrapping software distributions
Proceedings of the 16th International ACM Sigsoft symposium on Component-based software engineering
Broken sets in software repository evolution
Proceedings of the 2013 International Conference on Software Engineering
On software component co-installability
ACM Transactions on Software Engineering and Methodology (TOSEM) - Testing, debugging, and error handling, formal methods, lifecycle concerns, evolution and maintenance
Hi-index | 0.00 |
An important aspect of the quality assurance of large component repositories is the logical coherence of component metadata. We argue that it is possible to identify certain classes of such problems by checking relevant properties of the possible future repositories into which the current repository may evolve. In order to make a complete analysis of all possible futures effective however, one needs a way to construct a finite set of representatives of this infinite set of potential futures. We define a class of properties for which this can be done. We illustrate the practical usefulness of the approach with two quality assurance applications: (i) establishing the amount of "forced upgrades" induced by introducing new versions of existing components in a repository, and (ii) identifying outdated components that need to be upgraded in order to ever be installable in the future. For both applications we provide experience reports obtained on the Debian distribution.