Distributed Orchestration Versus Choreography: The FOCAS Approach
Web service orchestration is popular because the application logic is defined from a central and unique point of view, but it suffers from scalability issues. In choreography, the application is expressed as a direct communication between services without any central actor, making it scalable but also difficult to specify and implement. In this paper we present FOCAS, in which the application is described as a classic service orchestration extended by annotations expressing where activities, either atomic or composite, are to be executed. FOCAS analyzes the orchestration model and its distribution annotations and transforms the orchestration into a number of sub-orchestrations to be deployed on a set of distributed choreography servers, and then, deploys and executes the application. This approach seemingly fills the gap between “pure” orchestration (a single control server), and “pure” choreography (a server per service). The paper shows how FOCAS transforms a simple orchestration into a distributed one, fitting the distribution needs of the company, and also shows how choreography servers can be implemented using traditional orchestration engines.
KeywordsAbstract Service Service Implementation Logical Layer Concrete Service Service Orchestration
Unable to display preview. Download preview PDF.
- 4.Cubera, F.e.a.: Web Services Business Process Execution Language. Specification (April 2007), http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.pdf
- 5.Weske, M.: Business Process Management: Concepts, Languages, Architectures. Springer, Heidelberg (2007)Google Scholar
- 6.W3C: Web Services Choreography Interface (WSCI). Specification (August 2002), http://www.w3.org/TR/wsci/
- 7.W3C: Web services choreography description language version (November 2005), http://www.w3.org/TR/2004/WD-ws-cdl-10-20040427/
- 8.Estublier, J., Ionita, A., Nguyen, T.: Code generation for a bi-dimensional composition mechanism. In: Central and East European Conference on Software Engineering Techniques (2008)Google Scholar
- 9.Pedraza, G., Dieng, I., Estublier, J.: Multi-concerns composition for a process support framework. In: Proceedings of the ECMDA Workshop on Model Driven Tool and Process Integration, FOKUS, Berlin (June 2008)Google Scholar
- 10.Chollet, S., Lalanda, P.: Security specification at process level. In: IEEE International Conference on Services Computing (SCC 2008) (July 2008)Google Scholar
- 13.Charfi, A., Mezini, M.: Hybrid web service composition: business processes meet business rules. In: ICSOC 2004: Proceedings of the 2nd international conference on Service oriented computing, pp. 30–38. ACM Press, New York (2004)Google Scholar
- 14.Pedraza, G., Estublier, J.: An extensible services orchestration framework through concern composition. In: Proceedings of International Workshop on Non-functional System Properties in Domain Specific Modeling Languages, Toulouse (September 2008)Google Scholar
- 16.France, R., Rumpe, B.: Model-driven development of complex software: A research roadmap. In: Future of Software Engineering, 2007. FOSE 2007, pp. 37–54 (May 2007)Google Scholar
- 17.Montagut, F., Molva, R.: Enabling pervasive execution of workflows. In: CollaborateCom 2005, 1st IEEE International Conference on Collaborative Computing:Networking, Applications and Worksharing, p. 10. IEEE Computer Society Press, Los Alamitos (2005)Google Scholar
- 19.Chafle, G., Chandra, S., Mann, V., Nanda, M.: Decentralized orchestration of composite web services. In: WWW Alt 2004: Proceedings of the 13th international World Wide Web conference, pp. 134–143. ACM, New York (2004)Google Scholar