scispace - formally typeset
Search or ask a question
Journal ArticleDOI

Mobile Channels, Implementation Within and Outside Components

TL;DR: This paper advocates and promotes the use of mobile channels for component-based software, and presents a model for component composition and coordination that supports dynamic distributed systems where components can be mobile.
About: This article is published in Electronic Notes in Theoretical Computer Science.The article was published on 2002-09-01 and is currently open access. It has received 9 citations till now. The article focuses on the topics: Component (UML).
Citations
More filters
10 Jan 2007
TL;DR: This thesis presents MoCha, a novel coordination framework that makes it possible to coordinate components from the 'outside' (exogenous), and thus, change a distributed system's behavior without having to change its components.
Abstract: In the last years, there has been a growing interest for distributed systems both in computer science and in society. The most popular and biggest distributed system in the world is the Internet. A distributed system is a collection of independent computers that appears to its users as a single coherent system. These computers are connected to each other through a network. On each of these computers there is at least one (software) component that needs to communicate with other components on remote computers to achieve some goal. Components can consist of processes, databases, applications, etc. These components are not only distributed among the several computers of a network but they also run in parallel. Therefore, distributed systems need appropriate theory and infrastructures for the coordination of its concurrently running components. In this thesis we present MoCha, a novel coordination framework. MoCha allows dynamic reconfiguration of connections among the components in a system, a property that is very useful and even crucial in systems where the components themselves are mobile. Furthermore, MoCha provides exogenous coordination. This makes it possible to coordinate components from the 'outside' (exogenous), and thus, change a distributed system's behavior without having to change its components.

76 citations

Journal ArticleDOI
TL;DR: In this article, the authors present a coordination model for component-based software systems based on the notion of mobile channels, and describe its implementation in the Java language, which is self-contained enough for developing componentbased systems in object-oriented languages.

31 citations

Book ChapterDOI
01 Jul 2007
TL;DR: The modeling technique provides ports to tame object references and aliasing and to decouple components from their environment and supports dynamic linkage, i.e. ports can be connected and disconnected at runtime.
Abstract: Modeling software systems has several purposes. The model provides a communication means between developers, a backbone to specify and check properties of the system, and a structure to organize, explain, and develop the implementation of the system. The focus of our approach is to address these purposes for hierarchically structured, object-oriented software systems. The hierarchical structure refers to the component instances at runtime: a runtime componentmay consist of a dynamically changing number of objects and other runtime components. Our modeling technique builds on and extends the concepts of class-based object-oriented languages. Runtime components are created by instantiating box classes. The modeling technique provides ports to tame object references and aliasing and to decouple components from their environment. It supports dynamic linkage, i.e. ports can be connected and disconnected at runtime. The used concurrency model is based on the join calculus.

11 citations


Cites background or methods from "Mobile Channels, Implementation Wit..."

  • ...A channel is also private, as communication cannot accidentally or intentionally be interfered by third parties [ 16 ]....

    [...]

  • ...It also allows transparent exogenous coordination [ 16 ], i.e....

    [...]

  • ...A formally well-understood way to structure communication is to use channels [15, 16 ]....

    [...]

Journal Article
TL;DR: This model supports dynamic distributed systems where components can be mobile and provides an efficient way of interaction among components, and can be used as a basis to extend other models that focus on other aspects of components that are less concerned with composition and coordination issues.
Abstract: In this paper we present a coordination model for component-based software systems based on the notion of mobile channels, define it in terms of a compositional trace-based semantics, and describe its implementation in the Java language. Channels allow anonymous, and point-to-point communication among components, while mobility allows dynamic reconfiguration of channel connections in a system. This model supports dynamic distributed systems where components can be mobile. It provides an efficient way of interaction among components. Furthermore, our model provides a clear separation between the computational part and the coordination part of a system, allowing the development and description of the coordination structure of a system to be done in a transparent and exogenous manner. Our description of the Java implementation of this coordination model demonstrates that it is self-contained enough for developing component-based systems in object-oriented languages. However, if desired, our model can be used as a basis to extend other models that focus on other aspects of components that are less concerned with composition and coordination issues.

