Abstract
The need for global behavior definitions is well established both in the domain of embedded reactive systems and service-oriented (business) systems. The problem has been to define the global behavior with sufficient, rigor and completeness to fully cover the intended behavior and not just some scenarios, and to enable automatic synthesis of component behaviors in practical systems and service development. In this paper we build on previous work where UML collaborations are used to structure systems and services into reusable building blocks, and UML activities to model global behavior, called choreography in the following. We identify two forms of choreography: one where all flows are localized to the roles participating in collaborations and another where the flows are not localized and thus more abstract. We propose a novel approach to map the flow-global choreography to a flow-localized choreography and further to distributed component behaviors (orchestrations) with well-defined interfaces from which implementation code can be generated using existing techniques. The overall approach combines the merits of global choreographies and collaborative building blocks with the flexibility of component-oriented designs. The approach is illustrated using a city guiding system as case study.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Erl, T.: SOA: Principles of Service Design. Prentice Hall Press, Englewood Cliffs (2007)
Kraemer, F.A., SlĂ¥tten, V., Herrmann, P.: Tool Support for the Rapid Composition, Analysis and Implementation of Reactive Services. Journal of Systems and Software 82, 2068–2080 (2009)
Kathayat, S.B., Bræk, R.: Platform Support for Situated Collaborative Learning. In: International Conference on Mobile, Hybrid, and Online Learning, pp. 53–60. IEEE Computer Society, Los Alamitos (2009)
Kraemer, F.A., Kathayat, S.B., Bræk, R.: Unified Modeling of Service Logic with User Interfaces. In: Proceeding of the First International Workshop on Model Driven Service Engineering and Data Quality and Security, pp. 37–44. ACM, New York (2009)
CastejĂ³n, H.N., Bræk, R., Bochmann, G.V.: Realizability of Collaboration-Based Service Specifications. In: Proceedings of the 14th Asia-Pacific Software Engineering Conference, pp. 73–80. IEEE Computer Society, Los Alamitos (2007)
Kraemer, F.A.: Engineering Reactive Systems: A Compositional and Model-Driven Method Based on Collaborative Building Blocks. PhD Thesis, Norwegian University of Science and Technology (2008)
Kathayat, S.B., Bræk, R., Le, H.N.: Automatic Derivation of Components from Choreographies - A Case Study. In: International Conference on Software Engineering, Phuket, Thailand (2010)
Decker, G.: Realizability of Interaction Models. In: 1st Central-European Workshop on Services and their Composition, CEUR-WS.org, pp. 55–60 (2009)
OMG, Unified Modeling Language 2.1.1 Specification (Superstructure 07-02-05), http://www.omg.org
Whittle, J.: Extending Interaction Overview Diagrams with Activity Diagram Constructs. Software and Systems Modeling 9, 203–224 (2010)
RĂ¶ĂŸler, F., Geppert, B., Gotzhein, R.: CoSDL - An Experimental Language for Collaboration Specification. In: Sherratt, E. (ed.) SAM 2002. LNCS, vol. 2599, pp. 1–20. Springer, Heidelberg (2003)
International Telecommunication Union: Recommendation Z.100, Specification and Description Language (SDL) (November 2007), http://www.itu.int/rec/T-REC-Z.100/en
CastejĂ³n, H.N.: Synthesizing State-Machine Behaviour from UML Collaborations and Use Case Maps. In: Prinz, A., Reed, R., Reed, J. (eds.) SDL 2005. LNCS, vol. 3530, pp. 339–359. Springer, Heidelberg (2005)
Buhr, R.J.A.: Use Case Maps as Architectural Entities for Complex Systems. IEEE Transactions on Software Engineering 24, 1131–1155 (1998)
Kazhamiakin, R., Pistore, M.: Choreography Conformance Analysis: Asynchronous Communications and Information Alignment. In: Bravetti, M., NĂºĂ±ez, M., Tennenholtz, M. (eds.) WS-FM 2006. LNCS, vol. 4184, pp. 227–241. Springer, Heidelberg (2006)
Busi, N., Gorrieri, R., Guidi, C., Lucchi, R., Zavattaro, G.: Choreography and Orchestration Conformance for System Design. In: Ciancarini, P., Wiklicky, H. (eds.) COORDINATION 2006. LNCS, vol. 4038, pp. 63–81. Springer, Heidelberg (2006)
Qiu, Z., Zhao, X., Cai, C., Yang, H.: Towards the Theoretical Foundation of Choreography. In: Proceedings of the 16th International Conference on World Wide Web, pp. 973–982. ACM, New York (2007)
SalaĂ¼n, G., Bultan, T.: Realizability of Choreographies Using Process Algebra Encodings. In: Leuschel, M., Wehrheim, H. (eds.) IFM 2009. LNCS, vol. 5423, pp. 167–182. Springer, Heidelberg (2009)
Mendling, J., Hafner, M.: From Inter-organizational Workflows to Process Execution: Generating BPEL from WS-CDL. In: Meersman, R., Tari, Z., Herrero, P. (eds.) OTM-WS 2005. LNCS, vol. 3762, pp. 506–515. Springer, Heidelberg (2005)
Barros, A., Dumas, M., Oaks, P.: A Critical Overview of Web Service Choreography Description Language (WS-CDL). In: BPTrends (March 2005)
Wieczorek, S., Roth, A., Stefanescu, A., Kozyura, V., Charfi, A., Kraft, F.M., Schieferdecker, I.: Viewpoints for Modeling Choreographies in Service-Oriented Architectures. In: WICSA/ECSA, pp. 11–20. IEEE Press, Los Alamitos (2009)
Bræk, R., Floch, J.: ICT convergence: Modeling issues. In: Amyot, D., Williams, A.W. (eds.) SAM 2004. LNCS, vol. 3319, pp. 237–256. Springer, Heidelberg (2005)
Milner, R.: Communication and Concurrency. Prentice-Hall, Inc., Englewood Cliffs (1989)
CastejĂ³n, H.N.: Collaborations in Service Engineering: Modeling, Analysis and Execution. PhD thesis, Norwegian University of Science and Technology (2008)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kathayat, S.B., Bræk, R. (2011). From Flow-Global Choreography to Component Types. In: Kraemer, F.A., Herrmann, P. (eds) System Analysis and Modeling: About Models. SAM 2010. Lecture Notes in Computer Science, vol 6598. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21652-7_3
Download citation
DOI: https://doi.org/10.1007/978-3-642-21652-7_3
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-21651-0
Online ISBN: 978-3-642-21652-7
eBook Packages: Computer ScienceComputer Science (R0)