World Scientific
Skip main navigation

Cookies Notification

We use cookies on this site to enhance your user experience. By continuing to browse the site, you consent to the use of our cookies. Learn More
×
Our website is made possible by displaying certain online content using javascript.
In order to view the full content, please disable your ad blocker or whitelist our website www.worldscientific.com.

System Upgrade on Tuesday, March 30th, 2021 at 2am (ET)

During this period, our website will be offline for less than an hour but the E-commerce and registration of new users may not be available for up to 12 hours.
For online purchase, please visit us again. Contact us at [email protected] for any enquiries.
Special Issue on Cooperative Information Systems in the Digital AgeOpen Access

Reusable Coordination Components: Reliable Development of Cooperative Information Systems

    Today’s emerging trends like factory of the future, big data, Internet-of-things, intelligent traffic solutions, cyber-physical systems, wireless sensor networks, smart home, smart city and smart grid raise new challenges on software development. They are characterized by high concurrency, distribution and dynamics as well as huge numbers of heterogeneous devices, resources and users that must collaborate in a reliable way. The management of the interactions and dependencies between the participants is a complex task posing massive coordination problems. The here proposed approach is twofold: (i) to analyze similarities in the communication and synchronization behavior of such applications and to identify coordination patterns; and (ii) to give a precise specification of them by means of a suitable coordination model which enables the development of coordination pattern-based software components as solutions. The vision is to compose advanced cooperative information systems from proven, configurable, reusable, generic components that run on a suitable target platform, in order to reduce software development time, risks and costs. In this paper we delimit the idea of “coordination patterns” from other related pattern approaches and motivate the need for a well-defined model to specify them. Several coordination models to achieve this goal are discussed, and the advantages of a new coordination model termed the “Peer Model” are pointed out. The feasibility of the approach to identify coordination patterns, to model them and to provide generic components that can be reused in different scenarios through configuration and composition is evaluated by means of a coordination pattern found in several industrial use cases.

    References

    • 1. T. W. Malone and K. Crowston, The interdisciplinary study of coordination, ACM Comput. Surv. 26(1) (1994) 87–119. Crossref, ISIGoogle Scholar
    • 2. A. Ranganathan and R. H. Campbell, What is the complexity of a distributed computing system? Complexity 12(6) (2007) 37–45. Crossref, ISIGoogle Scholar
    • 3. J. A. McDermid, Complexity: Concept, causes and control, in Proc. Sixth IEEE Int. Conf. Engineering of Complex Computer Systems (ICECCS) (2000), pp. 2–9. Google Scholar
    • 4. B. Colwell, Complexity in design, Computer 38(10) (2005) 10–12. Crossref, ISIGoogle Scholar
    • 5. C. Alexander, S. Ishikawa, M. Silverstein, M. Jacobson, I. Fiksdahl-King and S. Angel, A Pattern Language: Towns, Buildings, Construction (Oxford University Press, 1978). Google Scholar
    • 6. C. Kühn and M. Herzog, Modeling the representation of architectural design cases, Autom. Construct. 2(1) (1993) 1–10. CrossrefGoogle Scholar
    • 7. E. Gamma, R. Helm, R. Johnson and J. Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software (Addison-Wesley, 1995). Google Scholar
    • 8. D. C. Schmidt, M. Stal, H. Rohnert and F. Buschmann, Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked Objects (Wiley, 2000). Google Scholar
    • 9. J. Nitzsche, T. van Lessen and F. Leymann, WSDL 2.0 message exchange patterns: Limitations and opportunities, in Proc. Third Int. Conf. Internet and Web Applications and Services (ICIW) (IEEE, 2008), pp. 168–173. Google Scholar
    • 10. G. Hohpe and B. Woolf, Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions (Addison-Wesley, 2003). Google Scholar
    • 11. W. van der Aalst, A. ter Hofstede, B. Kiepuszewski and A. Barros, Workflow patterns, Distrib. Parallel Databases 14(1) (2003) 5–51. Crossref, ISIGoogle Scholar
    • 12. W. van der Aalst and A. ter Hofstede, Workflow patterns put into context, Softw. Syst. Model. 11(3) (2012) 319–323. Crossref, ISIGoogle Scholar
    • 13. E. Börger, Approaches to modeling business processes: A critical analysis of BPMN, workflow patterns and YAWL, Softw. Syst. Model. 11(3) (2012) 305–318. Crossref, ISIGoogle Scholar
    • 14. C. Fehling, F. Leymann, R. Retter, W. Schupeck and P. Arbitter, Cloud Computing Patterns — Fundamentals to Design, Build, and Manage Cloud Applications (Springer, 2014). Google Scholar
    • 15. F. Arbab, Reo: A channel-based coordination model for component composition, Math. Struct. Comput. Sci. 14(3) (2004) 329–366. Crossref, ISIGoogle Scholar
    • 16. E. Kühn, S. Craß, G. Joskowicz, A. Marek and T. Scheller, Peer-based programming model for coordination patterns, in Proc. 15th Int. Conf. Coordination Models and Languages (COORDINATION) (Springer, 2013), pp. 121–135. Google Scholar
    • 17. D. Gelernter, Generative communication in Linda, ACM Trans. Program. Lang. Syst. 7(1) (1985) 80–112. Crossref, ISIGoogle Scholar
    • 18. E. Kühn, R. Mordinyi, L. Keszthelyi and C. Schreiber, Introducing the concept of customizable structured spaces for agent coordination in the production automation domain, in Proc. 8th Int. Conf. Autonomous Agents and Multiagent Systems (AAMAS) (IFAAMAS, 2009), pp. 625–632. Google Scholar
    • 19. P. Th. Eugster, P. Felber, R. Guerraoui and A.-M. Kermarrec, The many faces of publish/subscribe, ACM Comput. Surv. 35(2) (2003) 114–131. Crossref, ISIGoogle Scholar
    • 20. G. A. Agha, ACTORS: A Model of Concurrent Computation in distributed systems (MIT Press, 1990). Google Scholar
    • 21. C. A. Petri, Kommunikation mit Automaten, Ph.D. thesis, Technische Hochschule Darmstadt (1962). Google Scholar
    • 22. E. Börger and J. K. Huggins, Abstract state machines 1988–1998: Commented ASM bibliography, arXiv:cs/9811014 [cs.SE]. Google Scholar
    • 23. N. Busi, R. Gorrieri and G. Zavattaro, Comparing three semantics for Linda-like languages, Theor. Comput. Sci. 240(1) (2000) 49–90. Crossref, ISIGoogle Scholar
    • 24. E. Denti, A. Natali and A. Omicini, Programmable coordination media, in Proc. Second Int. Conf. Coordination Languages and Models (COORDINATION) (Springer, 1997), pp. 274–288. Google Scholar
    • 25. A. L. Murphy, G. P. Picco and G.-C. Roman, LIME: A coordination model and middleware supporting mobility of hosts and agents, ACM Trans. Softw. Eng. Methodol. 15(3) (2006) 279–328. Crossref, ISIGoogle Scholar
    • 26. A. Omicini and F. Zambonelli, TuCSoN: A coordination model for mobile information agents, in Proc. 1st Workshop Innovative Internet Information Systems (1998), pp. 177–187. Google Scholar
    • 27. A. I. T. Rowstron and A. Wood, Solving the Linda multiple RD problem, in Proc. First Int. Conf. Coordination Languages and Models (COORDINATION) (Springer, 1996), pp. 357–367. Google Scholar
    • 28. E. Kühn, J. Riemer, R. Mordinyi and L. Lechner, Integration of XVSM spaces with the web to meet the challenging interaction demands in pervasive scenarios, Ubiquit. Comput. Commun. J. 3 (2008) 1–12. Google Scholar
    • 29. S. Craß, E. Kühn and G. Salzer, Algebraic foundation of a data model for an extensible space-based collaboration crotocol, in Proc. 2009 Int. Database Engineering and Applications Symp. (IDEAS) (ACM, 2009), pp. 301–306. Google Scholar
    • 30. S. Craß, A formal model of the extensible virtual shared memory (XVSM) and its implementation in Haskell — Design and specification, Master’s thesis, TU Vienna (2010). Google Scholar
    • 31. E. Freeman, K. Arnold and S. Hupfer, JavaSpaces Principles, Patterns, and Practice, 1st edn. (Addison-Wesley, 1999). Google Scholar
    • 32. P. Ciancarini, Coordination models and languages as software integrators, ACM Comput. Surv. 28 (1996) 300–302. Crossref, ISIGoogle Scholar
    • 33. G. P. Picco, A. L. Murphy and G.-C. Roman, LIME: Linda meets mobility, in Proc. 1999 Int. Conf. Software Engineering (ICSE) (ACM, 1999), pp. 368–377. Google Scholar
    • 34. S. Craß, G. Joskowicz and E. Kühn, A decentralized access control model for dynamic collaboration of autonomous peers, in Proc. 11th EAI Int. Conf. Security and Privacy in Communication Networks (SecureComm) (Springer, 2015), pp. 519–537. Google Scholar
    • 35. S. Craß, T. Dönz, G. Joskowicz, E. Kühn and A. Marek, Securing a space-based service architecture with coordination-driven access control, J. Wirel. Mob. Netw. Ubiquit. Comput. Dependable Appl. 4(1) (2013) 76–97. Google Scholar
    • 36. E. Kühn, S. Craß and G. Schermann, Extending a peer-based coordination model with composable design patterns, in Proc. 23rd Euromicro Int. Conf. Parallel, Distributed, and Network-Based Processing (PDP) (IEEE, 2015), pp. 53–61. Google Scholar
    • 37. V. Šešum-Čavić and E. Kühn, Self-organized load balancing through swarm intelligence, in Next Generation Data Technologies for Collective Computational Intelligence, Studies in Computational Intelligence, eds. N. BessisF. Xhafa (Springer, 2011), pp. 195–224. CrossrefGoogle Scholar
    • 38. E. Kühn and V. Šešum-Čavić, A Space-based generic pattern for self-initiative load balancing agents, in Proc. 10th Int. Workshop Engineering Societies in the Agents World (ESAW), Lecture Notes in Computer Science, Vol. 5881 (Springer, 2009), pp. 17–32. Google Scholar
    • 39. S. Androutsellis-Theotokis and D. Spinellis, A survey of peer-to-peer content distribution technologies, ACM Comput. Surv. 36(4) (2004) 335–371. Crossref, ISIGoogle Scholar
    • 40. L. M. Kristensen, S. Christensen and K. Jensen, The practitioner’s guide to coloured Petri Nets, Int. J. Softw. Tools Technol. Transf. 2(2) (1998) 98–132. CrossrefGoogle Scholar
    • 41. F. D. J. Bowden, A brief survey and synthesis of the roles of time in Petri Nets, Math. Comput. Model. 31(10–12) (2000) 55–68. Crossref, ISIGoogle Scholar
    • 42. E. Börger, Modeling distributed algorithms by abstract state machines compared to Petri Nets, in Proc. 5th Int. Conf. Abstract State Machines, Alloy, B, TLA, VDM, and Z (ABZ) (Springer, 2016), pp. 3–34. Google Scholar
    • 43. F. Arbab, C. Baier, F. de Boer and J. Rutten, Models and temporal logical specifications for timed component connectors, Softw. Syst. Model. 6(1) (2007) 59–82. Crossref, ISIGoogle Scholar
    • 44. N. Kokash, C. Krause and E. De Vink, Time and data-aware analysis of graphical service models in Reo, in Proc. 8th IEEE Int. Conf. Software Engineering and Formal Methods (2010), pp. 125–134. Google Scholar
    • 45. C. Hewitt, P. Bishop and R. Steiger, A universal modular ACTOR formalism for artificial intelligence, in Proc. 3rd Int. Joint Conf. Artificial Intelligence (IJCAI) (Morgan Kaufmann, 1973), pp. 235–245. Google Scholar
    • 46. M. M. Jaghoori, F. S. de Boer, T. Chothia and M. Sirjani, Schedulability of asynchronous real time concurrent objects, J. Log. Algebr. Program. 78(5) (2009) 402–416. CrossrefGoogle Scholar
    • 47. Lightbend, Inc., Akka Java Documentation, Release 2.4.7, edn. (Lightbend, 2016). Google Scholar
    • 48. P. Bernstein, S. Bykov, A. Geller, G. Kliot and J. Thelin, Orleans: Distributed virtual actors for programmability and scalability, Technical Report MSR-TR-2014-41, Microsoft (2014). Google Scholar
    • 49. D. Rauch, PeerSpace.net: Implementing and evaluating the Peer Model with focus on API usability, Master’s thesis, TU Wien (2014). Google Scholar
    • 50. T. Scheller and E. Kühn, Automated measurement of API usability: The API concepts framework, Inf. Softw. Technol. 61 (2015) 145–162. Crossref, ISIGoogle Scholar
    • 51. E. Kühn, S. Craß and T. Hamböck, Approaching coordination in distributed embedded applications with the Peer Model DSL, in Proc. 40th Euromicro Conf. Software Engineering and Advanced Applications (SEAA) (IEEE, 2014), pp. 64–68. Google Scholar
    • 52. E. Kühn, S. Craß, G. Joskowicz and M. Novak, Flexible modeling of policy-driven upstream notification strategies, in Proc. 29th Annu. ACM Symp. Applied Computing (SAC) (2014), pp. 1352–1354. Google Scholar
    • 53. S. Bessler, A. Fischer, E. Kühn, R. Mordinyi and S. Tomic, Using tuple-spaces to manage the storage and dissemination of spatial-temporal content, J. Comput. Syst. Sci. 77(2) (2011) 322–331. Crossref, ISIGoogle Scholar
    • 54. S. Craß, J. Hirsch, E. Kühn and V. Sesum-Cavic, An adaptive and flexible replication mechanism for space-based computing, in Proc. 8th Int. Joint Conf. Software and Technologies (ICSOFT) (SciTePress, 2013), pp. 599–606. Google Scholar
    • 55. S. Craß, E. Kühn, S. Bessler and T. Paulin, A generic load balancing framework for cooperative ITS applications, in Proc. 3rd Int. Conf. Connected Vehicles and Expo (ICCVE) (IEEE, 2014), pp. 385–390. Google Scholar
    • 56. R. Mordinyi, T. Moser, E. Kühn, S. Biffl and A. Mikula, Foundations for a model-driven integration of business services in a safety-critical application domain, in Proc. 35th Euromicro Conf. Software Engineering and Advanced Applications (SEAA) (IEEE, 2009), pp. 267–274. Google Scholar
    Published: 9 January 2017

    Remember to check out the Most Cited Articles in IJCIS!

    Check out these titles in digital security!