Web Services Foundations pp 535-562 | Cite as
Software Product Line Engineering to Develop Variant-Rich Web Services
Abstract
Service-Oriented Architecture (SOA) enables enterprise for distributed and flexible software development. SOA aims at promoting effective software asset reuse by means of encapsulating functionalities as reusable services accessible through well-defined interfaces. However, one of the challenging problems for the realization of this vision is an need for design and management of variants of SOA-based solutions. Such SOA-based solutions require customization to meet stakeholders’ individual functional and non-functional requirements. In this chapter, a methodological foundation for modeling and developing variant-rich SOA-solutions by incorporating the principles of Software Product Line Engineering (SPLE) into the SOA development life cycle .
Keywords
Business Process Product Family Composite Service Business Process Model Reference ArchitectureReferences
- 1.Apel, S., Kaestner, C., Lengauer, C.: Research challenges in the tension between features and services. In: Proceedings of the 2nd International Workshop on Systems Development in SOA Environments, pp. 53–58. ACM (2008)Google Scholar
- 2.Arsanjani, A., Ghosh, S., Allam, A., Abdollah, T., Ganapathy, S., Holley, K.: SOMA: a method for developing service-oriented solutions. IBM Syst. J. 47(3), 377–396 (2008)CrossRefGoogle Scholar
- 3.Asadi, M., Bagheri, E., Gašević, D., Hatala, M., Mohabbati, B.: Goal-driven software product line engineering. In: SAC ’11, pp. 691–698. ACM, NY, USA (2011)Google Scholar
- 4.Asikainen, T., Soininen, T., Männistö, T.: A Koala-based approach for modelling and deploying configurable software product families, pp. 225–249. Software Product-Family Engineering (2004)Google Scholar
- 5.Bachmann, F., Goedicke, M., Leite, J., Nord, R., Pohl, K., Ramesh, B., Vilbig, A.: A meta-model for representing variability in product family development, pp. 66–80. Software Product-Family Engineering (2004)Google Scholar
- 6.Benatallah, B., Nezhad, H.M.: Service oriented architecture: overview and directions. In: Advances in Software Engineering, Lecture Notes in Computer Science, vol. 5316, pp. 116–130. Springer, Berlin (2008)Google Scholar
- 7.Benavides, D., Segura, S., Cortés, A.R.: Automated analysis of feature models 20 years later: a literature review. Inf. Syst. 35(6), 615–636 (2010)CrossRefGoogle Scholar
- 8.Bussler, C.: The fractal nature of web services. Computer 40, 93–95 (2007)CrossRefGoogle Scholar
- 9.Chang, S.H., Kim, S.D.: A variability modeling method for adaptable services in service-oriented computing. In: SPLC ’07: Proceedings of the 11th International Software Product Line Conference, pp. 261–268. IEEE Computer Society, DC, USA (2007)Google Scholar
- 10.Chen, F., Li, S., Chu, W.C.C.: Feature analysis for service-oriented reengineering. In: APSEC ’05: Proceedings of the 12th Asia-Pacific Software Engineering Conference, pp. 201–208. IEEE Computer Society (2005)Google Scholar
- 11.Chen, L., Ali Babar, M., Ali, N.: Variability management in software product lines: a systematic review. In: Proceedings of the 13th International Software Product Line Conference, pp. 81–90. CMU (2009)Google Scholar
- 12.Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns. Addison-Wesley, Reading (2001)Google Scholar
- 13.Cohen, S.G., Krut, R.: Managing variation in services in a software product line context. Technical Report SEI-2010-TN-007, CMU (2010)Google Scholar
- 14.Cohen, S.G.S., Krut, R.W.: Proceedings of the 1st workshop on service-oriented architectures and product lines: what is the connection? Technical Report CMU/SEI-2008-SR-006 (2008)Google Scholar
- 15.Czarnecki, K.: Mapping features to models: a template approach based on superimposed variants. In: GPCE 2005, pp. 422–437. Springer (2005)Google Scholar
- 16.Czarnecki, K., Eisenecker, U.: Generative Programming: Methods, Tools, and Applications. Addison-Wesley Professional, Reading (2000)Google Scholar
- 17.Czarnecki, K., Helsen, S., Eisenecker, U.: Formalizing cardinality-based feature models and their specialization. Softw. Process: Improve. Pract. 10(1), 7–29 (2005)CrossRefGoogle Scholar
- 18.Czarnecki, K., Helsen, S., Eisenecker, U.W.: Staged configuration through specialization and multilevel configuration of feature models. Softw. Process: Improve. Pract. 10(2), 143–169 (2005)CrossRefGoogle Scholar
- 19.Eriksson, M., Börstler, J., Borg, K.: The PLUSS approach—domain modeling with features, use cases and use case realizations, pp. 33–44. SPLC (2005)Google Scholar
- 20.Erl, T.: Service-Oriented Architecture: Concepts, Technology, and Design. Prentice Hall PTR, Upper Saddle River (2005)Google Scholar
- 21.Fantinato, M., de Toledo, M.B.F., de Souza Gimenes, I.M.: Ws-contract establishment with QoS: an approach based on feature modeling. Int. J. Cooperative Inf. Syst. 17(3), 373–407 (2008)Google Scholar
- 22.Frakes, W.B., Kang, K.: Software reuse research: status and future. IEEE Trans. Softw. Eng. 31, 529–536 (2005)CrossRefGoogle Scholar
- 23.Galster, M.: Describing variability in service-oriented software product lines. In: Proceedings of the Fourth European Conference on Software Architecture: Companion Volume, pp. 344–350 (2010)Google Scholar
- 24.Gomaa, H.: Advances in software design methods for concurrent, real-time and distributed applications. In: Software Engineering Advances, 2008. ICSEA’08. The 3rd International Conference on, pp. 451–456. IEEE (2008)Google Scholar
- 25.Griss, M.L., Favaro, J., Alessandro, M.d.: Integrating feature modeling with the RSEB. In: Proceedings of the 5th International Conference on Software Reuse, ICSR ’98, p. 76. IEEE Computer Society, Washington, DC, USA (1998)Google Scholar
- 26.Helferich, A., Herzwurm, G., Jesse, S., Mikusz, M.: Software product lines, service-oriented architecture and frameworks: worlds apart or ideal partners? In: Trends in Enterprise Application Architecture, pp. 187–201. IEEE Computer Society (2007)Google Scholar
- 27.van der Hoek, A.: Design-time product line architectures for any-time variability. Sci. Comput. Program. 53(3), 285–304 (2004)CrossRefGoogle Scholar
- 28.Huhns, M., Singh, M.: Service-oriented computing: key concepts and principles. IEEE Internet Comput. 9(1), 75–81 (2005)CrossRefGoogle Scholar
- 29.Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, A.: Feature-oriented domain analysis (FODA) feasibility study (1990)Google Scholar
- 30.Kang, K., Kim, S., Lee, J., Kim, K., Shin, E., Huh, M.: FORM: a feature-oriented reuse method with domain-specific reference architectures. Ann. Softw. Eng. 5, 143–168 (1998)CrossRefGoogle Scholar
- 31.Kästner, C., Apel, S., Kuhlemann, M.: Granularity in software product lines. In: Proceedings of the 30th International Conference on Software Engineering, pp. 311–320. ACM (2008)Google Scholar
- 32.Koning, M., Sun, C., Sinnema, M., Avgeriou, P.: VxBPEL: supporting variability for Web services in BPEL. Inf. Softw. Technol. 51(2), 258–269 (2009)CrossRefGoogle Scholar
- 33.Kozaczynski, W., Booch, G.: Component-based software engineering. IEEE Softw. 15(5), 34–36 (1998)CrossRefGoogle Scholar
- 34.Krafzig, D., Banke, K., Slama, D.: Enterprise SOA: Service-Oriented Architecture Best Practices. Prentice Hall PTR, Englewood Cliffs (2005)Google Scholar
- 35.Krut, R.W., Cohen, S.G.: 2nd Workshop on Service-Oriented Architectures and Software Product Lines: Putting Both Together, pp. 115–147. CMU (2009)Google Scholar
- 36.Krut, R.W., Cohen, S.G.: 3rd Workshop on Service-Oriented Architectures and Software Product Lines: Enhancing Variation, pp. 301–302. CMU (2009)Google Scholar
- 37.Lee, J., Kotonya, G.: Combining service-orientation with product line engineering. IEEE Softw. 27, 35–41 (2010)CrossRefGoogle Scholar
- 38.Lee, J., Muthig, D., Naab, M.: A feature-oriented approach for developing reusable product line assets of service-based systems. J. Syst. Softw. 83(7), 1123–1136 (2010)CrossRefGoogle Scholar
- 39.McGregor, J., Muthig, D., Yoshimura, K., Jensen, P.: Guest editors’ introduction: successful software product line practices. IEEE Softw. 27(3), 16–21 (2010)CrossRefGoogle Scholar
- 40.Mohabbati, B., Gašević, D., Hatala, M., Asadi, M., Bagheri, E., Bošković, M.: A quality aggregation model for service-oriented software product lines based on variability and composition patterns. In: ICSOC, pp. 436–451 (2011)Google Scholar
- 41.Mohabbati, B., Hatala, M., Gašević, D., Asadi, M., Bošković, M.: Development and configuration of service-oriented systems families. SAC ’11, pp. 1606–1613, NY, USA (2011)Google Scholar
- 42.Nguyen, T., Colman, A.: A feature-oriented approach for Web service customization. In: 2010 IEEE International Conference on Web Services, pp. 393–400. IEEE (2010)Google Scholar
- 43.Nguyen, T., Colman, A., Han, J.: Modeling and managing variability in process-based service compositions. In: Proceedings of the 9th International Conference on Service-Oriented Computing, ICSOC’11, pp. 404–420. Springer, Berlin (2011)Google Scholar
- 44.Northrop, L.: Sei’s software product line tenets. IEEE Softw. 19(4), 32–40 (2002)CrossRefGoogle Scholar
- 45.van Ommering, R.: Building product populations with software components. In: ICSE ’02, pp. 255–265. ACM (2002)Google Scholar
- 46.Papazoglou, M., Traverso, P., Dustdar, S., Leymann, F.: Service-oriented computing: a research roadmap. Int. J. Cooperative Inf. Syst. 17(2), 223–255 (2008)CrossRefGoogle Scholar
- 47.Papazoglou, M., Van Den Heuvel, W.: Service-oriented design and development methodology. Int. J. Web Eng. Technol. 2(4), 412–442 (2006)CrossRefGoogle Scholar
- 48.Papazoglou, M.P.: Service-oriented computing: concepts, characteristics and directions. Web Information Systems Engineering, International Conference on, vol. 0, p. 3 (2003)Google Scholar
- 49.Pohl, K., Böckle, G., van der Linden, F.J.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer, New York (2005)Google Scholar
- 50.Sinnema, M., Deelstra, S., Nijhuis, J., Bosch, J.: COVAMOF: A framework for modeling variability in software product families. SPLC’04 pp. 25–27 (2004)Google Scholar
- 51.Sochos, P., Riebisch, M.: Feature-oriented development of software product lines: mapping feature models to the architecture. In: Object-Oriented and Internet-Based Technologies, pp. 138–152. Springer (2004)Google Scholar
- 52.Sommerville, I., Sawyer, P.: Requirements Engineering. Wiley, London (1997)Google Scholar
- 53.Street, J., Gomaa, H.: Software architectural reuse issues in service-oriented architectures. In: HICSS, p. 316. IEEE Computer Society (2008)Google Scholar
- 54.Svahnberg, M., Van Gurp, J., Bosch, J.: A taxonomy of variability realization techniques. Softw.: Pract. Exp. 35(8), 705–754 (2005)Google Scholar
- 55.Thiel, S., Hein, A.: Systematic integration of variability into product line architecture design. Software Product Lines, pp. 67–102 (2002)Google Scholar
- 56.Tsai, W., Jin, Z., Wang, P., Wu, B.: Requirement engineering in service-oriented system engineering. In: e-Business Engineering, 2007. ICEBE 2007. IEEE International Conference on, pp. 661–668. IEEE (2007)Google Scholar
- 57.Van Gurp, J., Bosch, J., Svahnberg, M.: On the notion of variability in software product lines. In: Proceedings of the Working IEEE/IFIP Conference on Software Architecture, p. 45 (2001)Google Scholar
- 58.Webber, D.L., Gomaa, H.: Modeling variability in software product lines with the variation point model. Sci. Comput. Program. 53(3), 305–331 (2004)MathSciNetCrossRefMATHGoogle Scholar
- 59.Ye, E., Moon, M., Kim, Y., Yeom, K.: An approach to designing service-oriented product-line architecture for business process families. In: Advanced Communication Technology, The 9th International Conference on, vol. 2, pp. 1002, 999 (2007)Google Scholar