Skip to main content

Interaction-Oriented Programming

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1957))

Abstract

This paper describes a new approach to the production of robust software. We first motivate the approach by explaining why the two major goals of software engineering-correct software and reusable software-are not being addressed well by the current state of software practice. We then describe a methodology based on active, cooperative, and persistent software components, i.e., agents, and show how the methodology produces robust and reusable software. We derive requirements for the structure and behavior of the agents, and report on preliminary experiments on applications based on the methodology. We conclude with a roadmap for development of the methodology and ruminations about uses for the new computational paradigm.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Jean Marc Andreoli, Paolo Ciancarini, and Remo Pareschi, “Interaction Abstract Machines,” in Gul Agha, Peter Wegner, and Akinori Yonezawa, eds., Research Directions in Concurrent Object-Oriented Programming, MIT Press, Cambridge, MA, 1993, pp. 257–280.

    Google Scholar 

  2. Antoine Beugnard, JeanMarc Jezequel, Noel Plouzeau, and Damien Watkins, “Making Components Contract Aware,” IEEE Computer, Vol. 32, No. 7, July 1999, pp. 38–45.

    Article  Google Scholar 

  3. Fred P. Brooks, The Mythical Man-Month, Anniversary Edition, Addison-Wesley, Reading, MA, 1995.

    Google Scholar 

  4. F-C. Cheong, “OASIS: An Agent-Oriented Programming Language for Heterogeneous Distributed Environments,” Ph.D. Thesis, University of Michigan, 1992.

    Google Scholar 

  5. Adam Cheyer, “Agent-Based Interoperation, ” CSLI Seminar Series on Intelligent Agents, Stanford University, April 27, 1995.

    Google Scholar 

  6. Cynthia Della Torre Cicalese and Shmuel Rotenstreich, “Behavioral Specification of Distributed Software Component Interfaces,” IEEE Computer, Vol. 32, No. 7, July 1999, pp. 46–53.

    Article  Google Scholar 

  7. Helder Coelho, Luis Antunes, and Luis Moniz, “On Agent Design Rationale,” in Proceedings of the XI Simposio Brasileiro de Inteligencia Artificial (SBIA), Fortaleza (Brasil), October 17.21, 1994, pp. 43–58.

    Google Scholar 

  8. Peter Coffee, “Perfect Computers Cost Too Much,” PC Week, July 6, 1998, p. 54.

    Google Scholar 

  9. Philip R. Cohen and Hector J. Levesque, “Persistence, Intention, and Commitment,” in Intentions in Communication, Philip R. Cohen, Jerry Morgan, and Martha E. Pollack, eds., MIT Press, 1990.

    Google Scholar 

  10. Les Gasser, “Social conceptions of knowledge and action: DAI foundations and open systems semantics,” Artificial Intelligence, Vol. 47, 1991, pp. 107–138.

    Article  MathSciNet  Google Scholar 

  11. Michael Genesereth and Stephen Ketchpel, “Software Agents,” Communications of the ACM, Vol. 37, No. 7, 1994, pp. 48–53.

    Article  Google Scholar 

  12. R. Goodwin, “Formalizing Properties of Agents,” Technical Report CMU-CS-93-159, Department of Computer Science, Carnegie-Mellon University, 1993.

    Google Scholar 

  13. Les Hatton, “Does OO Sync with HowWe Think?” IEEE Software, May 1998, pp. 46–54.

    Google Scholar 

  14. Michael N. Huhns, “Agent Teams: Building and Implementing Software,” IEEE Internet Computing, Vol. 4, No. 1, January/February 2000, pp. 90–92.

    Article  Google Scholar 

  15. Michael N. Huhns, “Multiagent-Oriented Programming,” Intelligent Agents and Their Potential for Future Design and Synthesis Environments, Ahmed K. Noor and John B. Malone, editors, NASA Langley Research Center, Hampton, VA, February 1999, pp. 215–238.

    Google Scholar 

  16. Michael N. Huhns and Munindar P. Singh, “A Multiagent Treatment of Agenthood,” Applied Artificial Intelligence: An International Journal, Vol. 13, No. 1–2, January-March 1999, pp. 3–10.

    Article  Google Scholar 

  17. Michael N. Huhns and Munindar P. Singh, eds., Readings in Agents, Morgan Kaufmann Publishers, Inc., San Francisco, CA, 1997.

    Google Scholar 

  18. Michael N. Huhns, editor, Distributed Artificial Intelligence, Pitman/Morgan Kaufmann, 1987.

    Google Scholar 

  19. Juhani Iivari, “Why Are CASE Tools Not Used?” Communications of the ACM, Vol. 39, No. 10, October 1996, pp. 94-103.

    Google Scholar 

  20. K. Indermaur, “Baby Steps,” Byte, March 1995, pp. 97–104.

    Google Scholar 

  21. Nicholas R. Jennings, “On Agent-Oriented Software Engineering,” IEEE Internet Computing, Vol. 3, No. 4, 1999, pp. XXX.

    Google Scholar 

  22. Nicholas R. Jennings, “Commitments and conventions: The foundation of coordination in multi-agent systems,” The Knowledge Engineering Review, Vol. 2, No. 3, 1993, pp. 223–250.

    Article  Google Scholar 

  23. Gabor Karsai and Janos Sztipanovits, “A Model-Based Approach to Self-Adaptive Software,” IEEE Intelligent Systems, Vol. 14, No. 3, May/June 1999, pp. 46–53.

    Article  Google Scholar 

  24. Elizabeth A. Kendall, Margaret T. Malkoun, and Chong Jiang, “Multiagent System Design Based on Object-Oriented Patterns,” Journal of Object-Oriented Programming, June 1997, pp. 41–47.

    Google Scholar 

  25. Stephen Kent, “An Interview with Stephen Kent,” IEEE Spectrum, Vol. 37, No. 1, January 2000, p. 37.

    Google Scholar 

  26. David Kinny and Michael Georgeff, “Modelling and Design of Multi-Agent Systems,” in J.P. Muller, M.J. Wooldridge, and N.R. Jennings, eds., Intelligent Agents III.Proceedings of the Third International Workshop on Agent Theories, Architectures, and Languages, Springer-Verlag, Berlin, 1997, pp. 1–20.

    Google Scholar 

  27. Mieczyslaw M. Kokar, Kenneth Baclawski, and Yonet A. Eracar, “Control Theory-Based Foundations of Self-Controlling Software,” IEEE Intelligent Systems, Vol. 14, No. 3, May/June 1999, pp. 37–45.

    Article  Google Scholar 

  28. David Krieger and Richard M. Adler, “The Emergence of Distributed Component Platforms,” IEEE Computer, Vol. 31, No. 3, March 1998, pp. 43–53.

    Article  Google Scholar 

  29. Robert Laddaga, “Creating Robust Software through Self-Adaptation,” IEEE Intelligent Systems, Vol. 14, No. 3, May/June 1999, pp. 26–29.

    Article  Google Scholar 

  30. Ted Lewis, “The Next 10,0002 Years: Part II,” IEEE Computer, May 1996, pp. 78–86.

    Google Scholar 

  31. David L. Martin, Adam J. Cheyer, and Douglas B. Moran, “The Open Agent Architecture: A framework for building distributed software systems,” Applied Artificial Intelligence, Vol. 13, No. 1–2, 1999, pp. 92–128.

    Google Scholar 

  32. Bertrand Meyer and Christine Mingins, “Component-Based Development: From Buzz to Spark,” IEEE Computer, Vol. 32, No. 7, July 1999, pp. 35–37.

    Article  Google Scholar 

  33. Robin Milner, “Elements of Interaction,” Communications of the ACM, Vol. 36, No. 1, January 1993, pp. 78–89.

    Article  Google Scholar 

  34. Allen Newell, “The knowledge level,” Artificial Intelligence, Vol. 18, No. 1, 1982, pp. 87–127.

    Article  MathSciNet  Google Scholar 

  35. Cherri M. Pancake, “The Promise and the Cost of Object Technology: A Five-Year Forecast,” Communications of the ACM, Vol. 38, No. 10, October 1995, pp. 33–49.

    Article  Google Scholar 

  36. M. J. Pont and E. Moreale, “Towards a Practical Methodology for Agent-Oriented Software Engineering with C++ and Java,” Leicester University Technical Report 96-33, December 1996.

    Google Scholar 

  37. C.V. Ramomoorthy and Wei-tek Tsai, “Advances in Software Engineering,” IEEE Computer, Vol. 29, No. 10, October 1996, pp. 47–58.

    Article  Google Scholar 

  38. Anand S. Rao and Michael P. Georgeff, “Modeling rational agents within a BDI-architecture,” in Proceedings of the International Conference on Principles of Knowledge Representation and Reasoning, 1991, pp. 473–484.

    Google Scholar 

  39. D. Riecken, “Introduction to the Special Issue on Intelligent Agents,” Communications of the ACM, Vol. 37, No. 7, 1994, pp. 18–21.

    Article  Google Scholar 

  40. Mary Shaw, “Outlook on Software System Design,” IEEE Computer, Vol. 31, No. 1, January 1998, p. 32.

    Google Scholar 

  41. Yoav Shoham, “Agent-Oriented Programming,” Artificial Intelligence, Vol. 60, No. 2, June 1993, pp. 51–92.

    Article  MathSciNet  Google Scholar 

  42. Charles Simonyi, “The Future is Intentional,” IEEE Computer, Vol. 32, No. 5, May 1999, pp. 56–57.

    Article  Google Scholar 

  43. Munindar P. Singh and Michael N. Huhns, “Social Abstractions for Information Agents,” in Intelligent Information Agents, Matthias Klusch, ed., Kluwer Academic Publishers, Boston, MA, 1999.

    Google Scholar 

  44. Clement Szyperski, Component Software: Beyond Object-Oriented Programming, Addison Wesley Longman, 1998.

    Google Scholar 

  45. Milind Tambe, David V. Pynadath, and Nicolas Chauvat, “Building Dynamic Agent Organizations in Cyberspace,” IEEE Internet Computing, Vol. 4, No. 2, March/April 2000.

    Google Scholar 

  46. Jose M. Vidal and Edmund H. Durfee, “Learning Nested Agent Models in an Information Economy,” Journal of Experimental and Theoretical Artificial Intelligence (special issue on learning in distributed artificial intelligence systems), 1998.

    Google Scholar 

  47. Guijun Wang, Liz Ungar, and Dan Klawitter, “Component Assembly for OO Distributed Systems,” IEEE Computer, Vol. 32, No. 7, July 1999, pp. 71–78.

    Article  Google Scholar 

  48. Peter Wegner, “Why Interaction is More Powerful Than Algorithms,” Communications of the ACM, Vol. 40, No. 5, May 1997, pp. 80–91.

    Article  Google Scholar 

  49. Peter Wegner, “Interactive Software Technology,” CRC Handbook of Computer Science and Engineering, May 1996, pp. 1–24.

    Google Scholar 

  50. Peter Wegner, “Interactive Foundations of Object-Based Programming,” IEEE Computer, October 1995, pp. 70–72.

    Google Scholar 

  51. Darrell Woelk, Michael Huhns, and Christine Tomlinson, “Uncovering the Next Generation of Active Objects,” Object Magazine, July-August 1995, pp. 33–40.

    Google Scholar 

  52. Michael J. Wooldridge, “Agents and Software Engineering,” Proceedings AIIA, 1998.

    Google Scholar 

  53. Michael J. Wooldridge, “Agent-Based Software Engineering,” IEE Proceedings on Software Engineering, Vol. 144, No. 1, February 1997, pp. 26–37.

    Google Scholar 

  54. Michael J. Wooldridge and Nicholas R. Jennings, “Software Engineering with Agents: Pit-falls and Pratfalls,” IEEE Internet Computing, Vol. 3, No. 3, May/June 1999.

    Google Scholar 

  55. Michael J. Wooldridge, Nicholas R. Jennings, and David Kinny, “A Methodology for Agent-Oriented Analysis and Design,” in Oren Etzioni, Jean-Pierre Muller, and Jeffrey Bradshaw, eds., Agents’99: Proceedings of the third International Conference on Autonomous Agents, Seattle, WA, May 1999.

    Google Scholar 

  56. Edward Yourdon, “Java, the Web, and Software Development,” IEEE Computer, August 1996, pp. 25–30.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Huhns, M.N. (2001). Interaction-Oriented Programming. In: Ciancarini, P., Wooldridge, M.J. (eds) Agent-Oriented Software Engineering. AOSE 2000. Lecture Notes in Computer Science, vol 1957. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44564-1_2

Download citation

  • DOI: https://doi.org/10.1007/3-540-44564-1_2

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-41594-7

  • Online ISBN: 978-3-540-44564-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics