Product Line Architecture and the Separation of Concerns

  • Authors:
  • Jay van Zyl

  • Affiliations:
  • -

  • Venue:
  • SPLC 2 Proceedings of the Second International Conference on Software Product Lines
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software product lines present many benefits over the traditional methods of building systems. With the diverse implementation of product lines, organizations are faced with complex design constraints. Layered architectures assist with breaking down complexity through separating architectural elements based on their use and applicability. It is difficult to achieve high levels of reuse and productivity by focusing on one architectural style. This paper discusses three primary concepts, namely, the product line architecture, the separation continuum and application assembly. It starts by presenting a product line architectural view that shows how various concepts are separated based on abstraction. The separation continuum shows how vertical and horizontal layering can assist with separating user interface from business logic and data at an implementation level, and the separation of customer facing processes from infrastructure facing processes at a business or abstract level. An application assembly approach is discussed whereby a product line architecture is tied to the separation continuum, showing how high levels of productivity can be achieved when realizing product lines. The approach presented in this paper is still under development with implementation on a limited number of product lines only. It is intended that the content will provoke and stimulate the thinking and experimentation needed to deal with application assembly by means of having a product line architecture overlaid onto a separation continuum.