2007 · 92 citations · 9 references
ComputingSystems EngineeringFeature EngineeringSoftware EngineeringSystems ModelingModel-driven DevelopmentModel-driven Software EngineeringProduct DevelopmentSoftware ArchitectureSoftware DesignSoftware ModelingAspect-oriented ModelingAspect-oriented ProgrammingFeature ModelsHome Automation SystemsProduct Line ApproachSoftware Development LifecycleSoftware Product LinesTransformations
Software product line engineering aims to reduce development time, effort, cost, and complexity by taking advantage of the commonality within a portfolio of similar products. The effectiveness of a software product line approach directly depends on how well feature variability within the portfolio is implemented and managed throughout the development lifecycle, from early analysis through maintenance and evolution. This paper presents an approach that facilitates variability implementation, management and tracing by integrating model-driven and aspect-oriented software development. Features are separated in models and composed by aspect-oriented composition techniques on model level. Model transformations support the transition from problem to solution domain. Aspect-oriented techniques enable the explicit expression and modularization of variability on model, code, and template level The presented concepts are illustrated with a case study of a home automation system.
9
Gregor Kiczales, Erik Hilsdale, Jim Hugunin et al. · Communications of the ACM · 2001 · 540 citations · Full text
Michał Antkiewicz, Krzysztof Czarnecki · 2004 · 222 citations
Sven Apel, Thomas Leich, Gunter Saake · 2006 · 109 citations