with architecture re-use. When an organization is producing similar systems and using the same
architecture, the organization obtains a large gain that includes the reduced cost of construction and
reduced time to market [2]. Generally, the development of product line requirements an architectural
approach in which the core architecture capture both the commonalities shared by all the products and the
variability of individual products the so–called variation points [2], [5]. So, we can say a software product
line consists of a family of software systems that have some common functionality and some variable
functionality [6].