Skip to main content

Objects, Agents, and Features: An Introduction

  • Conference paper

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

Abstract

There are many ways of structuring software, and the seminar focussed on an established one (object-orientation) and two emerging ones (agent-orientation and feature-orientation).

The object paradigm is now widely used in software technology (with programming languages like C++ and Java, and OO modelling frameworks such as UML). However, the theoretical foundations of the object paradigm are not settled yet, although clean concepts and reliable foundations are more and more demanded not only by academia but also by practitioners. In particular, the precise meaning of UML concepts is subject to wide debate.

Agents are more special kinds of objects, having more autonomy, and taking more initiative. For this reason, agent-oriented programming is sometimes referred to as ‘subject-oriented’ rather than ‘object-oriented’, indicating that an agent is much more in control of itself than an object which is manipulated by other entities (objects). There is some work on investigating typical object notions like inheritance in the context of agents. An interesting question is whether this is a fruitful way to go. Typically, agents are thought of being endowed with ‘mental states’ involving concepts like knowledge, belief, desires and goals, in order to display autonomous and in particular pro-active behaviour.

Features are optional extensions of functionality which may be added to a software product, in order to reflect changes in requirements. They also cut across the class structure, because implementing a feature typically involves updating several classes or objects. The more complex the system is, the harder it is to add features without breaking something; this phenomenon has been dubbed the ‘feature interaction problem’. Because users like to think of a system as comprising a base system together with a number of features on top, features could potentially be seen as a structuring mechanism rivalling objects and agents.

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. The AspectJ project, www.aspectj.org (accessed January 2004)

  2. Bordini, R.H., Fisher, M., Pardavila, C., Wooldridge, M.: Model checking AgentSpeak. In: Proceedings of the second international joint conference on autonomous agents and multiagent systems (AAMAS 2003), Melbourne, pp. 409–416 (2003)

    Google Scholar 

  3. Cohen, P.R., Levesque, H.J.: Intention is Choice with Commitment. Artificial Intelligence 42, 213–261 (1990)

    Article  MATH  MathSciNet  Google Scholar 

  4. Amyot, D., Logrippo, L. (eds.): Feature Interactions in Telecommunications and Software Systems VII. IOS Press, Amsterdam (2003)

    Google Scholar 

  5. Calder, M., Magill, E. (eds.): Feature Interactions in Telecommunications and Software Systems VI. IOS Press, Amsterdam (2000)

    Google Scholar 

  6. Fisher, M.: A Survey of Concurrent METATEM – The language and Its Applications. In: Gabbay, D.M., Ohlbach, H.J. (eds.) ICTL 1994. LNCS (LNAI), vol. 827, pp. 480–505. Springer, Heidelberg (1994)

    Chapter  Google Scholar 

  7. Georgeff, M.P., Lansky, A.L.: Reactive Reasoning and Planning. In: Proc. 3rd Nat. Conf. on Artif. Intell (AAAI 1987), Seattle, WA, pp. 677–682 (1987)

    Google Scholar 

  8. de Giacomo, G., Lespérance, Y., Levesque, H.J.: ConGolog, a Concurrent Programming Language Based on the Situation Calculus. Artificial Intelligence 121(1- 2), 109–169 (2000)

    Article  MATH  MathSciNet  Google Scholar 

  9. Harel, D.: Dynamic Logic. In: Gabbay, D., Guenthner, F. (eds.) Handbook of Philosophical Logic, vol. II, pp. 497–604. Reidel, Dordrecht (1984)

    Google Scholar 

  10. Hindriks, K.V.: Agent Programming Languages: Programming with Mental Models, PhD. Thesis, Utrecht University (2001)

    Google Scholar 

  11. Hindriks, K.V., de Boer, F.S., van der Hoek, W., Meyer, J.-J.C.: Formal Semantics for an Abstract Agent Programming Language. In: Rao, A., Singh, M.P., Wooldridge, M.J. (eds.) ATAL 1997. LNCS (LNAI), vol. 1365, pp. 215–229. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  12. Hindriks, K.V., de Boer, F.S., van der Hoek, W., Meyer, J.-J.C.: Agent Programming in 3APL. Int. J. of Autonomous Agents and Multi-Agent Systems 2(4), 357–401 (1999)

    Article  Google Scholar 

  13. Hindriks, K.V., de Boer, F.S., van der Hoek, W., Meyer, J.-J.C.: A Programming Logic for Part of the Agent Language 3APL. In: Rash, J.L., Rouff, C.A., Truszkowski, W., Gordon, D.F., Hinchey, M.G. (eds.) FAABS 2000. LNCS (LNAI), vol. 1871, pp. 78–89. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  14. van der Hoek, W., van Linder, B., Meyer, J.-J.C.: An Integrated Modal Approach to Rational Agents. In: Wooldridge, M., Rao, A. (eds.) Foundations of Rational Agency. Applied Logic Series, vol. 14, pp. 133–168. Kluwer, Dordrecht (1998)

    Google Scholar 

  15. Jennings, N.R., Wooldridge, M.J.: Agent technology: Foundations, Applications, and Markets. Springer, Berlin (1997)

    Google Scholar 

  16. Katz, S.: A superimposition control construct for distributed systems. ACM Transactions on Programming Languages and Systems 15(2), 337–356 (1993)

    Article  Google Scholar 

  17. Levesque, H.J., Reiter, R., Lespérance, Y., Lin, F., Scherl, R.B.: GOLOG: A Logic Programming Language for Dynamic Domains. J. of Logic Programming 31, 59–84 (1997)

    Article  MATH  Google Scholar 

  18. van Linder, B.: Modal Logics for Rational agents, PhD. Thesis, Utrecht University (1996)

    Google Scholar 

  19. Meyer, J.-J.C., van der Hoek, W., van Linder, B.: A Logical Approach to the Dynamics of Commitments. Artificial Intelligence 113, 1–40 (1999)

    Article  MATH  MathSciNet  Google Scholar 

  20. Plath, M.C., Ryan, M.D.: Feature integration using a feature construct. Science of Computer Programming (2001)

    Google Scholar 

  21. Rao, A.S.: AgentSpeak(L): BDI Agents Speak Out in a Logical Computable Language. In: Perram, J., Van de Velde, W. (eds.) MAAMAW 1996. LNCS (LNAI), vol. 1038, pp. 42–55. Springer, Heidelberg (1996)

    Chapter  Google Scholar 

  22. Rao, A.S., Georgeff, M.P.: Modeling Rational Agents within a BDI-Architecture. In: Allen, J., Fikes, R., Sandewall, E. (eds.) Proceedings of the Second International Conference on Principles of Knowledge Representation and Reasoning (KR 1991), pp. 473–484. Morgan Kaufmann, San Francisco (1991)

    Google Scholar 

  23. Shoham, Y.: Agent-Oriented Programming. Artificial Intelligence 60(1), 51–92 (1993)

    Article  MathSciNet  Google Scholar 

  24. Wooldridge, M.J., Jennings, N.R. (eds.): Intelligent Agents. Springer, Berlin (1995)

    MATH  Google Scholar 

  25. Zave, P.: FAQ Sheet on Feature Interaction, At http://www.research.att.com/~pamela/faq.html (accessed January 2004)

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Meyer, JJ.C., Ryan, M.D., Ehrich, HD. (2004). Objects, Agents, and Features: An Introduction. In: Ryan, M.D., Meyer, JJ.C., Ehrich, HD. (eds) Objects, Agents, and Features. Lecture Notes in Computer Science, vol 2975. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-25930-5_1

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-25930-5_1

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-25930-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics