Abstract
Variability is the ability to change or customize a software system (i.e., software architects anticipate change and design architectures that support those changes). If the architecture is used for different product versions (e.g., in a software product line context, it becomes important to understand where change has to be planned and the possible options in particular situations. Three variability issues have been identified in a case study involving a software company specializing in product and system development for a professional mobile communication infrastructure. These issues are discussed and analyzed and illustrate the need for handling variability in a more explicit manner. To address this need, this paper suggests a method to represent and normalize variability in industrial software systems. The method is exemplified by applying it to the software product line of the aforementioned company.
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
F. Bachmann, L. Bass. Managing Variability in Software Architectures. Proceedings of the 2001 Symposium on Software Reusability, May 2001, 126–132.
J. Bayer, O. Flege, P. Knauber, R. Laqua, D. Muthig, K. Schmid, T. Widen, J.-M. DeBaud. PuLSE: A Methodology to Develop Software Product Lines. Proceedings of the Fifth Symposium on Software Reusability, May 1999, 122–131.
L. Bass, P. Clements, R. Kazman. Software Architecture in Practice. Addison-Wesley, 1998.
L. Bass, P. Clements, S. Cohen, L. Northrop, J. Withey. Product Line Practice Workshop Report. Technical Report CMU/SEI-97-TR-003, Software Engineering Institute, 1997. http://www.sei.cmu.edu/publications/publications.html
D. Batory, S. O’Malley. The Design and Implementation of Hierarchical Software Systems with Reusable Components. ACM Transactions on Software Engineering and Methodology, Vol. 1, No. 4, October 1992, 355–398.
J. Bosch. Design & Use of Software Architectures-Adopting and Evolving a Product-Line Approach. Addison-Wesley, 2000.
J. Bosch. Evolution and Composition of Reusable Assets in Product-Line Architectures: A Case Study. Proceedings of the First Working IFIP Conference on Software Architecture, October 1999, 92–97.
J. Bosch, G Florijn, D. Greefhorst, J. Kuusela, H. Obbink, K. Pohl. Variability Issues in Software Product Lines. Proceedings of the Fourth Workshop on Product Family Engineering, October 2001, to be published at Springer LNCS.
L. Bronsword, P. Clements. A Case Study in Successful Product Line Development. Software Engineering Institute, CMU/SEI-96-TR-016, 1996. http://www.sei.cmu.edu/publications/publications.html
J. Coplien, D. Hoffman, D. Weiss. Commonality and Variability in Software Engineering. IEEE Software, Vol. 15, No. 6, November/December 1998, 37–45.
P. Clements, L. Northrop. A Framework for Software Product Line Practice-Version 3. Software Engineering Institute, 2001. http://www.sei.cmu.edu/plp/framework.html
D. Dikel, D. Kane, S. Ornburn, W. Loftus, J. Wilson. Applying Software Product Line Architecture. IEEE Computer, August 1997, 49–55.
D. Emery, R. Hilliard, M. W. Maier. Software Architecture: Introducing IEEE Standard 1471, IEEE, Vol. 34, No. 4, April 2001, 107–109.
E. Gamma, R. Helm, R. Johnson, J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995.
R. L. Glass. The Relationship Between Theory and Practice in Software Engineering. Communications of the ACM, Vol. 39, No. 11, November 1996, 11–13.
J. P. Gibson. Feature Requirements Model: Understanding Interactions. Feature Interactions in Telecommunications IV, IOS Press, June 1997.
M. L. Griss, J. Favaro, M. D’Alessandro. Integrating Feature Modelling with the RSEB. Proceedings of ICSR98, IEEE, June1998, 36–44.
J. van Gurp, J. Bosch, M. Svahnberg. On the Notion of Variability in Software Product Lines. Proceedings of the Working IEEE/IFIP Conference on Software Architecture, August 2001.
I. Jacobson, M. Griss, P. Jonsson. Software Reuse-Architecture, Process and Organization for Business Success. Addison-Wesley, 1997.
M. Jazayeri, A. Ran, P. van der Linden. Software Architecture For Product Families: Putting Research into Practice. Addison-Wesley, May 2000.
B. Keepence, M. Mannion. Using Patterns to Model Variability in Product Families. IEEE Software, July/August 1999, 102–108.
R. R. Macala, L. D. Stucky, D.C. Gross. Managing Domain-Specific Product-Line Development. IEEE Software, 1996, 57–67.
M. D. McIlroy. Mass Produced Software Components. Report on a conference of the NATO Science Committee, 1968, 138–150.
P. Oreizy, M. M. Gorlick, R. N. Taylor, D. Heimbigner, G. Johnson, N. Medvidovic, A. Quilici, D. S. Rosenblum, A.L. Wolf. Self-Adaptive Software: An Architecture Based Approach. IEEE Intelligent Systems, 1999.
D. Parnas. On the Design and Development of Product Families. IEEE Transactions on Software Engineering, Vol. 2, No. 1, 1976.
Rohill Technologies BV. http://www.rohill.com
K. Schmid. Scoping Software Product Lines-An Analysis of an Emerging Technology, in Software Product Lines: Experience and Research Directions. Proceedings of the First Software Product Line Conference, Kluwer Academic Publishers, August 2000, 513–532.
M. Svahnberg, J. Bosch. Evolution in Software Product Lines: Two Cases. Journal of Software Maintenance-Research and Practice, Vol. 11, No. 6, 1999, 391–422.
W. Tellis. Introduction to Case Study. The Qualitative Report, Vol. 3, No. 2, July 1997. http://www.nova.edu/ssss/QR/QR3-2/tellis1.html
W. Tellis. Application of a Case Study Methodology. The Qualitative Report, Vol. 3, No. 3, September 1997. http://www.nova.edu/ssss/QR/QR3-3/tellis2.html
D. M. Weiss, C. T. R. Lai. Software Product-Line Engineering: A Family-Based Software Development Process. Addison-Wesley, 1999.
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
Jaring, M., Bosch, J. (2002). Representing Variability in Software Product Lines: A Case Study. 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_2
Download citation
DOI: https://doi.org/10.1007/3-540-45652-X_2
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