Evolution in software product lines: two cases

This paper discuss the results of two case studies from a technical perspective, concentrating on the evolution of software assets in two Swedish organizations that have employed a product-line architecture approach for several years. This paper describes and analyses the commonalities and differences of these two cases, emphasising categories of the evolution of the requirements, of the software architecture and of the software components. This paper concludes with three types of lessons learned about evolution in software product lines: three evolution categories are predominant, three other categories are less significant but still common, and seven guidelines for software product-line evolution emerge. Copyright  1999 John Wiley & Sons, Ltd.

[1]  David C. Gross,et al.  Managing Domain-Specific, Product-Line Development , 1996, IEEE Softw..

[2]  Jan Bosch,et al.  Architecture level prediction of software maintenance , 1999, Proceedings of the Third European Conference on Software Maintenance and Reengineering (Cat. No. PR00090).

[3]  Mikael Lindvall,et al.  The visibility of maintenance in object models: an empirical study , 1998, Proceedings. International Conference on Software Maintenance (Cat. No. 98CB36272).

[4]  Meir M. Lehman,et al.  On understanding laws, evolution, and conservation in the large-program life cycle , 1984, J. Syst. Softw..

[5]  Victor R. Basili,et al.  Understanding and predicting the process of software maintenance releases , 1996, Proceedings of IEEE 18th International Conference on Software Engineering.

[6]  Jim Wilson,et al.  Applying Software Product-Line Architecture , 1997, Computer.

[7]  Michael Mattsson,et al.  Frameworks as Components : A Classification of Framework Evolution , 1998 .

[8]  Ned Chapin Software maintenance life cycle , 1988, Proceedings. Conference on Software Maintenance, 1988..

[9]  Will Tracz,et al.  DSSA (Domain-Specific Software Architecture): pedagogical example , 1995, SOEN.

[10]  David Lorge Parnas,et al.  On the Design and Development of Program Families , 2001, IEEE Transactions on Software Engineering.

[11]  Harald C. Gall,et al.  Software evolution observations based on product release history , 1997, 1997 Proceedings International Conference on Software Maintenance.

[12]  G. Kerr Quality factors. , 1988, Health physics.

[13]  Jan Bosch,et al.  Product-line architectures in industry: a case study , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[14]  Harvey P. Siy,et al.  Parallel changes in large scale software development: an observational case study , 1998, Proceedings of the 20th International Conference on Software Engineering.

[15]  Jan Bosch,et al.  Characterizing stability in evolving frameworks , 1999, Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No.PR00275).

[16]  Jan Bosch,et al.  An experiment on creating scenario profiles for software change , 2000, Ann. Softw. Eng..

[17]  Jan Bosch,et al.  Assessing Object-Oriented Application Framework Maturity : A Replicated Case Study , 1999 .

[18]  Martin L. Griss,et al.  Integrating feature modeling with the RSEB , 1998, Proceedings. Fifth International Conference on Software Reuse (Cat. No.98TB100203).