Author_Institution :
Software Eng. Res. Group, Delft Univ. of Technol., Delft, Netherlands
Abstract :
Despite a global recognition of the problem, and massive investment from researchers and practitioners, the evolution of complex software systems is still a major challenge for today´s architects and developers. In the context of product lines, or highly configurable systems, variability in the implementation and design makes many of the pre-existing challenges even more difficult to tackle. Many approaches and tools have been designed, but developers still miss the tools and methods enabling safe evolution of complex, variable systems. In this paper, we present our research plans toward this goal: making the evolution of software product lines safer. We show, by use of two concrete examples of changes that occurred in Linux, that simple heuristics can be applied to facilitate change comprehension and avoid common mistakes, without relying on heavy tooling. Based on those observations, we present the steps we intend to take to build a framework to regroup and classify changes, run simple checks, and eventually increase the quality of code deliveries affecting the variability model, mapping and implementation of software product lines.
Keywords :
software maintenance; software product lines; software quality; Linux; change comprehension; code delivery quality; evolution patterns; software product lines; software systems evolution; variability model; Conferences; Context; Feature extraction; Frequency modulation; Kernel; Linux; Software product lines; Product line; evolution; variability;