Abstract
In this paper, we propose the integration of approaches to Engineering Multi-Agent Systems (EMAS) with the Developer Operations (DevOps) industry best practice. Whilst DevOps facilitates the organizational autonomy of software teams, as well as the technological automation of testing, deployment, and operations pipelines, EMAS and the agent-oriented programming paradigm help instill autonomy into software artifacts. We discuss the benefits of integrating DevOps and EMAS, for example by highlighting the need for agent-oriented abstractions for quality assurance and test automation approaches. More generally, we introduce an agent-oriented perspective on the DevOps life-cycle and list a range of research challenges that are relevant for the integration of the DevOps and EMAS perspectives.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
We observe that Knight Capital’s system is one of numerous autonomous software systems already in operation within socio-technically complex organizations [15].
- 2.
For an overview of some agent-oriented programming languages and frameworks, see (for example) Cardoso and Ferrando [12].
- 3.
We assume that these tests can be executed relatively quickly when the developer logs a change, which is – in the case of standard approaches to static code analysis (often called linting), unit tests, and some integration tests like micro-service handler tests – a common capability of development tool-chains.
- 4.
In Vehicle-in-the-loop (VEHIL) simulations, domain-specific concepts similar to the sandbox for real-time collaboration and the cross-organizational staging system are employed.
- 5.
In his Agent Programming Manifesto, Logan calls for modular approaches to AOP [26]. We argue that the notion of a minimally viable abstraction goes a step further, as it suggests a focus on one particular benefit AOP can bring to mainstream software engineering approaches such as DevOps, and hence a radical simplification that may deliberately disregard many aspects of AOP to minimize technology overhead and learning curve when introducing a single abstraction.
References
Aha, D.W.: Goal reasoning: foundations, emerging applications, and prospects. AI Mag. 39(2), 3–24 (2018)
Amaral, C.J., Hübner, J.F.: Jacamo-web is on the fly: an interactive multi-agent system IDE. In: Dennis, L.A., Bordini, R.H., Lespérance, Y. (eds.) EMAS 2019. LNCS (LNAI), vol. 12058, pp. 246–255. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-51417-4_13
Amaral, C.J., Kampik, T., Cranefield, S.: A framework for collaborative and interactive agent-oriented developer operations. In: Proceedings of the 19th International Conference on Autonomous Agents and MultiAgent Systems, AAMAS 2020, International Foundation for Autonomous Agents and Multiagent Systems, Richland (2020)
Anjomshoae, S., Najjar, A., Calvaresi, D., Främling, K.: Explainable agents and robots: results from a systematic literature review. In: Proceedings of the 18th International Conference on Autonomous Agents and MultiAgent Systems, AAMAS 2019, pp. 1078–1088. International Foundation for Autonomous Agents and Multiagent Systems, Richland (2019)
Bass, L., Weber, I., Zhu, L.: DevOps: A Software Architect’s Perspective. Pearson Education, Inc., Boston (2015)
Bellifemine, F., Poggi, A., Rimassa, G.: JADE: A FIPA2000 compliant agent development environment. In: Proceedings of the Fifth International Conference on Autonomous Agents, AGENTS 2001, pp. 216–217. Association for Computing Machinery, New York (2001). https://doi.org/10.1145/375735.376120
Benac Earle, C., Fredlund, L.: A property-based testing framework for multi-agent systems. In: Proceedings of the 18th International Conference on Autonomous Agents and MultiAgent Systems, AAMAS 2019, pp. 1823–1825. International Foundation for Autonomous Agents and Multiagent Systems, Richland (2019)
Bolscher, R., Daneva, M.: Designing software architecture to support continuous delivery and devops: A systematic literature review. In: van Sinderen, M., Maciaszek, L., Maciaszek, L. (eds.) ICSOFT 2019 - Proceedings of the 14th International Conference on Software Technologies, Conference date: 26-07-2019 Through 28-07-2019, pp. 27–39. SCITEPRESS (2019)
Bordini, R.H., Hübner, J.F., Wooldridge, M.: Programming Multi-agent Systems in AgentSpeak Using Jason. Wiley Series in Agent Technology, Wiley, Hoboken (2007)
Bosse, S.: Mobile multi-agent systems for the internet-of-things and clouds using the JavaScript agent machine platform and machine learning as a service. In: 2016 IEEE 4th International Conference on Future Internet of Things and Cloud (FiCloud), pp. 244–253. IEEE (2016)
Brewer, E.A.: Kubernetes and the path to cloud native. In: Proceedings of the Sixth ACM Symposium on Cloud Computing, SoCC 2015, p. 167. Association for Computing Machinery, New York (2015). https://doi.org/10.1145/2806777.2809955
Cardoso, R.C., Ferrando, A.: A review of agent-based programming for multi-agent systems. Computers 10(2), 16 (2021)
Ciortea, A., Boissier, O., Zimmermann, A., Florea, A.M.: Give agents some REST: hypermedia-driven agent environments. In: El Fallah-Seghrouchni, A., Ricci, A., Son, T.C. (eds.) EMAS 2017. LNCS (LNAI), vol. 10738, pp. 125–141. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-91899-0_8
Coelho, R., Cirilo, E., Kulesza, U., Von Staa, A., Rashid, A., Lucena, C.: JAT: a test automation framework for multi-agent systems. In: IEEE International Conference on Software Maintenance, ICSM, pp. 425–434 (2007). https://doi.org/10.1109/ICSM.2007.4362655
De la Prieta, F., Rodríguez-González, S., Chamoso, P., Corchado, J.M., Bajo, J.: Survey of agent-based cloud computing applications. Future Gener. Comput. Syst. 100, 223–236 (2019). https://doi.org/10.1016/j.future.2019.04.037
DeLoach, S.A., Garcia-Ojeda, J.C.: O-MaSE: a customisable approach to designing and building complex, adaptive multi-agent systems. Int. J. Agent-Oriented Softw. Eng. 4(3), 244–280 (2010). https://doi.org/10.1504/IJAOSE.2010.036984
Dingsøyr, T., Nerur, S., Balijepally, V.G., Moe, N.B.: A decade of agile methodologies: towards explaining agile software development. J. Syst. Softw. 85(6), 1213–1221 (2012). special Issue: Agile Development. https://doi.org/10.1016/j.jss.2012.02.033. http://www.sciencedirect.com/science/article/pii/S0164121212000532
Ebert, C., Gallardo, G., Hernantes, J., Serrano, N.: DevOps. IEEE Softw. 33(3), 94–100 (2016)
Forsgren, N., Smith, D., Humble, J., Frazelle, J.: 2019 accelerate state of DevOps report. Technical report, Google Research (2019). http://cloud.google.com/devops/state-of-devops/
Huang, W.L., Wang, K., Lv, Y., Zhu, F.H.: Autonomous vehicles testing methods review. In: IEEE Conference on Intelligent Transportation Systems, Proceedings, pp. 163–168. ITSC (2016). https://doi.org/10.1109/ITSC.2016.7795548
Hubner, J.F., Sichman, J.S., Boissier, O.: Developing organised multiagent systems using the MOISE+ model: programming issues at the system and agent levels. Int. J. Agent-Oriented Softw. Eng. 1(3/4), 370 (2007). https://doi.org/10.1504/IJAOSE.2007.016266, http://www.inderscience.com/link.php?id=16266
de Jong, J., Stellingwerff, L., Pazienza, G.E.: Eve: a novel open-source web-based agent platform. In: 2013 IEEE International Conference on Systems, Man, and Cybernetics, pp. 1537–1541 (2013). https://doi.org/10.1109/SMC.2013.265
Kampik, T., Nieves, J.C.: JS-son - a lean, extensible JavaScript agent programming library. In: Dennis, L.A., Bordini, R.H., Lespérance, Y. (eds.) EMAS 2019. LNCS (LNAI), vol. 12058, pp. 215–234. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-51417-4_11
Kirilenko, A.A., Lo, A.W.: Moore’s law versus murphy’s law: algorithmic trading and its discontents. J. Econ. Perspect. 27(2), 51–72 (2013). https://doi.org/10.1257/jep.27.2.51
Lehmann, D.: Belief revision, revised. In: Proceedings of the 14th International Joint Conference on Artificial Intelligence - Volume 2, IJCAI 1995, pp. 1534–1540. Morgan Kaufmann Publishers Inc., San Francisco (1995)
Logan, B.: An agent programming manifesto. Int. J. Agent-Oriented Softw. Eng. 6(2), 187–210 (2018)
Mascardi, V., et al.: Engineering multi-agent systems: state of affairs and the road ahead. SIGSOFT Softw. Eng. Notes 44(1), 18–28 (2019). https://doi.org/10.1145/3310013.3322175
Merkel, D.: Docker: lightweight Linux containers for consistent development and deployment. Linux J. 2014(239), 2 (2014)
Meyer, M.: Continuous integration and its tools. IEEE Softw. 31(3), 14–16 (2014)
Mualla, Y., Tchappi, I., Najjar, A., Kampik, T., Galland, S., Nicolle, C.: Human-agent explainability: an experimental case study on the filtering of explanations. In: 12th International Conference on Agents and Artificial Intelligence, Valletta, Malta, 22–24 February 2020 (2020)
Nguyen, C.D., Perini, A., Tonella, P., Miles, S., Harman, M., Luck, M.: Evolutionary testing of autonomous software agents. In: Proceedings of the International Joint Conference on Autonomous Agents and Multiagent Systems, AAMAS, vol. 1, pp. 364–371 (2009)
Ossowski, S.: Agreement Technologies. Springer, Dordrecht (2012). https://doi.org/10.1007/978-94-007-5583-3
Pettigrew, A.M., Fenton, E.M.: The Innovating organization. SAGE Publications, Thousand Oaks (2000)
Shehory, O., Sturm, A. (eds.): Agent-Oriented Software Engineering. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-642-54432-3
Gühmann, C., Riese, J., von Rüden, K. (eds.): Simulation and Testing for Vehicle Technology. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-32345-9
Uez, D.M., Hübner, J.F.: Environments and organizations in multi-agent systems: from modelling to code. In: Dalpiaz, F., Dix, J., van Riemsdijk, M.B. (eds.) EMAS 2014. LNCS (LNAI), vol. 8758, pp. 181–203. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-14484-9_10
Winikoff, M.: Jack™ intelligent agents: an industrial strength platform. In: Bordini, R.H., Dastani, M., Dix, J., El Fallah Seghrouchni, A. (eds.) Multi-Agent Programming. MSASSO, vol. 15, pp. 175–193. Springer, Boston, MA (2005). https://doi.org/10.1007/0-387-26350-0_7
Winikoff, M., Cranefield, S.: On the testability of BDI agent systems. In: IJCAI International Joint Conference on Artificial Intelligence, pp. 4217–4221 (2015)
Gallina, B., Skavhaug, A., Schoitsch, E., Bitsch, F. (eds.): SAFECOMP 2018. LNCS, vol. 11094. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-99229-7
Acknowledgments
We thank the anonymous reviewers for their thoughtful and useful feedback. This work was partially supported by the Wallenberg AI, Autonomous Systems and Software Program (WASP) funded by the Knut and Alice Wallenberg Foundation and partially funded by Project AG-BR of Petrobras and by the program PrInt CAPES-UFSC “Automação 4.0”.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 Springer Nature Switzerland AG
About this paper
Cite this paper
Kampik, T., Amaral, C.J., Hübner, J.F. (2022). Developer Operations and Engineering Multi-agent Systems. In: Alechina, N., Baldoni, M., Logan, B. (eds) Engineering Multi-Agent Systems. EMAS 2021. Lecture Notes in Computer Science(), vol 13190. Springer, Cham. https://doi.org/10.1007/978-3-030-97457-2_10
Download citation
DOI: https://doi.org/10.1007/978-3-030-97457-2_10
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-97456-5
Online ISBN: 978-3-030-97457-2
eBook Packages: Computer ScienceComputer Science (R0)