Abstract
To cope with requirement changes flexibly and rapidly, the existing component-based paradigm is being evolved into a service-oriented computing paradigm. The main characteristic of the service-oriented computing paradigm is that service-oriented applications are developed as loosely coupled services that reflect business concerns. This paradigm also promotes business agility, facilitating quick reactions to business changes. Therefore, to enhance and support the benefits of the service-oriented computing paradigm, we must consider how to improve flexibility and reusability during the development of service-oriented applications. We propose the variability modeling approach to specify and control the common and distinguishing characteristics of service-oriented applications. That is, the key concepts of product-line technology can be used to make service-oriented applications more flexible and reusable. This paper describes variability modeling at two levels; the composition level and the specification level. At the composition level, we describe the variability of composition and the flow of domain services that fulfill business processes. At the specification level, we present a domain service that is an abstract service with variability. The use of our systematic variability modeling approach can greatly increase the flexibility, applicability, and reusability of service-oriented applications.
Article PDF
Similar content being viewed by others
Avoid common mistakes on your manuscript.
References
Alves, A., Arkin, A., Askary, S., Barreto, C., Bloch, B., Curbera, F., Ford, M., Goland, Y., Guízar, A., Kartha, N., Liu, C.K., Khalaf, R., König, D., Marin, M., Mehta, V., Thatte, S., Rijn, D.V.D., Yendluri, P. & Yiu, A. (2007). Web services business process execution language, version 2.0. Available via DIALOG. http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html. Cited April 11, 2007
Arsanjani, A. (2004). Service-oriented modeling and architecture: how to identify, specify and realize services for your SOA. IBM Developer Works. Available via DIALOG. http://www.ibm.com/developerworks/library/ws-soa-design1/. Cited November 9, 2004
Arkin, A., Askary, S., Fordin, S., Jekeli, W., Kawaguchi, K., Orchard, D., Pogliani, S., Riemer, K., Struble, S., Takacsi-Nagy, P., Trickovic, I. & Zimek, S. (2002). Web Service Choreography Interface (WSCI) 1.0. Available via DIALOG. http://www.w3.org/TR/wsci/. Cited August 8, 2002
Arsanjani, A., Zhang, L.J., Ellis, M., Allam, A. & Channabasavaiah, K. (2007). S3: a service oriented reference architecture. IT Professional, 9(3): 10–17
Bayer, J., Buhl, W., Giese, C., Lehner, T., Ocampo, A., Puhlmann, F., Richter, E., Schnieders, A., Weiland, J., & Weske, M. (2005). Process family engineering-modeling variant-rich processes. PESOA-Report No. 18/2005, September 1, 2005
Bichler, M. & Lin, K.J. (2006). Service-oriented computing. Computer, 39(3): 99–101
Chang, S., La, H. & Kim, S. (2007). A comprehensive approach to service adaptation. In: International Conference on Service Oriented Computing and Applications, 191–198, Newport Beach, California, USA, June 19–20, 2007, IEEE Computer Society
Clauß, M. (2001). Generic modeling using UML extension for variability. In: Proceedings of OOPSLA Workshop on Domain Specific Visual Languages, 11–18, Tampa Bay, Florida, USA, October 14–18, 2001
Clements, P. & Northrop, L. (2002). Software Product Lines Practices and Patterns. Addison-Wesley
Erl, T. (2008). SOA Principles of Service Design. Prentice-Hall
Fremantle, P., Weerawarana, S. & Khalaf, R. (2002). Enterprise services. Communications of the ACM, 45(10): 77–82
Gomma, H. (2004). Designing Software Product Lines with UML: From Use Cased to Pattern-Based Software Architectures. Addison-Wesley
Hamadi, R. & Benatallah, B. (2003). A Petri net-based model for web service composition. In: Australasian Database Conference, 17: 191–200, Adelaide, Australia, February, 2003, Australian Computer Society
Kang, K., Cohen, S., Hess, J., Novak, W. & Peterson, S. (1990). Feature-Oriented Domain Analysis (FODA) feasibility study. Software Engineering Institute, Carnegie Mellon University technical report CMU/SEI-90-TR-21, November 1990
Hashemian, S.V. & Mavaddat, F. (2005). A graph-based approach to web services composition. In: 2005 Symposium on Applications and the Internet, 183–189, Trento, Italy, January 31–February 4, 2005, IEEE Computer Society
Kang, K., Kim, S., Lee, J., Kim, K., Shing, E. & Huh, M. (1998). Form: a reature oriented reuse method with domain specific reference architectures. Annals of Software Engineering, 5(1): 143–168
Keepence, B. & Mannion, M. (1999). Using patterns to model variability in product families. IEEE Software, 16(4): 102–108
Huhns, M. & Singh, M.P. (2005). Service-oriented computing: key concepts and principles. Internet Computing, 9(1): 75–81
Kwon, O., Yoon, S. & Shin, G. (1999). Component-based development environment: an integrated model of object-oriented techniques and other technologies. In: International Workshop on Component-Based Software Engineering, 47–53, May 17–18, 1999
Lang, Q.A. & Su, S.Y.W. (2005). AND/OR graph and search algorithm for discovering composite web services. International Journal of Web Services Research, 2(4): 46–64
Liang, J. & Nahrstedt, K. (2006). Service composition for generic service graphs. International Journal on Multimedia Systems, 11(6): 568–581, Springer Berlin/Heidelberg
Liu, J. & Chao, L. (2006). Web services as a graph and its application for service discovery. In: International Conference on Grid and Cooperative Computing, 293–300, Changsha, Hunan, China, October 21–23, 2006, IEEE Computer Society
Michlmayr, A., Rosenberg, F., Leitner, P. & Dustdar, S. (2010). Web services compositions modelling and choreographies analysis. International Journal of Web Services Research, 7(2): 87–110
Mittal, K. (2006). Service oriented unified process. Available via DIALOG. http://www.kunalmittal.com/html/soup.html
Moon, M., Hong, M. & Yeom, K. (2008). Two-level variability analysis for business process with reusability and extensibility. In: International Conference on Computer Software and Applications, 263–270, Turku, Finland, July 28–August 1, 2008, IEEE Computer Society
Moon, M., Yeom, K. & Chae, H.S. (2005). An approach to developing domain requirements as a core asset based on commonality and variability in a product line. IEEE Transactions on Software Engineering, 31(7): 551–569
Nickul, D., Reitman, L., Ward, J. & Wilber, J. (2007). Service Oriented Architecture (SOA) and specialized messaging patterns. Adobe Systems Incorporated White Paper. Available via DIALOG. http://www.adobe.com/enterprise/pdfs/Services_Oriented_Architecture_from_Adobe.pdf. Cited, December 7, 2007
Papazoglou, M.P. & Van Den Heuvel, W.J. (2006). Service-oriented design and development methodology. International Journal of Web Engineering and Technology, 2(4): 412–442
Papazoglou, M.P. & Van Den Heuvel, W.J. (2007). Service-oriented architectures: approaches, technologies and research issues. International Journal on Very Large Data Bases, 16(3): 389–415, Springer Berlin/Heidelberg
Rosen, M. (2006). BPM and SOA — where does one end and the other begin? BPTrends Columns & Article. Available via DIALOG. http://www.bptrends.com. Cited January, 2006
Saab, C.B., Coulibaly, D., Haddad, S., Melliti, T., Moreauz, P. & Rampacek, S. (2009). An integrated framework for web services orchestration. International Journal of Web Services Research, 6(4): 1–29
Segura, S., Benavide, D., Ruiz-Cortes, A. & Trinidad, P. (2007). A taxonomy of variability in web services flows. In: Service Orietned Architectures and Product Lines — What Is the Connection? (SOAPL-07), Kyoto, Japan, September 10, 2007
Sinnema, M. & Deelstra, S. (2007). Classifying variability modeling techniques. Information and Software Technology, 49(7): 717–739
Skogan, D., Grønmo, R. & Solheim, I. (2004). Web service composition in UML. In: International Enterprise Distributed Object Computing Conference, 47–57, Monterey, California, USA, September 20–24, 2004, IEEE Computer Society
Tut, M.T. & Edmond, D. (2002). The use of patterns in service composition, web services, E-business, and the semantic web. LNCS2512:28–40
Valero, V., Cambronero, M.E., Diaz, G. & Macia, H. (2009). A Petri net approach for the design and analysis of web services choreographies. The Journal of Logic and Algebraic Programming, 78: 359–380
Weiss, D.M. & Lai, C.T.R. (1999). Software Product-Line Engineering: A Family Based Software Development Process. Addison-Wesley
Zhai, Y., Su, H. & Zhan, S. (2008). A reflective framework to improve the adaptability of BPEL-based web service composition. In: International Conference on Services Computing, 1: 343–350, Honolulu, Hawii, USA, July 8–11, 2008, IEEE Computer Society
Zirpins, C., Lamersdorf, W. & Baier, T. (2004). Flexible coordination of service interaction patterns. In: International Conference on Service oriented Computing, 49–56, New York, USA, November 15–18, 2004, ACM Press
Author information
Authors and Affiliations
Corresponding author
Additional information
This work was supported by the Grant of the Korean Ministry of Education, Science and Technology(The Regional Core Research Program/Institute of Logistics Information Technology) and by the National Research Foundation of Korea Grant funded by the Korean Government(MEST) (NRF-2010-20100328000)
Joonseok Park received the bachelor’s degrees in computer engineering from the Pukyong National University in 1999 and the MS degree in Computer engineering from the Pusan National University in 2002. Currently, he is a doctoral candidate in the Computer Engineering Department at the Pusan National University. His research interests include service oriented computing, ubiquitous computing, software architecture, and product-line engineering.
Mikyeong Moon is an associate professor of computer and information engineering at the Dongseo University in Busan, KOREA. She received the BS degree in 1990 and the MS degree in 1992, both in computer science from the Ewha Womans University, Seoul, Korea, and the PhD degree in computer science and engineering from Pusan National University in 2005. Her current research interests include software reuse, product line engineering, requirement engineering, and RFID solutions. She is a member of the Korea Information Science Society.
Keunhyuk Yeom received the bachelor’s degree in computer science and statistics from Seoul National University in 1985 and the MS and PhD degrees in computer and information science and engineering from the University of Florida in 1992 and 1995, respectively. He is professor of computer science and engineering at the Pusan National University in Busan, Korea. From 1985 to 1990, he was with LG Electronics Research Institute. His research interests include software product lines, component-based software development, software reuse, self-adaptive software, situation-aware framework for RFID/USN Solutions, etc. He is a member of the ACM, the IEEE Computer Society, and the Korea Information Science Society.
Rights and permissions
About this article
Cite this article
Park, J., Moon, M. & Yeom, K. Variability modeling to develop flexible service-oriented applications. J. Syst. Sci. Syst. Eng. 20, 193–216 (2011). https://doi.org/10.1007/s11518-011-5164-z
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11518-011-5164-z