Abstract. Software systems evolve over time. From a component-based software engineering perspective, this means that either the components of the system need to change, or, if com...
Features express the variabilities and commonalities among programs in a software product line (SPL). A feature model defines the valid combinations of features, where each combin...
In this paper we discuss an approach for simulating the behaviour of interactive software systems, before starting on any of the actual implementation, based on a model of the sys...
Robert Chatley, Jeff Kramer, Jeff Magee, Sebasti&a...
Crosscutting concerns are software system features whose implementation is spread across many modules as tangled and scattered code. Identifying such code helps developers to chan...
Gerardo Canfora, Luigi Cerulo, Massimiliano Di Pen...
In evolutionary software development, knowing how design evolves with features can be valuable in guiding future projects. It helps answer questions like "How much upfront de...