State-of-the Art Concepts and Future Directions in Modelling Coordination

State-of-the Art Concepts and Future Directions in Modelling Coordination

Abdelhamid Abdelhadi Mansor (University of Khartoum, Sudan) and Wan Mohd Nasir Wan Kadir (Universiti Teknologi Malaysia, Malaysia)
DOI: 10.4018/978-1-4666-6026-7.ch004
OnDemand PDF Download:


Coordination is becoming an increasingly important paradigm for systems design and implementation. With multiple languages and models for coordination emerging, it is interesting to compare different models and understand their strengths and weaknesses find common semantic models and develop mappings between formalisms. This will help us to gain a deeper insight into coordination concepts and applications, and also to establish a set of features/criteria for defining and comparing coordination models. In this chapter, the authors present the current work on modelling coordination based on the coordination features. The findings show that software elements have three distinct types of coordination needs—technical, temporal, and process—and that these needs vary with the member's role; geographic distance has a negative effect on coordination, but is mitigated by shared knowledge of the team and presence awareness; and shared task knowledge is more important for coordination among collocated members. The authors articulate propositions for future research in this area based on the analysis.
Chapter Preview


Coordination languages and models are being developed to address the problem of managing the interactions among concurrent and distributed processes (Nogueira et al., 2012). The underlying principle is the separation of computations by components and their interactions (Colman & Han, 2005; Gesbert et al., 2007). To achieve correct coordination, rather than only considering dependency relations between multiple adaptations, this approach further focuses on dependency relations between managers at run-time.

Key Terms in this Chapter

Managers: Software entities that are playing vital roles in managing actors, planning for future actions and controlling their tasks in order to meet achieve the system objectives.

Autonomic System: The self-managing characteristics of distributed computing resources, adapting to unpredictable changes while hiding intrinsic complexity to operators and users. Started by IBM in 2001, this initiative ultimately aims to develop computer systems capable of self-management, to overcome the rapidly growing complexity of computing systems management, and to reduce the barrier that complexity poses to further growth.

Modelling: The representation of a real world object or system in a mathematical framework. In such way software tools can be used to imitate the operation of the real world system over time so that inferences can be drawn about potential future outcomes.

Formal Methods: The application of a fairly broad variety of theoretical computer science fundamentals, in particular logic calculi, formal languages, automata theory, and program semantics, but also type systems and algebraic data types to problems in software and hardware specification and verification.

Formal Verification: The process of checking whether a design satisfies some system properties (requirements). In order to formally verify a design, it must first be converted into a simpler “verifiable” format. The design is specified as a set of interacting systems; each has a finite number of configurations, called states. States and transition between states constitute Finite State Machines (FSMs). The entire system is an FSM, which can be obtained by composing the FSMs associated with each component. Hence the first step in verification consists of obtaining a complete FSM description of the system. Given a present state (or current configuration), the next state (or successive configuration) of an FSM can be written as a function of its present state and inputs (transition function or transition relation).

Software Adaptation: The use of adaptor-specific computational entities guaranteeing that software components will interact in the right way not only at the signature level, but also at the behavioural, semantic and service levels.

Coordination: A managerial function refers to the act of organizing, makes different activities interlink and work together for a goal or effect to fulfill desired goals.

Complete Chapter List

Search this Book: