Peer-Based Programming Model for Coordination Patterns
- 12 Citations
- 648 Downloads
Abstract
Modern distributed software systems must integrate in near-time parallel processes and heterogeneous information sources provided by active, autonomous software systems. Such lively information sources are e.g. sensory data, weather data, traffic data, or booking data, operated by independent distributed sites. The complex integration requires the coordination of these data flows to guarantee consistent global semantics. Design, implementation, analysis and control of distributed concurrent systems are notoriously complex tasks. Petri Nets are widely used to model concurrent activities. However, a higher-level programming abstraction is needed. We propose a new programming model for modeling concurrent coordination patterns, which is based on the idea of “peer workers” that represent re-usable coordination and application components. These components encapsulate behavior, structure distributed data and control flow, and allow integration of pre-existing service functions. A domain-specific language is presented. The usability of the peer-based programming model is evaluated with the Split/Join pattern.
Keywords
Coordination Pattern Business Logic Integration Pattern Graphical Notation Output LinkReferences
- 1.Final Draft International Standard ISO/IEC 15909. High-level petri nets - concepts, definitions and graphical notation. Technical report, V. 4.7.1 (October 2000)Google Scholar
- 2.André, C., Mallet, F., de Simone, R.: Modeling time(s). In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 559–573. Springer, Heidelberg (2007)CrossRefGoogle Scholar
- 3.Arbab, F.: Reo: a channel-based coordination model for component composition. Mathematical Structures in Computer Science 14(3), 329–366 (2004)MathSciNetzbMATHCrossRefGoogle Scholar
- 4.Clarke, D., Proença, J.: Partial connector colouring. In: Sirjani, M. (ed.) COORDINATION 2012. LNCS, vol. 7274, pp. 59–73. Springer, Heidelberg (2012)CrossRefGoogle Scholar
- 5.Craß, S., Dönz, T., Joskowicz, G., Kühn, E.: A coordination-driven authorization framework for space containers. In: 7th Int’l Conf. on Availability, Reliability and Security (ARES), pp. 133–142. IEEE (2012)Google Scholar
- 6.Craß, S., Dönz, T., Joskowicz, G., Kühn, E., Marek, A.: Securing a space-based service architecture with coordination-driven access control. Journal of Wireless Mobile Networks, Ubiquitous Computing, and Dependable Applications (JoWUA) 4(1), 76–97 (2013)Google Scholar
- 7.Craß, S., Kühn, E., Salzer, G.: Algebraic foundation of a data model for an extensible space-based collaboration protocol. In: Int. Database Engineering and Applications Symposium (IDEAS), pp. 301–306. ACM (2009)Google Scholar
- 8.Gelernter, D.: Generative communication in Linda. ACM Trans. Program. Lang. Syst. 7(1), 80–112 (1985)zbMATHCrossRefGoogle Scholar
- 9.Holzmann, G., Najm, E., Serhrouchni, A.: Spin model checking: an introduction. International Journal on Software Tools for Technology Transfer (STTT) 2(4), 321–327 (2000)CrossRefGoogle Scholar
- 10.Jensen, K., Kristensen, L., Wells, L.: Coloured petri nets and CPN tools for modelling and validation of concurrent systems. Int. Journal on Software Tools for Technology Transfer (STTT) 9, 213–254 (2007)CrossRefGoogle Scholar
- 11.Kühn, E., Mordinyi, R., Keszthelyi, L., Schreiber, C.: Introducing the concept of customizable structured spaces for agent coordination in the production automation domain. In: 8th Int’l Conf. on Autonomous Agents and Multiagent Systems (AAMAS), pp. 625–632. IFAAMAS (2009)Google Scholar
- 12.Milner, R.: The polyadic pi-calculus: a tutorial. Technical report, Logic and Algebra of Specification (1991)Google Scholar
- 13.Mordinyi, R., Kühn, E., Schatten, A.: Towards an architectural framework for agile software development. In: 17th IEEE Int. Conf. and Workshops on the Engineering of Computer-Based Systems (ECBS), pp. 276–280. IEEE (2010)Google Scholar
- 14.Ratzer, A.V., Wells, L., Lassen, H.M., Laursen, M., Qvortrup, J.F., Stissing, M.S., Westergaard, M., Christensen, S., Jensen, K.: CPN tools for editing, simulating, and analysing coloured petri nets. In: van der Aalst, W.M.P., Best, E. (eds.) ICATPN 2003. LNCS, vol. 2679, pp. 450–462. Springer, Heidelberg (2003)CrossRefGoogle Scholar
- 15.van der Aalst, W.M.P., ter Hofstede, A.H.M., Kiepuszewski, B., Barros, A.P.: Workflow patterns. Distributed and parallel databases 14(1), 5–51 (2003)CrossRefGoogle Scholar