This Article 
 Bibliographic References 
 Add to: 
Connectors for Mobile Programs
May 1998 (vol. 24 no. 5)
pp. 331-341

Abstract—Software Architecture has put forward the concept of connector to express complex relationships between system components, thus facilitating the separation of coordination from computation. This separation is especially important in mobile computing due to the dynamic nature of the interactions among participating processes. In this paper, we present connector patterns, inspired in Mobile UNITY, that describe three basic kinds of transient interactions: action inhibition, action synchronization, and message passing. The connectors are given in COMMUNITY, a UNITY-like program design language which has a semantics in Category Theory. We show how the categorical framework can be used for applying the proposed connectors to specific components and how the resulting architecture can be visualized by a diagram showing the components and the connectors.

[1] "Special Issue on Software Architecture," D. Garlan and D. Perry, eds., IEEE Trans. Software Eng., vol. 21, no. 4, Apr. 1995.
[2] M. Shaw and D. Garlan, Software Architecture: Perspectives on an Emerging Discipline. Prentice Hall, 1996.
[3] J.L. Fiadeiro and T. Maibaum, "Interconnecting Formalisms: Supporting Modularity, Reuse and Incrementality," Proc. Third Symp. Foundations of Software Eng., SIGSOFT'95, pp. 72-80, ACM Press, 1995.
[4] J.L. Fiadeiro and T. Maibaum, "Categorial Semantics of Parallel Program Design," Science of Computer Programming, vol. 28, pp. 111-138, 1997.
[5] K.M. Chandy and J. Misra, Parallel Program Design—A Foundation. Addison-Wesley, 1988.
[6] N. Francez and I. Forman, Interacting Processes. Addison-Wesley, 1996.
[7] G.-C. Roman, P.J. McCann, and Jerome Y. Plun, "Mobile UNITY: Reasoning and Specification in Mobile Computing," ACM TOSEM, vol. 6, no. 3, pp. 250-282, July 1997.
[8] P.J. McCann and G.-C. Roman, "Mobile UNITY: A Language and Logic for Concurrent Mobile Systems," Technical Report WUCS-97-01, Dept. of Computer Science, Washington Univ., St. Louis, Dec. 1996.
[9] J.L. Fiadeiro and A. Lopes, "Semantics of Architectural Connectors," Proc. TAPSOFT'97, pp. 505-519, Lecture Notes in Computer Science, 1214. Springer-Verlag, 1997.
[10] B.C. Peirce, Basic Category Theory for Computer Scientists. MIT Press, 1991.
[11] M. Wermelinger and J. Fiadeiro, "Connectors for Mobile Programs," Technical Report DI-FCUL TR-98-1, Dept. of Computer Science, Univ. of Lisbon, Portugal, Jan. 1998.
[12] U. Leonhardt and J. Magee, "Towards a General Location Service for Mobile Environments," Proc. Third Int'l Workshop Service in Distributed and Networked Environments, 1996.
[13] J.L. Fiadeiro and T. Maibaum, "A Mathematical Toolbox for the Software Architect," Proc. Eighth Int'l Workshop on Software Specification and Design, pp. 46-55. IEEE CS Press, 1996.
[14] M. Wermelinger and J.L. Fiadeiro, "Towards an Algebra of Architectural Connectors: A Case Study on Synchronization for Mobility," Proc. Ninth Int'l Workshop Software Specification and Design, pp. 135-142, IEEE CS Press, Apr. 1998.

Index Terms:
Software Architecture, connectors, transient interactions, UNITY.
Michel Wermelinger, José Luiz Fiadeiro, "Connectors for Mobile Programs," IEEE Transactions on Software Engineering, vol. 24, no. 5, pp. 331-341, May 1998, doi:10.1109/32.685257
Usage of this product signifies your acceptance of the Terms of Use.