Minimal representation of directed hypergraphs
SIAM Journal on Computing
Advances in Petri nets 1986, part II on Petri nets: applications and relationships to other models of concurrency
Graph Algorithms for Functional Dependency Manipulation
Journal of the ACM (JACM)
Abstracting dependencies between software configuration items
ACM Transactions on Software Engineering and Methodology (TOSEM)
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
OPIUM: Optimal Package Install/Uninstall Manager
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Strong dependencies between software components
ESEM '09 Proceedings of the 2009 3rd International Symposium on Empirical Software Engineering and Measurement
Using strong conflicts to detect quality issues in component-based complex systems
Proceedings of the 3rd India software engineering conference
Feature diagrams as package dependencies
SPLC'10 Proceedings of the 14th international conference on Software product lines: going beyond
Engage: a deployment management system
Proceedings of the 33rd ACM SIGPLAN conference on Programming Language Design and Implementation
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 |
Modern software systems are built by composing components drawn from large repositories, whose size and complexity is increasing at a very fast pace. A fundamental challenge for the maintainability and the scalability of such software systems is the ability to quickly identify the components that can or cannot be installed together: this is the co-installability problem, which is related to boolean satisfiability and is known to be algorithmically hard. This paper develops a novel theoretical framework, based on formally certified. semantic preserving graph-theoretic transformations, that allows to associate to each concrete component repository a much smaller one with a simpler structure, but with equivalent co-installability properties. This smaller repository can be represented graphically, giving a concise view of the co-installability issues in the original repository, or used as a basis for various algorithms related to co-installability, like the efficient computation of strong conflicts between components. The proofs contained in this work have been machine checked in Coq.