Space efficient conservative garbage collection
PLDI '93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation
Software—Practice & Experience
Essential COM
Software release management for component-based software
Software—Practice & Experience
ICSR-7 Proceedings of the 7th International Conference on Software Reuse: Methods, Techniques, and Tools
Component technology: what, where, and how?
Proceedings of the 25th International Conference on Software Engineering
Techniques for Independent Deployment to Build Product Populations
WICSA '01 Proceedings of the Working IEEE/IFIP Conference on Software Architecture
Package-Based Software Development
EUROMICRO '03 Proceedings of the 29th Conference on EUROMICRO
Managing the evolution of distributed and interrelated components
SCM'01/SCM'03 Proceedings of the 2001 ICSE Workshops on SCM 2001, and SCM 2003 conference on Software configuration management
Nix: A Safe and Policy-Free System for Software Deployment
LISA '04 Proceedings of the 18th USENIX conference on System administration
Secure sharing between untrusted users in a transparent source/binary deployment model
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
Service configuration management
Proceedings of the 12th international workshop on Software configuration management
Improving the customer configuration update process by explicitly managing software knowledge
Proceedings of the 28th international conference on Software engineering
Purely functional system configuration management
HOTOS'07 Proceedings of the 11th USENIX workshop on Hot topics in operating systems
NixOS: a purely functional Linux distribution
Proceedings of the 13th ACM SIGPLAN international conference on Functional programming
WebDSL: A Case Study in Domain-Specific Language Engineering
Generative and Transformational Techniques in Software Engineering II
Atomic upgrading of distributed systems
Proceedings of the 1st International Workshop on Hot Topics in Software Upgrades
Software deployment in a dynamic cloud: From device to service orientation in a hospital environment
CLOUD '09 Proceedings of the 2009 ICSE Workshop on Software Engineering Challenges of Cloud Computing
Developing Product Lines with Third-Party Components
Electronic Notes in Theoretical Computer Science (ENTCS)
Electronic Notes in Theoretical Computer Science (ENTCS)
ICSP'10 Proceedings of the 2010 international conference on New modeling concepts for today's software processes: software process
Nixos: A purely functional linux distribution
Journal of Functional Programming
Finding software license violations through binary code clone detection
Proceedings of the 8th Working Conference on Mining Software Repositories
An empirical study of build maintenance effort
Proceedings of the 33rd International Conference on Software Engineering
A self-adaptive deployment framework for service-oriented systems
Proceedings of the 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems
Efficient upgrading in a purely functional component deployment model
CBSE'05 Proceedings of the 8th international conference on Component-Based Software Engineering
ICDCIT'06 Proceedings of the Third international conference on Distributed Computing and Internet Technology
CD'05 Proceedings of the Third international working conference on Component Deployment
Report on the fourth workshop on hot topics in software upgrades (HotSWUp 2012)
ACM SIGOPS Operating Systems Review
Disnix: A toolset for distributed deployment
Science of Computer Programming
Hi-index | 0.00 |
The deployment of software components frequently failsbecause dependencies on other components are not declaredexplicitly or are declared imprecisely. This resultsin an incomplete reproduction of the environment necessaryfor proper operation, or in interference between incompatiblevariants. In this paper we show that these deploymenthazards are similar to pointer hazards in memory models ofprogramming languages and can be countered by imposinga memory management discipline on software deployment.Based on this analysis we have developed a generic, platformand language independent, discipline for deploymentthat allows precise dependency verification; exact identification of component variants; computation of complete closures containing all components on which a component depends;maximal sharing of components between such closures;and concurrent installation of revisions and variantsof components. We have implemented the approach in theNix deployment system, and used it for the deployment of alarge number of existing Linux packages. We compare its effectivenessto other deployment systems.