[1] Krueger, C. “Eliminating the Adoption Barrier,” Point-Counter Point Column, in IEEE Software, special issue on Initiating Software Product Lines, July/August 2002, pages 28-31 http://www.biglever.com/papers/PointCounterPoint.pdf
[2] Deelstra, S., Sinnema, M. and Bosch, J. “Experiences in Software Product Families: Problems and Issues during Product Derivation,” Proc. Software Product Lines Conference, SPLC3, Boston, Aug. 2004, LNCS 3154, Springer-Verlag, pp. 165-182
[3] Christof Ebert & Michel Smouts “Tricks and Traps of Initiating a Product Line Concept in Existing Products,” ICSE’03
[4] Read about Aspect-Oriented Programming (AOP): http://www.javaworld.com/javaworld/jw-01-2002/jw-0118-aspect.html; simple explanation of AOP with examples
[5] Basic XVCL variation mechanism and some applications: Jarzabek, S. “Reuse beyond Components – XVCL Tutorial”
The following three papers describe different variation mechanisms to manage variant features. As they refer to the same SPL, Berkeley DB, variation mechanisms can be easier compared:
[6] Kästner, C., Apel, S. and Batory, D., A Case Study Implementing Features Using AspectJ, Proc. Int. Software Product Line Conference, SPLC’07, Kyoto, Japan; using AOP as variation mechanism
[7] Kästner, C., Apel, S. and Kuhlemann, M. “Granularity in Software Product Lines,” Proc. Int. Conf. on Soft. Eng., ICSE’08, Leipzig, Germany, May 2008, pp. 311-320 ; CIDE as variation mechanism
[8] Stan Jarzabek,Yinxing Xue, Hongyu Zhang and Youpeng Lee “Avoiding Some Common Preprocessing Pitfalls with Feature Queries,” APSEC’2009 ; cpp-like subset of XVCL with feature queries as variation mechanism
The following two papers describe two approaches to variability management in industrial Wingsoft Financial System SPL (discussed in the class, set #1):
[9] Pengfei Ye , Xin Peng, Yinxing Xue, Stan Jarzabek “A Case Study of Variation Mechanism in an Industrial Product Line,” ICSR 2009 ; variation mechanisms used in original WFMS SPL by a company Fudan Wingsoft Ltd; briefly review this paper and then read:
[10]
Yinxing Xue, Stan Jarzabek, Pengfei Ye, Xin Peng, Wenyun Zhao “A
Case for a Uniform Mechanism for Variability Management,” the
same WFMS SPL in which subset of XVCL is used as variation mechanism (lab study
with participation of Fudan Wingsoft
developers)
Paper [11] analyses general pitfalls of solutions in which variant features are managed at the implementation level only (which is actually the case of all approaches described in the above papers [6]-[10]); read pages 700-705 up to “Design Configuration” only:
[11] Karhinen, A., Ran, A. and Tallgren, T. “Configuring designs for reuse,” Proc. Int. Conf. on Soft. Eng., ICSE’97, Boston, MA., 1997, pp. 701-710
Paper [12] describes a web portal SPL discussed by Ulf in the class; PCE discussed in the class and described in [13] is conceptualization of Ulf’s TCP
[12] Pettersson, U., and Jarzabek, S. “Industrial Experience with Building a Web Portal Product Line using a Lightweight, Reactive Approach,” ESEC-FSE'05, European Software Engineering Conference and ACM SIGSOFT Symposium on the Foundations of Software Engineering, ACM Press, September 2005, Lisbon, pp. 326-335
[13] Rajapakse, D. and Jarzabek, S. “Towards generic representation of web applications: solutions and trade-offs,” Software, Practice & Experience, Volume 39 Issue 5, April 2009, pp. 501 – 530, problems of using PHP as a variation mechanism; PCE in XVCL
[14] Cordy, J.R. “Comprehending Reality: Practical Challenges to Software Maintenance Automation”, Proc. 11th Int. Workshop on Program Comprehension, IWPC’03, Portland, Oregon, May 2003, pp. 196-206 (keynote)
Links to SPL resources (this is for your info, not required for exam):