335 research outputs found

    Encoding Context-Sensitivity in Reo into Non-Context-Sensitive Semantic Models (Technical Report)

    Get PDF
    Reo is a coordination language which can be used to model the interactions among a set of components or services in a compositional manner using connectors. The language concepts of Reo include synchronization, mutual exclusion, data manipulation, memory and context-dependency. Context-dependency facilitates the precise specification of a connector's possible actions in situations where it would otherwise exhibit nondeterministic behavior. All existing formalizations of context-dependency in Reo are based on extended semantic models that provide constructs for modeling the presence and absence of I/O requests at the ports of a connector. In this paper, we show that context-dependency in Reo can be encoded in basic semantic models, namely connector coloring with two colors and constraint automata, by introducing additional fictitious ports for Reo's primitives. Both of these models were considered as not expressive enough to handle context-dependency up to now. We demonstrate the usefulness of our approach by incorporating context-dependency into the constraint automata based Vereofy model checker

    Reo + mCRL2: A Framework for Model-Checking Dataflow in Service Compositions

    Get PDF
    The paradigm of service-oriented computing revolutionized the field of software engineering. According to this paradigm, new systems are composed of existing stand-alone services to support complex cross-organizational business processes. Correct communication of these services is not possible without a proper coordination mechanism. The Reo coordination language is a channel-based modeling language that introduces various types of channels and their composition rules. By composing Reo channels, one can specify Reo connectors that realize arbitrary complex behavioral protocols. Several formalisms have been introduced to give semantics to Reo. In their most basic form, they reflect service synchronization and dataflow constraints imposed by connectors. To ensure that the composed system behaves as intended, we need a wide range of automated verification tools to assist service composition designers. In this paper, we present our framework for the verification of Reo using the mCRL2 toolset. We unify our previous work on mapping various semantic models for Reo, namely, constraint automata, timed constraint automata, coloring semantics and the newly developed action constraint automata, to the process algebraic specification language of mCRL2, address the correctness of this mapping, discuss tool support, and present a detailed example that illustrates the use of Reo empowered with mCRL2 for the analysis of dataflow in service-based process models

    Reo + mCRL2: A Framework for Model-checking Dataflow in Service Compositions

    Get PDF
    The paradigm of service-oriented computing revolutionized the field of software engineering. According to this paradigm, new systems are composed of existing stand-alone services to support complex cross-organizational business processes. Correct communication of these services is not possible without a proper coordination mechanism. The Reo coordination language is a channel-based modeling language that introduces various types of channels and their composition rules. By composing Reo channels, one can specify Reo connectors that realize arbitrary complex behavioral protocols. Several formalisms have been introduced to give semantics to Reo. In their most basic form, they reflect service synchronization and dataflow constraints imposed by connectors. To ensure that the composed system behaves as intended, we need a wide range of automated verification tools to assist service composition designers. In this paper, we present our framework for the verification of Reo using the toolset. We unify our previous work on mapping various semantic models for Reo, namely, constraint automata, timed constraint automata, coloring semantics and the newly developed action constraint automata, to the process algebraic specification language of , address the correctness of this mapping, discuss tool support, and present a detailed example that illustrates the use of Reo empowered with for the analysis of dataflow in service-based process models

    A Procedure for Splitting Processes and its Application to Coordination

    Full text link
    We present a procedure for splitting processes in a process algebra with multi-actions (a subset of the specification language mCRL2). This splitting procedure cuts a process into two processes along a set of actions A: roughly, one of these processes contains no actions from A, while the other process contains only actions from A. We state and prove a theorem asserting that the parallel composition of these two processes equals the original process under appropriate synchronization. We apply our splitting procedure to the process algebraic semantics of the coordination language Reo: using this procedure and its related theorem, we formally establish the soundness of splitting Reo connectors along the boundaries of their (a)synchronous regions in implementations of Reo. Such splitting can significantly improve the performance of connectors.Comment: In Proceedings FOCLASA 2012, arXiv:1208.432

    Coordinating multicore computing

    Get PDF

    Correlating Formal Semantic Models of Reo Connectors: Connector Coloring and Constraint Automata

    Full text link
    Over the past decades, coordination languages have emerged for the specification and implementation of interaction protocols for communicating software components. This class of languages includes Reo, a platform for compositional construction of connectors. In recent years, various formalisms for describing the behavior of Reo connectors have come to existence, each of them serving its own purpose. Naturally, questions about how these models relate to each other arise. From a theoretical point of view, answers to these questions provide us with better insight into the fundamentals of Reo, while from a more practical perspective, these answers broaden the applicability of Reo's development tools. In this paper, we address one of these questions: we investigate the equivalence between coloring models and constraint automata, the two most dominant and practically relevant semantic models of Reo. More specifically, we define operators that transform one model to the other (and vice versa), prove their correctness, and show that they distribute over composition. To ensure that the transformation operators map one-to-one (instead of many-to-one), we extend coloring models with data constraints. Though primarily a theoretical contribution, we sketch some potential applications of our results: the broadening of the applicability of existing tools for connector verification and animation.Comment: In Proceedings ICE 2011, arXiv:1108.014

    Formalizing Propagation of Priorities in Reo, Using Eight Colors

    Get PDF
    Reo is a language for programming of coordination protocols among concurrent processes. Central to Reo are connectors: programmable synchronization/communication mediums used by processes to exchange data. Every connector runs at a clock; at every tick, it enacts an enabled synchronization/communication among processes. Connectors may prioritize certain synchronizations/communications over others. “Passive” connectors use their priorities only at clock ticks, to decide which enabled synchronization/communication to enact. “Active” connectors, in contrast, use their priorities also between clock ticks, to influence which synchronizations/communications become enabled; they are said to “propagate their priorities”. This paper addresses the problem of formalizing propagation of priorities in Reo. Specifically, this paper presents a new instantiation of the connector coloring framework, using eight colors. The resulting formalization of propagation of priorities is evaluated by proving several desirable behavioral equalities.</p

    A procedure for splitting data-aware processes and its application to coordination

    Get PDF
    We present a procedure for splitting processes in a process algebra with multiactions and data (the untimed subset of the specification language mCRL2). This splitting procedure cuts a process into two processes along a set of actions A: Roughly, one of these processes contains no actions from A, while the other process contains only actions from A. We state and prove a theorem asserting that the parallel composition of these two processes is provably equal from a set of axioms (sound and complete with respect to strong bisimilarity) to the original process under some appropriate notion of synchronization. We apply our splitting procedure to the process algebraic semantics of the coordination language Reo: Using this procedure and its related theorem, we formally establish the soundness of splitting Reo connectors along the boundaries of their (a)synchronous regions in implementations of Reo

    Mā Muri Ko Mua: An introduction to the issues associated with the translation of the Pene Haare manuscript

    Get PDF
    Keywords: translation; translation theory; translation practice; Ngakuru Pene Haare; Te Rarawa; manuscript; Māori-English translation; ethically grounded translation. In September 2007, a copy of a typewritten transcript of a manuscript dated 1923 and written by Ngakuru Pene Hare was given to a member of staff of the University of Waikato by Stephen Burke and Bella Wade, descendants of the author, who requested that the University provide a scholarly treatment and translation into English of the text. Also provided later were copies of letters written by the author and a copy of the original handwritten manuscript. The original manuscript, written in the Te Rarawa ki Hokianga dialect of te reo Māori of the author's time, consists of 239 leaves and contains accounts of at least 62 Ngāpuhi battles, most of which took place between 1820 and 1840. The research reported here seeks to identify issues and problems that must be addressed if a competent and ethically-grounded translation is to be produced. Among the issues and problems identified are a number of critical ones. These include the paucity of information that is publicly available about the author, the context in which he lived and worked and the events about which he wrote. Also identified as being problematic are aspects of the text itself. Thus, for example, many of the conventions associated with contemporary writing in Māori (such as paragraphing and the signalling of word and sentence boundaries) are applied only sporadically. Some of the words and expressions used are archaic and/or esoteric, and symbolism that is deeply culturally-embedded characterises much of the text. Also of significance is the impact of writing on conventions associated with the oral transmission of information. The author's intention in producing the text is also identified as being of fundamental importance in relation to the process and product of translation, as are issues associated with the putative readership of that translation. Of paramount importance is the sacred and sensitive nature of the text itself and much of its content. In addressing these issues, a wide range of sources are drawn upon. These include the text itself and the transcription of the text, letters and other material written by, or directly influenced by the author, photographs that reveal important information about him, and a wide range of sources of information and opinion (written and oral) about the author and/ or the times and places in which he lived and the events about which he wrote. Also drawn upon is literature in the areas of linguistics and discourse analysis and the theory and practice of translation, including literature written by the growing number of Māori scholars who have focused on issues associated with translation involving Māori and English. Among the recommendations made are that the translation, a gloss translation that includes explanatory notes, be undertaken, with tikanga Māori as guiding principles, under the mentorship of knowledgeable elders and in consultation with those to whom the manuscript belongs
    corecore