Advertisement

Design for open systems in Java

  • Doug Lea
Invited Papers
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1282)

Abstract

Open systems consist of unbounded collections of objects that may interact in support of any of a number of activities. The features and services provided by each object require various measures of policy control of infrastructure components in order to provide appropriate quality of service for supported activities. This paper surveys some common and emerging Java-based design patterns for establishing and controlling service and application components in open object-oriented architectures.

Keywords

Policy Control Design Pattern Concurrency Control Class Account Tuple Space 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Abadi, M. and L. Cardelli, A Theory of Objects, Springer Verlag, 1996.Google Scholar
  2. 2.
    Atkinson, M., L. Daynes, M. Jordan, T. Printezis and S. Spence, “An Orthogonally Persistent Java”, ACM SIGMOD Record December 1996Google Scholar
  3. 3.
    Beck, K., posting to patterns-discussion mailing list, August, 1995.Google Scholar
  4. 4.
    Birman, K. and R. von Renesse. Reliable Distributed Computing with the Isis Toolkit, IEEE Press, 1994.Google Scholar
  5. 5.
    Birman, K., K. Guo, M. Hayden, T. Hickey, R. Friedman, S. Maffeis, R. van Renesse, A. Vaysburd, and W. Vogels, “The Ensemble groupware system”, http://simon.cs.cornell.edu/Info/Projects/Ensemble, 1997.Google Scholar
  6. 6.
    Buhr, R. J. A., and R. S. Casselman, Use Case Maps for Object-Oriented Systems, Prentice Hall, 1995.Google Scholar
  7. 7.
    Buschmann, F., R. Meunier, H. Rohnert, P Sommerlad, and M. Stal. Pattern-Oriented Software Architecture: A System of Patterns, Wiley, 1996.Google Scholar
  8. 8.
    Chandy, K. M. and A Rifkin, “Systematic composition of objects in distributed systems: Objects and Sessions” International Conference on System Sciences, 1997.Google Scholar
  9. 9.
    Dami, L. “A Lambda-calculus for dynamic binding”, Theoretical Computer Science, 1997.Google Scholar
  10. 10.
    D'Souza, D., and A. Wills, “Composing modeling frameworks in Catalysis”, Communications of the ACM, 1997.Google Scholar
  11. 11.
    Forman, I., and S. Danforth, “Inheritance of metaclass constraints in SOM”, Proceedings, Reflection 96, 1996.Google Scholar
  12. 12.
    Gamma, E., R. Helm, R. Johnson, and J. Vlissides. Design Patterns, Addison-Wesley, 1994.Google Scholar
  13. 13.
    Garbanito, B., and R. Guerraoui, “Using the strategy design pattern to compose reliable distributed protocols”, Proceedings of the 3rd Conference on Object-Oriented Technologies and Systems, USENIX, Portland, OR, 1997.Google Scholar
  14. 14.
    Greenwald, M. and D. Cheriton, “The Synergy between non-blocking synchronization and operating system structure”, Proceedings, OSDI, USENIX, 1996.Google Scholar
  15. 15.
    Hewitt, C., P Bishop, and R. Steiger, “A Universal Modular ACTOR Formalism for AI”, Third International Joint Conference on Artificial Intelligence, Stanford University, August 1973.Google Scholar
  16. 16.
    Holmes, D., “Aspects of Synchronization”, SCOOP Workshop on Aspect-Oriented Programming, 1997.Google Scholar
  17. 17.
    Huni, H., R. Johnson, and R. Engel, “A Framework for network protocol software”, Proceedings OOPSLA 95, ACM, 1995.Google Scholar
  18. 18.
    Jain, P. and D. Schmidt, “Service Configurator — A Pattern for Dynamic Configuration of Services,” Proceedings of the 3rd Conference on Object-Oriented Technologies and Systems, USENIX, Portland, OR, 1997.Google Scholar
  19. 19.
    Jones, N. and Nielson, F., “Abstract interpretation: A Semantic-based tool for program analysis”. In Handbook of Logic in Computer Science, S. Abramsky, D. Gabbay, and T. Maibaum (eds), Clarendon Press, 1995.Google Scholar
  20. 20.
    Kiczales, G. “Aspect-Oriented Programming”, Computing Surveys (online addendum), December 1996.Google Scholar
  21. 21.
    Kiczales, G. “Beyond the Black Box: Open Implementation”, IEEE Software, January, 1996.Google Scholar
  22. 22.
    Lea, D., “Objects in groups”, Technical report, SUNY Oswego, 1993.Google Scholar
  23. 23.
    Lea, D. Concurrent Programming in Java, Addison-Wesley, 1996.Google Scholar
  24. 24.
    Lea, D., and J. Marlowe. “PSL: Protocols and pragamatics for open systems”, Technical Report, Sun Microsystems Labs, 1995.Google Scholar
  25. 25.
    Leler, W. “Actor-based simulation + Linda = Virtual environments”, in C. Laffra, E. H. Blake, V. de May, and X. Pintado (eds). Object-Oriented Programming for Graphics, Springer-Verlag, 1995Google Scholar
  26. 26.
    McAffer, J. “Engineering the meta-level”, Proceedings, Reflection 96, 1996.Google Scholar
  27. 27.
    Maeda, C,. A. Lee, G. Murphy, and G. Kiczales, “Open Implementation analysis and Design, Proceedings, Symposium on Software Reusability, 1997.Google Scholar
  28. 28.
    Mosberger, D., and L. Peterson, “Making paths explicit in the Scout operating system”, Proceedings, OSDI, USENIX, 1996.Google Scholar
  29. 29.
    Prehofer, C., “Feature-Oriented Programming: A Fresh Look at Objects”, Proceedings, ECOOP 97, Springer-Verlag, 1997.Google Scholar
  30. 30.
    Shaw, M, and D. Garlan. Software Architecture, Prentice Hall, 1996.Google Scholar
  31. 31.
    Silva, A.R., J. Pereira, and J. A. Marques, “Object synchronization pattern”. EuroPLoP, 1996.Google Scholar
  32. 32.
    Sun Microsystems. JavaSpaces draft specification, http://chatsubo.javasoft.com, 1997.Google Scholar
  33. 33.
    Ungar, D. “The Self Papers”, Lisp and Symbolic Computation, 1991.Google Scholar
  34. 34.
    Tanenbaum, A. Modern Operating Systems, Prentice Hall, 1992.Google Scholar
  35. 35.
    van Renesse, R., K. Birman, and S. Maffeis, “Horus, a flexible Group Communication System”, Communications of the ACM, April 1996.Google Scholar
  36. 36.
    Waldo, J., G. Wyant, A. Wollrath, and S. Kendall, “A note on distributed computing” Technical Report, Sun Microsystems Labs, 1994.Google Scholar
  37. 37.
    Wegner, P. “Interactive foundations of computing”, Theoretical Computer Science, 1997.Google Scholar
  38. 38.
    Wirfs-Brock, R., B. Wilkerson, and L. Wiener, Designing Object-Oriented Software, Prentice Hall, 1990.Google Scholar
  39. 39.
    Zave, P. “Feature interactions and formal specifications in telecommunications” IEEE Computer, August 1993.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1997

Authors and Affiliations

  • Doug Lea
    • 1
  1. 1.State University of New York at OswegoUSA

Personalised recommendations