Process Support for Product Line Application Engineering Padraig O’Leary 1 , Ita Richardson 2 , 1 RiSE Reuse in Software Engineering and the Federal University of Bahia, Brazil 2 Lero the Irish Software Engineering Research Centre, University of Limerick, Ireland Padraig.oleary@rise.com.br Ita.richardson@lero.ie Abstract. The derivation of products from a software product line is a time- consuming and expensive activity. Despite recognition that an effective process could alleviate many of the difficulties associated with product derivation, existing approaches have different scope, emphasize different aspects of the derivation process and are frequently too specialized to serve as a general solution. In response to a need for methodological support, we developed Pro- PD (Process model for Product Derivation). Pro-PD was iteratively developed and evaluated through four research stages involving academic and industrial sources. This paper illustrates how Pro-PD provides systematic support by using product derivation preparation as an example. Keywords: Software product lines, product derivation, process model. 1 Introduction A Software Product Line (SPL) is a set of software-intensive systems that share a common, managed set of features satisfying the specific needs of a particular market segment or mission and are developed from a common set of core assets in a prescribed way [1]. The SPL approach makes a distinction between domain engineering, where a common platform for a number of products is designed and implemented, and application engineering, where a product is derived based on the platform components [2]. The separation into domain engineering and application engineering allows the development of software artefacts which are shared among the products within that domain. It is during application engineering that the individual products using the platform artefacts within a product line are constructed. The process of creating these individual products is known as product derivation. A number of publications speak of the difficulties associated with the process. Hotz et al. [2] describe it as “slow and error prone, even if no new development is involved”. Griss [3] identifies the inherent complexity and the coordination required in the derivation process by stating that “…as a product is defined by selecting a group of features, a carefully coordinated and complicated mixture of parts of different components are involved”. Therefore, the derivation of individual products from shared software assets is still a time-consuming and expensive activity in many organisations [4]. Rabiser et al. [5] enforces this point when they claim that “guidance