7 citations

References
More filters
Journal ArticleDOI
TL;DR: It is suggested that input and output are basic primitives of programming and that parallel composition of communicating sequential processes is a fundamental program structuring method.
Abstract: This paper suggests that input and output are basic primitives of programming and that parallel composition of communicating sequential processes is a fundamental program structuring method. When combined with a development of Dijkstra's guarded command, these concepts are surprisingly versatile. Their use is illustrated by sample solutions of a variety of a familiar programming exercises.

11,419 citations


"Mobile Channels, Implementation Wit..." refers methods in this paper

  • ...The idea of using (mobile) channels for components has its foundations in the earlier work of some of the authors of this paper [4,5], in the CSP model [13], in the -calculus [17], and in Broy's work on streams [8]....

    [...]

Book
01 Jan 1985

9,210 citations

Book
01 Jan 1999
TL;DR: In The Unified Modeling Language User Guide, the original developers of the UML provide a tutorial to the core aspects of the language in a two-color format designed to facilitate learning.
Abstract: In The Unified Modeling Language User Guide, the original developers of the UML--Grady Booch, James Rumbaugh, and Ivar Jacobson--provide a tutorial to the core aspects of the language in a two-color format designed to facilitate learning. Starting with a conceptual model of the UML, the book progressively applies the UML to a series of increasingly complex modeling problems across a variety of application domains. This example-driven approach helps readers quickly understand and apply the UML. For more advanced developers, the book includes a learning track focused on applying the UML to advanced modeling problems.With The Unified Modeling Language User Guide, readers will:Understand what the UML is, what it is not, and why it is relevant to the development of software-intensive systemsMaster the vocabulary, rules, and idioms of the UML in order to "speak" the language effectivelyLearn how to apply the UML to a number of common modeling problemsSee illustrations of the UML's use interspersed with use cases for specific UML features, andGain insight into the UML from the original creators of the UML.

6,634 citations

Journal ArticleDOI
TL;DR: The a-calculus is presented, a calculus of communicating systems in which one can naturally express processes which have changing structure, including the algebraic theory of strong bisimilarity and strong equivalence, including a new notion of equivalence indexed by distinctions.
Abstract: We present the a-calculus, a calculus of communicating systems in which one can naturally express processes which have changing structure. Not only may the component agents of a system be arbitrarily linked, but a communication between neighbours may carry information which changes that linkage. The calculus is an extension of the process algebra CCS, following work by Engberg and Nielsen, who added mobility to CCS while preserving its algebraic properties. The rr-calculus gains simplicity by removing all distinction between variables and constants; communication links are identified by names, and computation is represented purely as the communication of names across links. After an illustrated description of how the n-calculus generalises conventional process algebras in treating mobility, several examples exploiting mobility are given in some detail. The important examples are the encoding into the n-calculus of higher-order functions (the I-calculus and combinatory algebra), the transmission of processes as values, and the representation of data structures as processes. The paper continues by presenting the algebraic theory of strong bisimilarity and strong equivalence, including a new notion of equivalence indexed by distinctions-i.e., assumptions of inequality among names. These theories are based upon a semantics in terms of a labeled transition system and a notion of strong bisimulation, both of which are expounded in detail in a companion paper. We also report briefly on work-in-progress based upon the corresponding notion of weak bisimulation, in which internal actions cannot be observed. 0 1992 Academic Press, Inc.

3,093 citations


"Mobile Channels, Implementation Wit..." refers methods in this paper

  • ...The idea of using (mobile) channels for components has its foundations in the earlier work of some of the authors of this paper [4,5], in the CSP model [13], in the -calculus [17], and in Broy's work on streams [8]....

    [...]

01 Dec 1999

1,636 citations


"Mobile Channels, Implementation Wit..." refers background in this paper

  • ...For example, this is the case in the standard OOmodeling languageUML [7]....

    [...]

Trending Questions (1)
How do you start a communication channel in SAP PI?

Channels allow anonymous and point-to-point communication among components, while mobility allows dynamic reconfiguration of channel connections in a system.