Design: It is important to architecture design to be less dependency between modules to be too much
trouble during the development and maintenance. This main factor is difficult to achieve, especially for
cases of product line migration. Another design problem encountered in practice is the so-called
design erosion. Means that the initial development that is not enough to consider all aspects of design
and various external factors such as timing Pressure and intolerances of management to product line
cost and time overhead, etc. Design erosion, integration and maintenance costs will increase and will
be working again. Another important problem, more complex software systems must be developed by
a multi-tier architecture that can often be implemented in future product line. Currently, not much
data about multi layer product lines compositions