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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Atkinson C., Bayer J. and Muthig D. (2000). Component-based product line development. Software product lines: Experience and research directions. Edited by Patrick Donohoe. Kluwer Press. ISBN 0-7923-7940-3.
Bachman F., Bass L., Carriere J. and Clements P. (2000). Software architecture documentation in practice: Documenting architectural layers. CMU/SEI Special Report CMU/SEI-2000-SR-004.
Bass L., Clements P. and Kazman R. (1998). Software architecture in practice. Addison Wesley Press. ISBN 0-201-19930-0.
Bosch J. (2000). Design and use of software architectures: Adopting and evolving a product-line approach. Addison Wesley Press. ISBN 0-201-67494-7.
Buschmann F., Meunier R., Rohnert H., Sommerlad P. and Stal M. (2000). Pattern-oriented software architecture: A system of patterns. John Wiley & Sons. ISBN 0-471-95869-7.
Carey J.E. and Carlson B.A. (1998). Deferring design decisions in an application framework. IBM Corporation. ACM Computing Surveys.
Clements P. and Northrop L. (2001). Software product lines, practices and patterns. Addison Wesley Press. ISBN 0-201-70332-7.
Constantinides C.A., Bader A., Elrad T.H., Fayed M.E. and Netinand P. (2000). Designing an aspect-oriented framework in an object oriented environment. ACM Computing Surveys. March.
Doerr B.S. and Sharp D.C. (2000). Freeing product line architectures from execution dependencies. Software product lines: Experience and research directions. Edited by Patrick Donohoe. Kluwer Press. ISBN 0-7923-7940-3.
Dsouza D. (2001). Model-driven architecture opportunities and challenges. Kinetium. http://www.kinetium.com/. Website accessed: 15 April 2002
Griss M.L. (2000). Implementing product-line features by composing aspects. Software product lines: experience and research directions. Edited by Patrick Donohoe. Kluwer Press. ISBN 0-7923-7940-3.
Architecture board MDA drafting team. (2001). Model driven architecture: A technical perspective. Document Number ab/2001-02-01.
Pronk B.J. (2000). An interface-based platform approach. Software product lines: Experience and research directions. Edited by Patrick Donohoe. Kluwer Press. ISBN 0-7923-7940-3.
Rational Corporation. (2001). Reusable asset specification. http://www.rational.com/eda/ras/. Website accessed: 15 April 2002
Schmid K. (2000). Scoping software product lines.
Clements P. and Northrop L.M. (1999). A framework for software product line practice. Version 2.0, SEI.
http://www.uddi.org/ Websiteaccessed: 15 April 2002
van Zyl J.A. (1999). Strategic product development. SPLC1. Denver, USA, 28–31 August 2000
van Zyl J.A. (2001). Class of solution dilemma. IEEE Engineering Management Conference proceedings. IEEE Electronic Library.
van Zyl J.A. (2001). Product line balancing. IEEE Engineering Management Conference proceedings. IEEE Electronic Library.
van Zyl J.A. (2001). A model that deals with system complexity. Unpublished PhD thesis, University of the Witwatersrand, Johannesburg, South Africa.
http://www.wsdl.org/ Website accessed: 15 April 2002
http://www.xml.org/ Website accessed: 15 April 2002
Yacoub S., Kaveri C. and Dehlin M. (2000). A hierarchy of COTS certification criteria. Software product lines: Experience and research directions. Edited by Patrick Donohoe. Kluwer Press. ISBN 0-7923-7940-3.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
van Zyl, J. (2002). Product Line Architecture and the Separation of Concerns. In: Chastek, G.J. (eds) Software Product Lines. SPLC 2002. Lecture Notes in Computer Science, vol 2379. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45652-X_7
Download citation
DOI: https://doi.org/10.1007/3-540-45652-X_7
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-43985-1
Online ISBN: 978-3-540-45652-0
eBook Packages: Springer Book Archive