Requirements as Goals and Commitments Too

  • Amit K. ChopraEmail author
  • John Mylopoulos
  • Fabiano Dalpiaz
  • Paolo Giorgini
  • Munindar P. Singh


In traditional software engineering research and practice, requirements are classified either as functional or non-functional. Functional requirements consist of all functions the system-to-be ought to support, and have been modeled in terms of box-and-arrow diagrams in the spirit of SADT. Non-functional requirements include desired software qualities for the system-to-be and have been described either in natural language or in terms of metrics. This orthodoxy was challenged in the mid-90 s by a host of proposals that had a common theme: all requirements are initially stakeholder goals and ought to be elicited, modeled and analyzed as such. Through systematic processes, these goals can be refined into specifications of functions the system-to-be needs to deliver, while actions assigned to external actors need to be executed. This view is dominating Requirements Engineering (RE) research and is beginning to have an impact on RE practice. We propose a next step along this line of research, by adopting the concept of conditional commitment as companion concept to that of goal. Goals are intentional entities that capture the needs and wants of stakeholders. Commitments, on the other hand, are social concepts that define the willingness and capability of an actor A to fulfill a predicate ϕ for the benefit of actor B, provided B (in return) fulfills predicate ψ for the benefit of actor A. In our conceptualization, goals are mapped to collections of commitments rather than functions, qualities, or actor assignments. We motivate the importance of the concept of commitment for RE through examples and discussion. We also contrast our proposal with state-of-the-art requirements modeling and analysis frameworks, such as KAOS, MAP, i * and Tropos.


Requirement Engineer Multiagent System Requirement Engineer Travel Agency Nonfunctional Requirement 
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.
    Web Services Business Process Execution Language Version 2.0 (April 2007) Accessed 6 May 2010
  2. 2.
    BPMN: Business process modeling notation, v1.1 (January 2008) Accessed 6 May 2010
  3. 3.
    Bratman ME (1987) Intention, plans, and practical reason. Harvard University, Cambridge, MAGoogle Scholar
  4. 4.
    Bresciani P, Perini A, Giorgini P, Giunchiglia F, Mylopoulos J (2004) Tropos: an agent-oriented software development methodology. Autonomous Agents Multi-Agent Systems 8(3):203–236CrossRefGoogle Scholar
  5. 5.
    Bryl V, Giorgini P, Mylopoulos J (2009) Designing socio-technical systems: from stakeholder goals to social networks. Reqs Eng 14(1):47–70CrossRefGoogle Scholar
  6. 6.
    Chopra AK, Singh MP (2008) Constitutive interoperability. In: Proceedings of the seventh international conference on autonomous agents and multiagent systems, pp 797–804, Estoril, PortugalGoogle Scholar
  7. 7.
    Chopra AK, Singh MP (2009) Multiagent commitment alignment. In: Proceedings of the eighth international conference on autonomous agents and multiagent systems, Budapest Hungary, pp 937–944Google Scholar
  8. 8.
    Chopra AK, Singh MP (2009) An architecture for multiagent systems: an approach based on commitments. In: Proceedings of the 7th international workshop on programming multi-agent systems, Budapest HungaryGoogle Scholar
  9. 9.
    Cohen PR, Levesque HJ (1990) Intention is choice with commitment. Artificial Intelligence 42:213–261MathSciNetzbMATHCrossRefGoogle Scholar
  10. 10.
    Dardenne A, van Lamsweerde A, Fickas S (1993) Goal-directed requirements acquisition. Science Computer Programming 20(1–2):3–50zbMATHCrossRefGoogle Scholar
  11. 11.
    Desai N, Mallya AU, Chopra AK, Singh MP (2005) Interaction protocols as design abstractions for business processes. IEEE Trans Softw Eng 31(12):1015–1027CrossRefGoogle Scholar
  12. 12.
    Desai N, Chopra AK, Arrott M, Specht B, Singh MP (2007) Engineering foreign exchange processes via commitment protocols. In: Proceedings of the 4th IEEE international conference on services computing, IEEE Computer Society, Los Alamitos, pp 514–521Google Scholar
  13. 13.
    Desai N, Chopra AK, Singh MP (2007) Representing and reasoning about commitments in business processes. In: Proceedings of the 22nd conference on artificial intelligence, Vancouver, pp 1328–1333Google Scholar
  14. 14.
    Desai N, Chopra AK, Singh MP (2010) Amoeba: a methodology for modeling and evolution of cross-organizational business processes. ACM Trans Softw Eng Methodol 19(2):6:1–6:45Google Scholar
  15. 15.
    Emery FE (1959) Characteristics of sociotechnical systems. Travistock Institute of Human Relations, LondonGoogle Scholar
  16. 16.
    Fornara N, Colombetti M (2002) Operational specification of a commitment-based agent communication language. In: Proceedings of the 1st international joint conference on autonomous agents and multiagent systems (AAMAS), ACM, Bologna, Italy, pp 535–542Google Scholar
  17. 17.
    Fornara N, Colombetti M (2004) A commitment-based approach to agent communication. Applied Artificial Intelligence 18(9–10):853–866CrossRefGoogle Scholar
  18. 18.
    Giorgini P, Mylopoulos J, Nicchiarelli E, Sebastiani R (2003) Reasoning with goal models. In: Conceptual modeling—ER 2002. LNCS, vol 2503. Springer, Heidelberg, Berlin, pp 167–181Google Scholar
  19. 19.
    Gordijn J, Yu E, van der Raadt B (2006) E-service design using i * and e3value modeling. IEEE Softw 23(3):26–33CrossRefGoogle Scholar
  20. 20.
    Guizzardi RSS, Guizzardi G, Perini A, Mylopoulos J (2007) Towards an ontological account of agent-oriented goals. In: Software engineering for multi-agent systems V. LNCS, vol 4408. Springer, Heidelberg, Berlin, pp 148–164Google Scholar
  21. 21.
    Kaabi RS, Souveyet C, Rolland C (2004) Eliciting service composition in a goal driven manner. In: Proceedings of the 2nd international conference on service oriented computing, New York, pp 308–315Google Scholar
  22. 22.
    Liu L, Liu Q, Chi CH, Jin Z, Yu E (2008) Towards a service requirements modelling ontology based on agent knowledge and intentions. Int J Agent-Oriented Softw Eng 2(3):324–349CrossRefGoogle Scholar
  23. 23.
    Lo A, Yu E (2007) From business models to service-oriented design: a reference catalog approach. In: Proceedings of the 26th international conference on conceptual modeling (ER 2007), Auckland, pp 87–101Google Scholar
  24. 24.
    Mallya AU, Singh MP (2007) An algebra for commitment protocols. J Autonomous Agents Multi-Agent Systems 14(2):143–163CrossRefGoogle Scholar
  25. 25.
    Penserini L, Perini A, Susi A, Mylopoulos J (2006) From stakeholder needs to service requirements. In: Workshop on service-oriented computing: consequences for engineering requirements (SOCCER’06) MinneapolisGoogle Scholar
  26. 26.
    Robinson WN, Purao S (2009) Specifying and monitoring interactions and commitments in open business processes. IEEE Softw 26(2):72–79CrossRefGoogle Scholar
  27. 27.
    Rolland C, Souveyet C, Achour CB (1998) Guiding goal modeling using scenarios. IEEE Transac Softw Eng 24(12):1055–1071CrossRefGoogle Scholar
  28. 28.
    Rolland C, Grosz G, Kla R (1999) Experience with goal-scenario coupling in requirements engineering. In: Proceedings of the IEEE international symposium on requirements engineering, Limerick, IrelandGoogle Scholar
  29. 29.
    Rolland C, Prakash N, Benjamen A (1999) A multi-model view of process modelling. Reqs Eng 4(4):169–187CrossRefGoogle Scholar
  30. 30.
    Rolland C, Kaabi RS, Kraïem N (2007) On ISOA: intentional services oriented architecture. In: Proceedings of CAiSE 2007.LNCS, vol 4495. Springer, Heidelberg, Berlin, pp 158–172Google Scholar
  31. 31.
    Ropohl G (1999) Philosophy of socio-technical systems. Society Philosophy Technol 4(3):55–71Google Scholar
  32. 32.
    Ross DT (1977) Structured analysis (SA): a language for communicating ideas. IEEE Trans Softw Eng 3(1):16–34CrossRefGoogle Scholar
  33. 33.
    Singh MP (1991) Social and psychological commitments in multiagent systems. In: AAAI fall symposium on knowledge and action at social and organizational levels, Pacific Grove, California, pp 104–106Google Scholar
  34. 34.
    Singh MP (1998) Agent communication languages: rethinking the principles. IEEE Computer 31(12):40–47CrossRefGoogle Scholar
  35. 35.
    Singh MP (1999) An ontology for commitments in multiagent systems: toward a unification of normative concepts. Artificial Intelligence Law 7:97–113CrossRefGoogle Scholar
  36. 36.
    Singh MP (2008) Semantical considerations on dialectical and practical commitments. In: Proceedings of the 23rd conference on artificial intelligence, Chicago, pp 176–181Google Scholar
  37. 37.
    Singh MP, Chopra AK (2009) Programming multiagent systems without programming agents. In: Proceedings of the 7th international workshop on programming multiagent systems (ProMAS 2009), invited paper, BudapestGoogle Scholar
  38. 38.
    Singh MP, Chopra AK, Desai N (2009) Commitment-based service-oriented architecture. IEEE Computer 42(11):72–79CrossRefGoogle Scholar
  39. 39.
    Telang PR, Singh MP (2009) Enhancing Tropos with commitments: a business metamodel and methodology. In: Borgida A, Chaudhri V, Giorgini P, Yu E (eds) Conceptual modeling: foundations and applications. LNCS, vol 5600. Springer, Heidelberg, Berlin, pp 417–435Google Scholar
  40. 40.
    van Lamsweerde A (2003) From system goals to software architecture. In: Formal methods for software architectures. LNCS, vol 2804. Springer, Heidelberg, Berlin, pp 25–43Google Scholar
  41. 41.
    Winikoff M, Liu W, Harland J (2005) Enhancing commitment machines. In: Proceedings of the 2nd international workshop on declarative agent languages and technologies (DALT). LNAI, vol 3476. Springer, Heidelberg, Berlin, pp 198–220Google Scholar
  42. 42.
    Yolum P, Singh MP (2002) Flexible protocol specification and execution: Applying event calculus planning using commitments. In: Proceedings of the 1st international joint conference on autonomous agents and multiagent systems, ACM, Bologna, Italy, pp 527–534Google Scholar
  43. 43.
    Yu ES (1997) Towards modelling and reasoning support for early-phase requirements engineering. In: Proceedings of the third IEEE international symposium on requirements engineering, Annapolis, pp 226–235Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Amit K. Chopra
    • 1
    Email author
  • John Mylopoulos
    • 1
  • Fabiano Dalpiaz
    • 1
  • Paolo Giorgini
    • 1
  • Munindar P. Singh
    • 2
  1. 1.Department of Information Engineering and Computer ScienceUniversity of TrentoTrentoItaly
  2. 2.Department of Computer ScienceNorth Carolina State UniversityRaleighUSA

Personalised recommendations