Towards an Agent-driven Software Architecture Aligned with User Stories

Yves Wautelet, Samedi Heng, Manuel Kolp, Christelle Scharff


Agile principles have taken an increasing importance in the last decades. Software Architecture (SA) definition is perceived as a non-agile practice as it is executed in a top-down manner, reminding waterfall development, and sometimes imposes heavy documentation. This paper proposes to systematically build an agent-oriented SA from a set of User Stories (US), the core artifact to document requirements in agile methodologies. Previous research has allowed to define a unified US meta-model for the generation of templates relating WHO, WHAT and WHY elements. This meta-model’s elements define a syntax issued from practitioners templates associated with semantics from Goal Oriented Requirements Engineering frameworks, more precisely i*. With a set of US following the templates of this previous model, the link between the US and SA concepts is systematically studied and a transformation process is proposed. The SA can decline agent behaviors aligned with requirements and organizational behaviors. Moreover, requirements (thus US) are subject to evolution through agile iterations; the SA can evolve with these changes in a semi-automatic manner. We thus argue that the Agent-SA produced with our transformation process contributes to the overall project agility.


  1. Abrahamsson, P., Babar, M. A., and Kruchten, P. (2010). Agility and architecture: Can they coexist? IEEE Software, 27(2):16-22.
  2. Babar, M. A., Brown, A. W., and Mistrik, I. (2013). Agile Software Architecture: Aligning Agile Processes and Software Architectures. Morgan Kaufmann Publ.
  3. Booch, G. (2008). Architectural organizational patterns. Software, IEEE, 25(3):18-19.
  4. Carrera, Í., Iglesias, C. A., and Garijo, M. (2014). Beast methodology: An agile testing methodology for multi-agent systems based on behaviour driven development. Info. Syst. Frontiers, 16(2):169-182.
  5. Chella, A., Cossentino, M., Sabatucci, L., and Seidita, V. (2006). Agile passi: An agile process for designing agents. International Journal of Computer Systems Science & Engineering, 21(2):133-144.
  6. Cohn, M. (2004). User Stories Applied: For Agile Software Development. Addison Wesley.
  7. DeLoach, S. A., Matson, E. T., and Li, Y. (2002). Applying agent oriented software engineering to cooperative robotics. In FLAIRS Conference, pages 391-396.
  8. Freudenberg, S. and Sharp, H. (2010). The top 10 burning research questions from practitioners. IEEE Software, 27(5):8-9.
  9. Gaur, V. and Soni, A. (2012). A novel approach to explore inter agent dependencies from user requirements. Procedia Technology, 1:412-419.
  10. Kiv, S., Wautelet, Y., and Kolp, M. (2012). Agent-driven integration architecture for component-based software dvpt. Trans. Comp. Collect. Intell., 8:121-147.
  11. Leffingwell, D. (2010). Agile software requirements: lean requirements practices for teams, programs, and the enterprise. Addison-Wesley Professional.
  12. Perez, J., Diaz, J., Garbajosa, J., and Yage, A. (2014). Bridging user stories and software architecture: A tailored scrum for agile architecting. In Agile Software Architecture, pages 215-241.
  13. Pokahr, A., Braubach, L., Haubeck, C., and Ladiges, J. (2014). Programming BDI agents with pure java. In Müller, J. P., Weyrich, M., and Bazzan, A. L. C., editors, Multiagent System Technologies - 12th German Conference, MATES 2014, Stuttgart, Germany, September 23-25, 2014. Proceedings, volume 8732 of LNCS, pages 216-233. Springer.
  14. Pokahr, A., Braubach, L., and Jander, K. (2013). The jadex project: Programming model. In Ganzha, M. and Jain, L. C., editors, MAS and Applications - Volume 1: Practice and Experience, volume 45 of Intelligent Systems Reference Library, pages 21-53. Springer.
  15. Pokahr, A., Braubach, L., and Lamersdorf, W. (2005). Jadex: A BDI reasoning engine. In Bordini, R. H., Dastani, M., Dix, J., and Fallah-Seghrouchni, A. E., editors, Multi-Agent Programming: Languages, Platforms and Applications, volume 15 of MAS, Artificial Societies, and Simulated Organizations, pages 149- 174. Springer.
  16. Shergill, M. P. K. and Scharff, C. (2012). Developing multichannel mobile solutions for a global audience: The case of a smarter energy solution. SARNOFF'12, New Jersey.
  17. Tenso, T. and Taveter, K. (2013). Requirements engineering with agent-oriented models. In ENASE, pages 254- 259.
  18. Wautelet, Y., Heng, S., Kolp, M., and Mirbel, I. (2014). Unifying and extending user story models. In CAiSE 2014, Thessaloniki, Greece, June, 2014. Proceedings, volume 8484 of LNCS, pages 211-225. Springer.
  19. Wood, M. F. and DeLoach, S. A. (2001). An overview of the multiagent systems engineering methodology. In Agent-Oriented Soft. Eng., pages 207-221. Springer.
  20. Yu, E., Giorgini, P., Maiden, N., and Mylopoulos, J. (2011). Social Modeling for Requirements Engineering. MIT Press.

Paper Citation

in Harvard Style

Wautelet Y., Heng S., Kolp M. and Scharff C. (2016). Towards an Agent-driven Software Architecture Aligned with User Stories . In Proceedings of the 8th International Conference on Agents and Artificial Intelligence - Volume 2: ICAART, ISBN 978-989-758-172-4, pages 337-345. DOI: 10.5220/0005706103370345

in Bibtex Style

author={Yves Wautelet and Samedi Heng and Manuel Kolp and Christelle Scharff},
title={Towards an Agent-driven Software Architecture Aligned with User Stories},
booktitle={Proceedings of the 8th International Conference on Agents and Artificial Intelligence - Volume 2: ICAART,},

in EndNote Style

JO - Proceedings of the 8th International Conference on Agents and Artificial Intelligence - Volume 2: ICAART,
TI - Towards an Agent-driven Software Architecture Aligned with User Stories
SN - 978-989-758-172-4
AU - Wautelet Y.
AU - Heng S.
AU - Kolp M.
AU - Scharff C.
PY - 2016
SP - 337
EP - 345
DO - 10.5220/0005706103370345