skip to main content
article

The role of roles in supporting reconfigurability and fault localizations for open distributed and embedded systems

Published:01 September 2007Publication History
Skip Abstract Section

Abstract

One of the main characteristics of open distributed embedded systems is that the involved entities are often very dynamic—different individual entities may join or leave the systems frequently. Therefore, systems built of these dynamic entities must be runtime reconfigurable. In addition, large classes of open embedded systems often have high availability and dependability requirements. However, the openness makes these requirements more difficult to achieve and the system more vulnerable to attacks.

This article presents a coordination model, the Actor, Role and Coordinator (ARC) model, that aims to support reconfigurability and fault localization for open distributed embedded software systems. In particular, the actor model is used to model concurrent embedded entities, while the system's reconfigurability and dependability requirements are encapsulated within coordination objects: roles and coordinators, and are achieved through coordination among the actors. Roles, as a key thrust in the ARC model not only represent an abstraction for a set of behaviors shared by a group of actors so that reconfiguration within the roles becomes transparent to entities outside the roles, but also assume coordination responsibilities among the member actors. The article also argues from both analytical and empirical perspectives that with the support of the role, faults can be localized within actors, and actor level reconfiguration becomes transparent to the system.

References

  1. Agha, G., Mason, I. A., Smith, S. F., and Talcott, C. L. 1997. A foundation for actor computation. J. Funct. Program. 7, 1, 1--72. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Agha, G. 1986. Actors: A model of Concurrent Computation in Distributed Systems. MIT Press. Google ScholarGoogle ScholarCross RefCross Ref
  3. Amaro, S., Pimentel, E., and Roldan, A. M. 2004. A preliminary study on the expressive power of Reo. In Proceedings of the 3rd International Workshop on the Foundations of Coordination Languages and Software Architectures, London, United Kingdom.Google ScholarGoogle Scholar
  4. Arbab, F. 2004a. Abstract behavior types: A foundation model for components and their composition. Tech. rep., CWI, Amsterdam, Netherlands.Google ScholarGoogle Scholar
  5. Arbab, F. 2004b. Reo: a channel-based coordination model for component composition. Math. Struct. Comput. Sci. 14, 3, 329--366. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Arbab, F. 1996. IWIM: A communication model for cooperative systems. In Proceedings of the 2nd International Conference on the Design of Cooperative Systems. 567--585.Google ScholarGoogle Scholar
  7. Berry, A. and Kaplan, S. 1998. Open, distributed coordination with finesse. In Proceedings of the 1998 ACM Symposium on Applied Computing. 178--184. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Bistarelli, S., Montanari, U., and Rossi, F. 2002. Soft concurrent constraint programming. European Symposium on Programming. 7, 3, 53--67. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Cabri, G., Ferrari, L., and Leonardi, L. 2003. BRAIN: a framework for flexible role-based interactions in multiagent systems. Coordination Models and Languages, 2888/2003, 145--161. LNCS, Springer-Verlag.Google ScholarGoogle Scholar
  10. Cabri, G., Ferrari, L., and Leonardi, L. 2004. Agent role-based collaboration and coordination: a survey about existing approaches. In International Conference on Systems, Man and Cybernetics. 6, 5473--5478.Google ScholarGoogle Scholar
  11. Cardelli, L. and Gordon, A. 2000. Mobile Ambients. Theor. Comput. Sci. Special Issue on Coordination 240, 1, 177--213. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Carriero, N. and Gelernter, D. 1989. Linda in context. Comm. ACM. 32, 4, 444--458. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Cheung, S. 2005. Sensor Coordination using Role-Based Programming. NSF NeTSNOSS Informational Meeting.Google ScholarGoogle Scholar
  14. Colman, A. and Han, J. 2005. Coordination systems in role-based software. Coord. Models Lang. 3454/2005, 63--78. LNCS, Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. CORBA specification. http://www.omg.org.Google ScholarGoogle Scholar
  16. Cremonini, M., Omicini, A., and Zambonelli, F. 2000. Coordination and access control in open distributed agent system: The TuCSoN approach. Coord. Lang. Models, 1906, 99--114. LNCS, Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Cruz, J. C. 2002. OpenCoLaS: A coordination framework for CoLaS dialects. Coord. Models Lang. 2315/2002, 231--247. LNCS, Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Cruz, J. C. and Ducasse, S. 1999. CoLaS: A group based approach for coordinating active objects. Coord. Models Lang., 1594/1999, 355--371. LNCS, Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Ferraiolo, D. F. and Kuhn, D. R. 1992. Role based access control. In Proceedings of 15th National Computer Security Conference.Google ScholarGoogle Scholar
  20. Elrad, T., Filman, R. E., and Bader, A. 2001. Aspect-oriented programming. Comm. ACM 44, 10, 29--32. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Fowler, M. 1997. Dealing with Roles. In Proceedings of European Conference on Pattern Language of Programs.Google ScholarGoogle Scholar
  22. Frølund, S. 1996. Coordinating Distributed Objects: An Actor-Based Approach to Synchronization. MIT Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Gelernter, D. 1985. Generative Communication in Linda. ACM Trans. Prog. Lang. Syst. 7, 1, 80--112. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Hoare, C. A. R. 1978. Communicating sequential processes. Commun. ACM. 21, 8, 666--677. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Hoare, C. A. R. 1985. Communicating Sequential Processes. Prentice Hall International Series in Computer Science. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Janneck, J. W. 2002. Actors and their composition. Tech. rep. University of California at Berkeley.Google ScholarGoogle Scholar
  27. Kendall, E. A. 2000. Role modeling for agent system analysis, design and implementation. IEEE Concur. 8, 2, 34--41. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.-M., and Irwin, J. 1997. Aspect-oriented programming. In Proceedings of ECOOP'97, 1241/1997, 220--242. LNCS, Springer-Verlag.Google ScholarGoogle Scholar
  29. Kwiat, K., Ravindran, K., and Hurley, P. 2005. Energy-efficient replica voting mechanisms for secure real-time embedded systems. In Proceedings of the Sixth IEEE International Symposium on a World of Wireless, Mobile and Multimedia Networks. 153--162. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Lee, E. A. 2000. What's ahead for embedded software. IEEE Comput. 33, 9, 18--26. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Liu, J., Eker, J., Janneck, J. W., Liu, X., and Lee, E. A. 2004. Actor-oriented control system design: A responsible framework perspective. IEEE Trans. Contr. Syst. Tech. 12, 2, 250--262.Google ScholarGoogle ScholarCross RefCross Ref
  32. Microsoft. 2005. DCOM technology. http://www.microsoft.com/com/tech/DCOM.asp.Google ScholarGoogle Scholar
  33. Milner, R. 1998. The π-calculus and its applications (keynote address). In IJCSL.Google ScholarGoogle Scholar
  34. Milner, R. 1999. Communicating and Mobile Systems: the Pi-Calculus. Cambridge University Press; 1st edition. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Milojicic, D. 2000. Embedded systems. IEEE Concur. 8, 4, 80--90. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Minsky, N. H. and Ungureanu, V. 2000. Law-governed interaction: a coordination and control mechanism for heterogeneous distributed systems. ACM Trans. Softw. Engin. Meth. 9, 3, 273--305. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Murphy, A. L., Picco, G. P., and Roman, G.-C. 2006. Lime: A coordination model and middleware supporting mobility of hosts and agents. ACM Trans. Softw. Engin. Meth. 15, 3, 279--328. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Omicini, A., Ricci, A., and Viroli, M. 2006. Agent Coordination Contexts for the Formal Specification and Enactment of Coordination and Security Policies. Sci. Comput. Prog. 63, 1, 88--107. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Omicini, A. and Zambonelli, F. 1999. Tuple Centres for the Coordination of Internet Agents. In Proceedings of the ACM Symposium on Applied Computing, 183--190. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Omicini, A. and Denti, E. 2001. Formal ReSpecT. In Electronic Notes in Theoretical Computer Science. 48, 1, 179--196.Google ScholarGoogle ScholarCross RefCross Ref
  41. Papadopoulos, G. A. and Arbab, F. 1998. Coordination models and languages. In Advances in Computers 46, 330--401. Academic Press.Google ScholarGoogle Scholar
  42. Picco, G. P., Murphy, A. L., and Roman, G.-C. 1999. Lime: Linda meets mobility. Proceedings of the 21st International Conference on Software Engineering. 368--377. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Richi, A. and Omicini, A. 2003. Supporting coordination in open computational systems with TuCSon. WETICE. 365--370. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Roman, G.-C. and Payton, J. 2005. A Principled Exploration of Coordination Models. Theor. Comput. Sci. 336, 2--3, 367--401. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Roman, G.-C. and McCann, P. J. 2002. A Notation and Logic for Mobile Computing. Formal Methods in System Design 20, 47--68. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. Ren, S., Chen, N., Yu, Y., Poirot, P.-E., Shen, L., and Marth, K. 2006. Actors, roles and coordinators a coordination model for open distributed embedded systems. Coord. Models Lang. 4038/2006, 247--265. LNCS, Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. Ren, S., Venkatasubramanian, N., and Agha, G. A. 1997. Formalizing Multimedia QoS constraints using actors. In Proceedings of Second IFIP International Conference on Formal Methods for Open Object Based Distributed Systems, 139--156. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Saraswat, V. A. 1993. Concurrent Constraint Programming. The MIT Press, ISBN: 0-262-19297-7 edition.Google ScholarGoogle Scholar
  49. Varela, C. A. and Agha, G. A. 1999. A hierarchical model for coordination of concurrent activities. Coord. Models Lang. 1594/1999, 166-178. LNCS, Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. Venkatasubramanian, N., Agha, G. A., and Talcott, C. 1999. A MetaObject framework for QoS-based distributed resource management. In Proceedings of the Third International Symposium on Computing in Object-Oriented Parallel Environments.Google ScholarGoogle Scholar
  51. Wirth, N. 1977. Towards a discipline of real-time programming. Comm. ACM. 20, 8, 577--583. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. The role of roles in supporting reconfigurability and fault localizations for open distributed and embedded systems

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in

          Full Access

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader