Carp@ — A Reflection Based Tool for Observing Jini Services
Jini™ offers the basic technology to develop distributed systems where the participating clients, services and their interactions can adapt dynamically to a changing environment.1 To monitor the internal processes in such a system a reflection mechanism is necessary. However, the existing reflection mechanisms in Java emerged to be too weak to supply enough information for a suitable management of such a system. Therefore these mechanisms had to be extended by a reflective meta level upon Jini. The tool Carp@ (implemented itself as Jini system) is designed to visualize, analyze and control dynamic and distributed Jini systems. This is done by developing a meta architecture upon a Jini system that reflects the running Jini system.
This paper describes the meta architecture, the tool to monitor it and reports the gained experiences together with their implied consequences.
KeywordsDynamic Systems Reflection Distributed Systems Jini Tool Support
Unable to display preview. Download preview PDF.
- 1.Robert Allen and David Garlan. A Formal Basis for Architectural Connection. ACM Transactions on Software Engineering and Methodology, July 1997.Google Scholar
- 2.Ken Arnold. The Jini Architecture: Dynamic Services in a Flexible Network. In Proceedings of the 36th ACM/IEEE Conference on Design Automation, 1999.Google Scholar
- 3.Ken Arnold, Bryan O’Sullivan, Robert W. Scheifler, Jim Waldo, and Ann Wollrath. The Jini™ Specification. Addison-Wesley, 1999.Google Scholar
- 4.Specification of the Bluetooth System v1.0A. http://www.bluetooth.com/, July 1999.
- 6.Carp@ Homepage. http://www4.in.tum.de/~carpat/.
- 7.Walter Cazzola, Andrea Savigni, Andrea Sosio, and Francesco Tisato. Architectural Reflection: Concepts, Design, and Evaluation. Technical Report RI-DSI 234-99, DSI, University degli Studi di Milano, May 1999. Available at http://www.disi.unige.it/person/CazzolaW/references.html.
- 8.Geoff A. Cohen, Jeffrey S. Chase, and David L. Kaminsky. Automatic Program Transformation with JOIE. In Proceedings of USENIX Annual technical Symposium 98, 1998.Google Scholar
- 9.Corba Homepage. http://www.omg.org/corba/.
- 10.Desmond F. D’Souza and Alan Cameron Wills. Objects, Components, and Frameworks with UML — The Catalysis Approach. Addison Wesley, Reading, Mass., 1999.Google Scholar
- 11.Guy Eddon and Henry Eddon. Inside Distributed COM. Microsoft Press, 1998.Google Scholar
- 12.W._Keith Edwards. Core Jini. Prentice Hall, 1999.Google Scholar
- 13.David Flanagan. JAVA in a Nutshell. O’Reilly & Associates, Inc., 1996.Google Scholar
- 14.Martin Fowler and Kendall Scott. UML Distilled. Addison Wesley, New York, 1997.Google Scholar
- 15.Eric Freeman, Susanne Hupfer, and Ken Arnold. JavaSpaces™ Principles, Patterns, and Practice. Addison Wesley, 1999.Google Scholar
- 16.Daniel Friedman and Mitchell Wand. Reification: Reflection Without Metaphysics. In Proceedings of ACM Conference on Lisp and Functional Programming, Austin, Texas, USA, 1984. ACM.Google Scholar
- 17.Eric Gamma, Richard Helm, Ralph Johnson, and Richard Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley. Reading, MA, 1994.Google Scholar
- 18.Ursula Hinkel and Katharina Spies. Anleitung zur Spezifikation von Mobilen, Dynamischen FOCUS-Netzen. Technical Report TUM-I9639, Munich University of Technology, 1996. German.Google Scholar
- 19.Jini 1.0. http://developer.java.sun.com/developer/products/jini/, November 1999.
- 20.Federated Management Architecture Specification Version 1.0. http://www.jiro.com, November 1999.
- 21.Ingolf Krüger. Towards the Methodical Usage of Message Sequence Charts. In Katharina Spies and Bernhard Schätz, editors, Formale Beschreibungstechniken für verteilte Systeme. FBT99, 9. GI/ITG Fachgespräch, pages 123–134. Herbert Utz Verlag, June 1999.Google Scholar
- 22.Pattie Maes. Concepts and Experiments in Computational Reflection. In Proceedings of the Conference on Object-Orientated Programming Systems, Languages and Applications (OOPSLA’87), 1987.Google Scholar
- 23.Neno Medvidovic. A Classification and Comparison Framework for Software Architecture Description Languages. Technical Report UCI-ICS-97-02, Department of Information and Computer Science, University of California, Irvine, feb 1996.Google Scholar
- 24.Matthias Radestock and Susan Eisenbach. Formalizing System Structure. In Int. Workshop on Software Specification and Design, pages 95–104. IEEE Computer Society Press, 1996.Google Scholar
- 25.James Rumbaugh, Ivar Jacobson, and Grady Booch. The Unified Modeling Language Reference Manual. Addison Wesley, Reading, Mass., 1999.Google Scholar
- 26.Salutation Architecture Specification V2.0c. http://www.salutation.org/, June 1999.
- 27.Chris Salzmann and Maurice Schoenmakers. Dynamics and Mobility in Software Architecture. In Jan Bosch, editor, Proceedings of NOSA 99 — Second Nordic Workshop on Software Architecture, 1999.Google Scholar
- 28.Bran Selic, Garth Gullekson, and Paul T. Ward. Real-Time Object Oriented Modeling. Wiley & Sons, 1994.Google Scholar
- 29.Mary Shaw and David Garlan. Software Architecture — Perspectives on an Emerging Discipline. Prentice Hall, 1996.Google Scholar
- 30.Brian C. Smith. Reflection and Semantics in a Procedural Language, 1982.Google Scholar
- 31.Universal Plug and Play — Device Architecture Reference Specification Version 0.90. http://www.upnp.org/, November 1999.
- 32.Voyager Overview. http://www.objectspace.com/, 1999.
- 33.Jim Waldo. The Jini Architecture for Network-Centric Computing. Communications of the ACM (CAM), 1999.Google Scholar