A Comparative Analysis of i*Agent-Oriented Modelling Techniques
Agent-oriented software engineering has become an extended practice. The autonomy and flexibility provided by agents makes it appropriate either for the development of agent-based systems and for the development of complex and distributed software systems. Due to this wide applicability there are many modelling languages and methodologies for representing and developing systems using the agent-oriented paradigm. Among them, the i* language is very appropriate, not only for the agent concepts that it models, but also for its capabilities in the disciplines of requirements engineering and organizational process modelling. Nowadays, i* is one of the most widespread notations used for these purposes, and agent-oriented methodologies may take advantage of its existence in the requirements phase. However, due to the degree of freedom inherent to the i* language, the construction of the models may not be an easy task. To give light to this subject, we present several i* agent-oriented modelling techniques and we compare them according to a certain set of criteria.