Abstract

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.

Highlights

  • The application landscape is changing due to rapid advances in hardware and communication infrastructures

  • The approach suggested in this paper is to provide coordination patterns composed from “structural elements”, which are derived from a single concise model

  • message exchange patterns (MEPs) describe communication use cases, enterprise application integration (EAI) patterns support integration use cases, WF patterns aim at the comparison of workflow languages and cloud computing patterns target the development of applications in the cloud

Read more

Summary

Introduction

The application landscape is changing due to rapid advances in hardware and communication infrastructures. Modern and future distributed cooperative information systems are complex, especially because they involve high concurrency, distribution and dynamics, as well as huge numbers of heterogeneous devices, resources and participants They must coordinate and integrate highly concurrent and lively processes and information sources of active, autonomous software systems in real-time. These activities are processes that need to collaborate or compete with each other in order to achieve a goal like for example, to balance dynamic loads among heterogeneous processes, replicate data under given consistency requirements, notify processes in real-time about events, achieve a consensus despite of distributed and dynamically joining and leaving partners or adaptively negotiate between interfaces and versions.

Patterns
Workflow patterns
Cloud computing patterns
Coordination patterns
Requirements on a Coordination Model
Peer Model
Concepts of the ground model
Wiring
Service
Exception handling
System peers
Meta model peer
Graphical notation
Pattern composition Pattern composition36 is based on the Peer Model concepts
Proof-of-Concept
Example
Worker pattern
Allocation pattern
Actor Model
Business process modeling notation
Coordination Patterns in Some Industrial Projects
Railway
Summary
Conclusion
A Pattern Language

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.