2008 · 38 citations · 13 references
ComputingComputer ScienceQuality EngineeringRequirements EngineeringSoftware EngineeringComponent-based Software EngineeringConfiguration ManagementSoftware ArchitectureSoftware DesignSoftware EvolutionVersion ControlComponent VersioningConfiguration Management ProcessLogical ConstraintsSoftware Product ConfigurationSoftware Product LinesSoftware VersioningVersion PreservationVersioning
A key process in software product line (SPL) engineering is product derivation, which is the process of building software products from a base set of core assets. During product derivation, the components in both core assets and derived software products are modified to meet needs for different functionality, platforms, quality attributes, etc. However, existing software configuration management (SCM) systems do not sufficiently support the derivation process in SPL. In this paper, we introduce a novel SCM system that is well-suited for product derivation in SPL. Our tool, MoSPL handles version management at the component level via its product versioning and data models. It explicitly manages logical constraints and derivation relations among components in both core assets and derived products, thus enabling the automatic propagation of changes in the core assets to their copies in derived products and vice versa. The system can also detect conflicting changes to different copies of components in software product lines.
13
The source code control system
Marc Rochkind · IEEE Transactions on Software Engineering · 1975 · 711 citations
The Koala component model for consumer electronics software
Rob van Ommering, Frank van der Linden, Jeff Kramer et al. · Computer · 2000 · 708 citations
Building product populations with software components
Rob van Ommering · 2002 · 194 citations
Dewayne E. Perry · 1989 · 147 citations