Autonomous Agents and Multi-Agent Systems

, Volume 23, Issue 2, pp 193–223 | Cite as

Engineering and verifying agent-oriented requirements augmented by business constraints with \({\mathcal{B}}\)-Tropos

  • Marco Montali
  • Paolo TorroniEmail author
  • Nicola Zannone
  • Paola Mello
  • Volha Bryl
Open Access


We propose \({\mathcal{B}}\)-Tropos as a modeling framework to support agent-oriented systems engineering, from high-level requirements elicitation down to execution-level tasks. In particular, we show how \({\mathcal{B}}\)-Tropos extends the Tropos methodology by means of declarative business constraints, inspired by the ConDec graphical language. We demonstrate the functioning of \({\mathcal{B}}\)-Tropos using a running example inspired by a real-world industrial scenario, and we describe how \({\mathcal{B}}\)-Tropos models can be automatically formalized in computational logic, discussing formal properties of the resulting framework and its verification capabilities.


Business Process Requirement Engineering Integrity Constraint Linear Temporal Logic Requirement Engineer 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Alberti, M., Chesani, F., Gavanelli, M., Lamma, E., & Mello, P. (2006). A verifiable logic-based agent architecture. In Proceedings of the 16th international syposium on methodologies for intelligent systems. Lecture Notes in Computer Science (Vol. 4203, pp.188–197). Springer.Google Scholar
  2. 2.
    Alberti, M., Chesani, F., Gavanelli, M., Lamma, E., Mello, P., Montali, M., et al. (2006). Computational logic for run-time verification of Web services choreographies: Exploiting the SOCS-SI tool. In: M. Bravetti, M. Núñez, & G. Zavattaro, (Eds.), Proceedings of the 3rd international workshop on Web services and formal methods, Lecture Notes in Computer Science (Vol. 4184, pp. 58–72). Springer.Google Scholar
  3. 3.
    Alberti, M., Chesani, F., Gavanelli, M., Lamma, E., Mello, P., & Torroni, P. (2005). On the automatic verification of interaction protocols using g-SCIFF. Technical Report DEIS-LIA-04-004, University of Bologna.Google Scholar
  4. 4.
    Alberti M., Chesani F., Gavanelli M., Lamma E., Mello P., Torroni P. (2006) Compliance verification of agent interaction: A logic-based software tool. Applied Artificial Intelligence 20(2–4): 133–157CrossRefGoogle Scholar
  5. 5.
    Alberti, M., Chesani, F., Gavanelli, M., Lamma, E., Mello, P., & Torroni, P. (2006). Security protocols verification in Abductive Logic Programming: A case study. In: O. Dikenelli, M.-P. Gleizes, & A. Ricci (Eds.), Proceedings of the 6th international workshop on engineering societies in the agents world, Lecture Notes in Artificial Intelligence (Vol. 3963, pp. 106–124). Springer.Google Scholar
  6. 6.
    Alberti M., Chesani F., Gavanelli M., Lamma E., Mello P., Torroni P. (2008) Verifiable agent interaction in abductive logic programming: The SCIFF framework. ACM Transactions on Computational Logic (TOCL) 9(4): 29MathSciNetGoogle Scholar
  7. 7.
    Antón, A. I., & Potts, C. (1998) The use of goals to surface requirements for evolving systems. In Proceedings of 20th the international conference on software engineering (pp 157–166). IEEE Press.Google Scholar
  8. 8.
    Bleistein J., Cox K., Verner J., Phalp T. (2005) Requirements engineering for e-business advantage. Requirements Engineering 11(1): 4–16CrossRefGoogle Scholar
  9. 9.
    Bresciani P., Giorgini P., Giunchiglia F., Mylopoulos J., Perini A. (2004) TROPOS: An agent-oriented software development methodology. Journal of Autonomous Agents and Multi-Agent Systems 8(3): 203–236CrossRefGoogle Scholar
  10. 10.
    Bryl, V., Massacci, F., Mylopoulos, J., & Zannone, N. (2006). Designing security requirements models through planning. In Proceedings of the 18th international conference on advanced information systems engineering, Lecture Notes in Computer Science (Vol. 4001, pp. 33–47). Springer.Google Scholar
  11. 11.
    Bryl, V., Mello, P., Montali, M., Torroni, P., & Zannone, N. (2008) \({\mathcal{B}}\)-Tropos: Agent-oriented requirements engineering meets computational logic for declarative business process modeling and verification. In: F. Sadri & K. Satoh (Eds.), Proceedings of the 8th international workshop on computational logic in multi-agent systems, Lecture Notes in Artificial Intelligence (Vol. 5056, pp. 157–176). Springer.Google Scholar
  12. 12.
    Buhr R. J. A. (1998) Use case maps as architectural entities for complex systems. TSE 24(12): 1131–1155Google Scholar
  13. 13.
    Caire G., Coulier W., Garijo F., Gomez-Sanz J., Pavon J., Kearney P. et al (2004) The message methodology. Methodologies and Software Engineering for Agent Systems 11: 177–194CrossRefGoogle Scholar
  14. 14.
    Chesani, F., Mello, P., Montali, M., & Torroni, P. (2009). Commitment tracking via the reactive event calculus. In: C. Boutilier (Ed.), IJCAI 2009, Proceedings of the 21st International joint conference on artificial intelligence, Pasadena, CA, USA, July 11–17, 2009, pp. 91–96.Google Scholar
  15. 15.
    Chesani, F., Mello, P., Montali, M., & Torroni, P. (2009). Verification of choreographies during execution using the reactive event calculus. In: R. Bruni & K. Wolf (Eds.), Web services and formal methods, 5th international workshop, WS-FM 2008, Milan, Italy, September 4–5, 2008, Revised Selected Papers, Lecture Notes in Computer Science (Vol. 5387, pp 55–72). Springer.Google Scholar
  16. 16.
    Chung, L. K., Nixon, B. A., Yu, E., & Mylopoulos, J. (2000). Non-functional requirements in software engineering. Kluwer Publishing.Google Scholar
  17. 17.
    Dardenne A., van Lamsweerde A., Fickas S. (1993) Goal-directed requirements acquisition. Science of Computer Programming 20: 3–50CrossRefzbMATHGoogle Scholar
  18. 18.
    De la Vara González, J. L., & Díaz, J. S. (2007) Business process-driven requirements engineering: A goal-based approach. In Proceedings of the 8th workshop on business process modeling, development, and support.Google Scholar
  19. 19.
    Fisher, M. (2005). Implementing temporal logics: Tools for execution and proof (tutorial paper). In: F. Toni & P. Torroni (Eds.), CLIMA VI, Lecture Notes in Computer Science (Vol. 3900, pp. 129–142). Springer.Google Scholar
  20. 20.
    Frankova, G., Massacci, F., & Seguran, M. (2007). From early requirements analysis towards secure workflows. In Proceedings of the joint iTrust and PST conferences on privacy, trust management and security.Google Scholar
  21. 21.
    Fung T. H., Kowalski R. A. (1997) The IFF proof procedure for abductive logic programming. Journal of Logic Programming 33(2): 151–165CrossRefzbMATHMathSciNetGoogle Scholar
  22. 22.
    Fuxman A., Liu L., Mylopoulos J., Pistore M., Roveri M., Traverso P. (2004) Specifying and analyzing early requirements in tropos. Requirements Engineering 9(2): 132–150CrossRefGoogle Scholar
  23. 23.
    Haglind, M., Johansson, L., & Rantzer, M. (1998) Experiences integrating requirements engineering and business analysis an empirical study of operations & management system procurement projects. In Proceedings of the 3rd international conference on requirements engineering (pages 108–117). IEEE Computer Society.Google Scholar
  24. 24.
    Henderson-Sellers, B., & Giorgini, P. (Eds.). (2005). Agent-oriented methodologies. Idea Group PublishingGoogle Scholar
  25. 25.
    Iglesias, C. A., Garijo, M., & Centeno-González, J. (1999). A Survey of agent-oriented methodologies. In Proceedings of the 5th international workshop on intelligent agents V, agent theories, architectures, and languages (pp. 317–330). London, UK. Springer.Google Scholar
  26. 26.
    Jackson, M. (2001). Problem frames: Analysing and structuring software development problems. Addison Wesley.Google Scholar
  27. 27.
    Jacobson, I., Ericsson, M., & Jacobson, A. (1994) The object advantage: Business process reengineering with object technology. ACM Press/Addison-Wesley Publishing Co.Google Scholar
  28. 28.
    Jaffar J., Maher M. (1994) Constraint logic programming: A survey. Journal of Logic Programming 19(20): 503–582CrossRefMathSciNetGoogle Scholar
  29. 29.
    Johansson, H. J., McHugh, P., Pendlebury, A. J., & Wheeler, W. A. (1993). Business process reengineering—Breakpoint strategies for market dominance. Wiley.Google Scholar
  30. 30.
    Kakas A. C., Kowalski R. A., Toni F. (1993) Abductive logic programming. Journal of Logic and Computation 2(6): 719–770CrossRefMathSciNetGoogle Scholar
  31. 31.
    Kazhamiakin, R., Pistore, M., & Roveri, M. (2004). A framework for integrating business processes and business requirements. In Proceedings of the 8th international enterprise distributed object computing conference (pp. 9–20). IEEE Press.Google Scholar
  32. 32.
    Kiyavitskaya, N., Moretti, R., Sebastianis, M., & Zannone, N. (2007). Project Report on the Initial Analysis of (Early) Requirements of Domain 1. TOCAI Deliverable D2.1, University of Rome “La Sapienza,”. Online resource,
  33. 33.
    Lamport L. (1994) How to write a long formula. Formal Aspects of Computing 6(5): 580–584CrossRefGoogle Scholar
  34. 34.
    Liu, L., & Yu, E. (2001). From requirements to architectural design: Using goals and scenarios. In Proceedings of the 1st international workshop on software requirements and architectures.Google Scholar
  35. 35.
    Loucopoulos, P. (2003). The S3 (Strategy-Service-Support) framework for business process modelling. In Proceedings of the workshop on requirements engineering for business process support, CEUR Workshop Proceedings (Vol. 75). CEUR-WS.orgGoogle Scholar
  36. 36.
    Massacci, F., Mylopoulos, J., & Zannone, N. (2007). An ontology for secure socio-technical systems. In Handbook of ontologies for business interaction. The IDEAGroupGoogle Scholar
  37. 37.
    Mayr, H. C., Kop, C., & Esberger, D. (2007). Business process modeling and requirements modeling. In Proceedings of the 1st international conference on the digital society (p. 8). IEEE Computer Society.Google Scholar
  38. 38.
    Montali, M. (2009). Specification and verification of declarative open interaction models: A Logic-based framework. PhD thesis, University of Bologna.Google Scholar
  39. 39.
    Montali, M., Pesic, M., van der Aalst, W. M. P., Chesani, F., Mello, P., & Storari S. (2009). Declarative specification and verification of service choreographies. ACM Transactions on the Web, (accepted with minor revision.)Google Scholar
  40. 40.
    Montali, M., Torroni, P., Alberti, M., Chesani, F., Gavanelli, M., Lamma, E., et al. (2008). Verification from declarative specifications using logic programming. In: M. G. de la Banda & E. Pontelli (Eds.), Proceedings of the 24th international conference on logic programming, Lecture Notes in Computer Science (Vol. 5366, pp. 440–454). Springer.Google Scholar
  41. 41.
    Montali, M., Torroni, P., Alberti, M., Chesani, F., Lamma, E., & Mello, P. (2010). Abductive logic programming as an effective technology for the static verification of declarative business processes. Special Issue of Journal of Algorithms in Cognition, Informatics and Logic (expected).Google Scholar
  42. 42.
    Ould, M. (1995). Business process: Modelling and analysis for re-engineering and improving. Wiley.Google Scholar
  43. 43.
    Rubens J. (2007) Business analysis and requirements engineering: the same, only different?. Requirements Engineering 12(2): 121–123CrossRefGoogle Scholar
  44. 44.
    Schonenberg, H., Mans, R., Russell, N., Mulyar, N., & van der Aalst, W. M. (2008). Towards a taxonomy of process flexibility. In: Z. Bellahsene, C. Woo, E. Hunt, X. Franch, & R. Coletta (Eds.), Proceedings of the forum at the CAiSE’08 conference. CEUR workshop proceedings (Vol. 344, pp. 81–84).Google Scholar
  45. 45.
    van der Aalst, W. M. P., & Pesic, M. (2006) A declarative approach for flexible business processes management. In Proceedings of the 4th international conference on business process management, Lecture Notes in Computer Science (Vol. 4103, pp. 169–180). Springer.Google Scholar
  46. 46.
    van der Aalst, W. M. P., & Pesic, M. (2006) DecSerFlow: Towards a truly declarative service flow language. In Proceedings of the 3rd international workshop on web services and formal models, Lecture Notes in Computer Science (Vol. 4184).Google Scholar
  47. 47.
    van der Aalst W. M. P., ter Hofstede A. H. M., Kiepuszewski B., Barros A. P. (2003) Workflow patterns. Distributed and Parallel Databases 14(1): 5–51CrossRefGoogle Scholar
  48. 48.
    Vilain, M., Kautz, H., & van Beek, P. (1990). Constraint propagation algorithms for temporal reasoning: A revised report. In: Readings in qualitative reasoning about physical systems (pp. 373–381). San Francisco, CA: Morgan Kaufmann Publishers Inc.Google Scholar
  49. 49.
    Wood, M. F., & DeLoach, S. A. (2001). An overview of the multiagent systems engineering methodology. In Proceedings of first international workshop on agent-oriented software engineering (pp. 207–221). Springer-Verlag New York, Inc.Google Scholar
  50. 50.
    Xanthakos, I. (2003). Semantic integration of information by abduction. PhD thesis, Imperial College London. Available online,
  51. 51.
    Yi, C.-H., & Johannesson, P. (1999). Beyond goal representation: Checking goal-satisfaction by temporal reasoning with business processes. In Proceedings of CAiSE’99 LNCS (Vol. 1626, pp.462–466). Springer.Google Scholar
  52. 52.
    Zambonelli F., Jennings N. R., Wooldridge M. (2003) Developing multiagent systems: The Gaia methodology. ACM Transactions on Software Engineering and Methodology (TOSEM) 12(3): 317–370CrossRefGoogle Scholar

Copyright information

© The Author(s) 2010

Authors and Affiliations

  • Marco Montali
    • 1
  • Paolo Torroni
    • 1
    Email author
  • Nicola Zannone
    • 2
  • Paola Mello
    • 1
  • Volha Bryl
    • 3
  1. 1.University of BolognaBolognaItaly
  2. 2.Eindhoven University of TechnologyEindhovenThe Netherlands
  3. 3.FBK-IRSTPovoItaly

Personalised recommendations