Skip to main content
Log in

The first twenty years of agent-based software development with JADE

  • Viewpoint
  • Published:
Autonomous Agents and Multi-Agent Systems Aims and scope Submit manuscript

Abstract

A recent survey provides convincing evidence that JADE is among the most widely used tools to develop agent-based software systems. It finds application in industrial settings and to support research, and it has been used to introduce students to software agents in various universities. This paper offers a perspective on the current state of JADE by first presenting a chronicle of the relevant events that contributed to make JADE what it is today. Then, this paper enumerates some of the abstractions that JADE helped to identify and that are now commonly adopted in the community of researchers and practitioners interested in software agents and agent-based software development. Such abstractions have been successfully applied to construct relevant software systems, and among them, this paper reports on a mission-critical system that uses the abstractions that JADE contributed to identify to serve millions of users every day. Finally, this paper discusses an outlook on the near future of JADE by sketching a recent project that could contribute to provide a new perspective on the use of JADE.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1

Similar content being viewed by others

References

  1. ADAC. Retrieved January 22, 2020 from www.adac.de.

  2. Agha, G., Mason, I., Smith, S., & Talcott, C. (1997). A foundation for actor computation. Journal of Functional Programming, 7(1), 1–72.

    Article  MathSciNet  MATH  Google Scholar 

  3. Bădică, C., Budimac, Z., Burkhard, H. D., & Ivanovic, M. (2011). Software agents: Languages, tools, platforms. Computer Science and Information Systems, 8(2), 255–298.

    Article  Google Scholar 

  4. Bäumer, C., & Magedanz, T. (1999). Grasshopper—A mobile agent platform for active telecommunication. In Proceedings of the 3rd international workshop on intelligent agents for telecommunication applications (IATA 1999) (pp. 19–32). Berlin: Springer.

  5. Bellifemine, F., Bergenti, F., Caire, G., & Poggi, A. (2005). JADE—A Java agent development framework. In R. H. Bordini, M. Dastani, J. Dix, & A. El Fallah Seghrouchni (Eds.), Multi-agent programming: Languages, platforms and applications (pp. 125–147). Berlin: Springer.

    Chapter  Google Scholar 

  6. Bellifemine, F., Caire, G., & Greenwood, D. (2007). Developing multi-agent systems with JADE. Wiley series in agent technology. New York: Wiley.

    Book  Google Scholar 

  7. Bellifemine, F., Poggi, A., & Rimassa, G. (2001). Developing multi-agent systems with a FIPA-compliant agent framework. Software: Practice and Experience, 31, 103–128.

    MATH  Google Scholar 

  8. Bergenti, F. (2003). A discussion of two major benefits of using agents in software development. In P. Petta, R. Tolksdorf, & F. Zambonelli (Eds.), Engineering societies in the agents world III. Lecture notes in artificial intelligence (Vol. 2577, pp. 1–12). Berlin: Springer.

    Chapter  MATH  Google Scholar 

  9. Bergenti, F. (2014). An introduction to the JADEL programming language. In Proceeding of the 26th IEEE international conference on tools with artificial intelligence (ICTAI 2014) (pp. 974–978). IEEE.

  10. Bergenti, F., Caire, G., & Gotta, D. (2013). An overview of the AMUSE social gaming platform. In Proceedings of the 14th workshop “From objects to agents” (WOA 2013). CEUR workshop proceedings (Vol. 1099). RWTH Aachen.

  11. Bergenti, F., Caire, G., & Gotta, D. (2014). Agents on the move: JADE for Android devices. In Proceedings of the 15th workshop “From objects to agents” (WOA 2014). CEUR workshop proceedings (Vol. 1260). RWTH Aachen.

  12. Bergenti, F., Caire, G., & Gotta, D. (2015). Large-scale network and service management with WANTS. In P. Leitão & S. Karnouskos (Eds.), Industrial agents: Emerging applications of software agents in industry (pp. 231–246). Amsterdam: Elsevier.

    Chapter  Google Scholar 

  13. Bergenti, F., Gleizes, M. P., & Zambonelli, F. (Eds.) (2004). Methodologies and software engineering for agent systems: The agent-oriented software engineering handbook. Multiagent systems, artificial societies, and simulated organizations (vol. 11). Berlin: Springer.

  14. Bergenti, F., & Huhns, M. N. (2004). On the use of agents as components of software systems. In F. Bergenti, M. P. Gleizes, & F. Zambonelli (Eds.), Methodologies and software engineering for agent systems: The agent-oriented software engineering handbook. Multiagent systems, artificial societies, and simulated organizations (vol. 11, pp. 19–31). Berlin: Springer.

  15. Bergenti, F., Iotti, E., Monica, S., & Poggi, A. (2016). Interaction protocols in the JADEL programming language. In Proceeding of the 6th international workshop “Programming based on actors, agents, and decentralized control” (AGERE 2016) at ACM SIGPLAN conference “Systems, programming, languages, and applications: Software for humanity” (SPLASH 2016) (pp. 11–20). ACM.

  16. Bergenti, F., Iotti, E., Monica, S., & Poggi, A. (2017). Agent-oriented model-driven development for JADE with the JADEL programming language. Computer Languages, Systems & Structures, 50, 142–158.

    Article  Google Scholar 

  17. Bergenti, F., & Monica, S. (2016). Location-aware social gaming with AMUSE. In Y. Demazeau, T. Ito, J. Bajo, & M. J. Escalona (Eds.), Advances in practical applications of scalable multi-agent systems (pp. 36–47). Berlin: Springer.

    Chapter  Google Scholar 

  18. Bergenti, F., Monica, S., & Petrosino, G. (2018). A scripting language for practical agent-oriented programming. In Proceeding of the 8th international workshop “Programming based on actors, agents, and decentralized control” (AGERE 2018) at ACM SIGPLAN conference “Systems, programming, languages, and applications: Software for humanity” (SPLASH 2018) (pp. 62–71). ACM.

  19. Bergenti, F., & Petrosino, G. (2018). Overview of a scripting language for JADE-based multi-agent systems. In Proceedings of the 19th workshop “From objects to agents” (WOA 2018). CEUR workshop proceedings (Vol. 2215, pp. 57–62). RWTH Aachen.

  20. Bergenti, F., & Poggi, A. (2002). Ubiquitous information agents. International Journal of Cooperative Information Systems, 11(34), 231–244.

    Article  Google Scholar 

  21. Bergenti, F., Poggi, A., Burg, B., & Caire, G. (2001). Deploying FIPA-compliant systems on handheld devices. IEEE Internet Computing, 5(4), 20–25.

    Article  Google Scholar 

  22. Bergenti, F., Poggi, A., & Tomaiuolo, M. (2014). An actor based software framework for scalable applications. In Proceedings of the 7th international conference on Internet and distributed computing systems (IDCS 2014). Lecture notes in computer science (Vol. 8729, pp. 26–35).

  23. Bergenti, F., & Ricci, A. (2002). Three approaches to the coordination of multiagent systems. In Proceedings of the 17th ACM symposium on applied computing (SAC 2002) (pp. 367–373). ACM.

  24. Bettini, L. (2013). Implementing domain-specific languages with Xtext and Xtend. New York: Packt Publishing.

    Google Scholar 

  25. Bordini, R. H., Braubach, L., Dastani, M., El Fallah Seghrouchni, A., Gomez-Sanz, J. J., Leite, J., et al. (2006). A survey of programming languages and platforms for multi-agent systems. Informatica, 30(1), 33–44

    MATH  Google Scholar 

  26. Bordini, R. H., Hübner, J. F., & Wooldridge, M. (2007). Programming multi-agent systems in AgentSpeak using Jason. New York: Wiley.

    Book  MATH  Google Scholar 

  27. Braubach, L., & Pokahr, A. (2012). Developing distributed systems with active components and Jadex. Scalable Computing: Practice and Experience, 13(2), 100–119.

    Google Scholar 

  28. Breugst, M., & Magedanz, T. (1998). Mobile agents-enabling technology for active intelligent network implementation. IEEE Network, 12(3), 53–60.

    Article  Google Scholar 

  29. Broadcom. Retrieved January 22, 2020 from www.broadcom.com.

  30. Caire, G., Gotta, D., & Banzi, M. (2008). WADE: A software platform to develop mission critical applications exploiting agents and workflows. In Proceeding of the 7th international joint conference on autonomous agents and multiagent systems (AAMAS 2008) (pp. 29–36). IFAAMAS.

  31. Collis, J. C., Ndumu, D. T., Nwana, H. S., & Lee, L. C. (1998). The ZEUS agent building tool-kit. BT Technology Journal, 16(3), 60–68.

    Article  Google Scholar 

  32. Eclipse. Retrieved January 22, 2020 from www.eclipse.org.

  33. Eysholdt, M., & Behrens, H. (2010). Xtext: Implement your language faster than the quick and dirty way. In Proceedings of the ACM international conference “Object-oriented programming, systems, languages, and applications” (OOPSLA 2010) (pp. 307–309). ACM.

  34. FIPA. Retrieved January 22, 2020 from www.fipa.org.

  35. Fisher, M. (2006). MetateM: The story so far. In R. H. Bordini, M. Dastani, & A. El Fallah Seghrouchni (Eds.), Proceedings of the 3rd international conference on programming multi-agent systems (ProMAS 2005) (pp. 3–22). Berlin: Springer.

  36. Foundation for Intelligent Physical Agents (2002). FIPA specifications. Retrieved January 22, 2020 from https://www.fipa.org.

  37. Fuggetta, A., Picco, G. P., & Vigna, G. (1998). Understanding code mobility. IEEE Transactions on Software Engineering, 24, 342–361.

    Article  Google Scholar 

  38. García-Gómez, S., González-Ordás, J., García-Algarra, F. J., Toribio-Sardón, R., Sedano-Frade, A., & Buisán-García, F. (2009). KOWLAN: A multi agent system for Bayesian diagnosis in telecommunication networks. In Proceedings of the 2009 IEEE/WIC/ACM international joint conference on Web intelligence and intelligent agent technology (WI&IAT 2009) (Vol. 3, pp. 195–198). IEEE.

  39. Google Scholar. Retrieved January 22, 2020 from https://scholar.google.com.

  40. Hindriks, K. V., & Dix, J. (2014). Goal: A multi-agent programming language applied to an exploration game. In O. Shehory & A. Sturm (Eds.), Agent-oriented software engineering (pp. 235–258). Berlin: Springer.

    Google Scholar 

  41. International Telecommunication Union (1997). M.3400 TMN management functions. Retrieved January 22, 2020 from https://www.itu.int.

  42. Islam, N., Mallah, G. A., & Shaikh, Z. A. (2010). FIPA and MASIF standards: A comparative study and strategies for integration. In Proceedings of the 2010 national software engineering conference (NSEC 2010) (pp. 7:1–7:6). ACM.

  43. JADE. Retrieved January 22, 2020 from https://jade.tilab.com.

  44. Kravari, K., & Bassiliades, N. (2015). A survey of agent platforms. Journal of Artificial Societies and Social Simulation, 18(1), 11.

    Article  Google Scholar 

  45. Mangina, E. (2002). Review of software products for multi-agent systems. Retrieved January 22, 2020 from https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.187.14&rep=rep1&type=pdf.

  46. Milojicic, D., Breugst, M., Busse, I., Campbell, J., Covaci, S., Friedman, B., et al. (1998). MASIF: The OMG mobile agent system interoperability facility. Personal Technologies, 2(2), 117–129.

    Article  Google Scholar 

  47. Monica, S., & Bergenti, F. (2015). Location-aware JADE agents in indoor scenarios. In Proceedings of the 16th workshop “From objects to agents” (WOA 2015). CEUR workshop proceedings (Vol. 1382, pp. 103–108). RWTH Aachen.

  48. Monica, S., & Bergenti, F. (2016). A comparison of accurate indoor localization of static targets via WiFi and UWB ranging. In Trends in practical applications of scalable multi-agent systems. Advances in intelligent systems and computing (Vol. 473, pp. 111–123). Berlin: Springer.

  49. Motorola. Retrieved January 22, 2020 from https://www.motorola.com.

  50. MPEG. Retrieved January 22, 2020 from https://mpeg.chiariglione.org.

  51. Müller, J. P., & Fischer, K. (2014). Application impact of multi-agent systems and technologies: A survey. In O. Shehory & A. Sturm (Eds.), Agent-oriented software engineering (pp. 27–53). Berlin: Springer.

    Google Scholar 

  52. Nwana, H. S., Ndumu, D. T., Lee, L. C., & Collis, J. C. (1999). ZEUS: A toolkit for building distributed multiagent systems. Applied Artificial Intelligence, 13, 129–185.

    Article  Google Scholar 

  53. O’Brien, P. D., & Nicol, R. (1998). FIPA: Towards a standard for software agents. BT Technology Journal, 16(3), 51–59.

    Article  Google Scholar 

  54. OMG. Retrieved January 22, 2020 from https://www.omg.org.

  55. Petrosino, G., & Bergenti, F. (2018). An introduction to the major features of a scripting language for JADE agents. In Proceedings of the 17th conference of the Italian association for artificial intelligence (AI*IA 2018). Lecture notes in artificial intelligence (Vol. 11298, pp. 3–14). Berlin: Springer.

  56. Petrosino, G., & Bergenti, F. (2019). Extending message handlers with pattern matching in the Jadescript programming language. In Proceedings of the 20th workshop “From objects to agents” (WOA 2019). CEUR workshop proceedings (Vol. 2404, pp. 113–118). RWTH Aachen.

  57. Pitt, J., & Bellifemine, F. (1999). A protocol-based semantics for FIPA’97 ACL and its implementation in JADE. In Proceedings of the 6th congress of the Italian association for artificial intelligence (AI*IA 1999). Italian Association for Artificial Intelligence.

  58. Poggi, A., Tomaiuolo, M., & Turci, P. (2004). A testbed for agent mediated service composition. In Proceedings of the 4th international symposium “From agent theory to agent implementation” (AT2AI-4) (Vol. 2, pp. 529–534). Austrian Society for Cybernetics Studies.

  59. Poslad, S. (2005). History of FIPA. Retrieved January 22, 2020 from https://www.fipa.org/subgroups/ROFS-SG-docs/History-of-FIPA.htm.

  60. Poslad, S. (2007). Specifying protocols for multi-agent systems interaction. ACM Transactions on Autonomous and Adaptive Systems. https://doi.org/10.1145/1293731.1293735.

    Article  Google Scholar 

  61. Poslad, S. (2009). Ubiquitous computing: Smart devices, environments and interactions. New York: Wiley.

    Book  Google Scholar 

  62. Poslad, S., Buckle, P., & Hadingham, R. (2001). Open source, standards and scaleable agencies. In Proceedings of the workshop “Infrastructure for scalable multi-agent systems”. Lecture notes in computer science (Vol. 1887, pp. 296–303). Berlin: Springer.

  63. Ricci, A., & Santi, A. (2011). Designing a general-purpose programming language based on agent-oriented abstractions: The simpAL project. In Proceeding of the 1st international workshop “Programming based on actors, agents, and decentralized control” (AGERE 2011) at ACM SIGPLAN conference “Systems, programming, languages, and applications: Software for humanity” (SPLASH 2011) (pp. 159–170). ACM.

  64. Rodriguez, S., Gaud, N., & Galland, S. (2014). SARL: A general-purpose agent-oriented programming language. In Proceedings of the 2014 IEEE/WIC/ACM international joint conference on Web intelligence and intelligent agent technology (WI&IAT 2014) (pp. 103–110). IEEE.

  65. Scopus. Retrieved January 22, 2020 from www.scopus.com.

  66. Shoham, Y. (1991). AGENT-0: A simple agent language and its interpreter. In Proceedings of the 9th national conference on artificial intelligence (AAAI 1991) (Vol. 91, pp. 704–709). AAAI.

  67. Shoham, Y. (1997). An overview of agent-oriented programming. In J. M. Bradshaw (Ed.), Software agents (pp. 271–290). Cambridge: MIT Press.

    Google Scholar 

  68. Siemens. Retrieved January 22, 2020 from www.siemens.de.

  69. Telefónica. Retrieved January 22, 2020 from www.telefonica.com.

  70. TIM. Retrieved January 22, 2020 from www.tim.it.

  71. Tomaiuolo, M., Turci, P., Bergenti, F., & Poggi, A. (2006). An ontology support for semantic aware agents. In Proceedings of the 7th international workshop “Agent-oriented information systems III” (AOIS 2005). Lecture notes in artificial intelligence (Vol. 3529, pp. 140–153). Berlin: Springer.

  72. van Aart, C., Caire, G., Pels, R., & Bergenti, F. (2002). Creating and using ontologies in agent communication. In S. Cranefield, T. Finin, & S. Willmott (Eds.) Proceedings of the 2002 workshop on ontologies in agent systems (OAS 2002). CEUR workshop proceedings (Vol. 66). RWTH Aachen.

Download references

Acknowledgements

Authors would like to gratefully thank the large and lively community of researchers, practitioners, students, and enthusiasts that contributed to the development and the application of JADE during its first twenty years. Authors would like to fondly and admiringly dedicate this paper to the memory of Fabio Bellifemine for his prominent contributions to the area of software agents and agent-based software development, and for his propulsive role in the conception and in the launch of JADE.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Federico Bergenti.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Bergenti, F., Caire, G., Monica, S. et al. The first twenty years of agent-based software development with JADE. Auton Agent Multi-Agent Syst 34, 36 (2020). https://doi.org/10.1007/s10458-020-09460-z

Download citation

  • Published:

  • DOI: https://doi.org/10.1007/s10458-020-09460-z

Keywords

Navigation