Pattern-oriented software architecture: a system of patterns
Pattern-oriented software architecture: a system of patterns
Software architecture in practice
Software architecture in practice
Design and use of software architectures: adopting and evolving a product-line approach
Design and use of software architectures: adopting and evolving a product-line approach
Deferring design decisions in an application framework
ACM Computing Surveys (CSUR)
Designing an aspect-oriented framework in an object-oriented environment
ACM Computing Surveys (CSUR)
Implementing product-line features by composing aspects
Proceedings of the first conference on Software product lines : experience and research directions: experience and research directions
Component-based product line development: the KobrA approach
Proceedings of the first conference on Software product lines : experience and research directions: experience and research directions
Freeing product line architectures from execution dependencies
Proceedings of the first conference on Software product lines : experience and research directions: experience and research directions
An interface-based platform approach
Proceedings of the first conference on Software product lines : experience and research directions: experience and research directions
A hierarchy of COTS certification criteria
Proceedings of the first conference on Software product lines : experience and research directions: experience and research directions
Hi-index | 0.00 |
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.