Requirements specification via activity diagrams for agent-based systems

Goal-oriented agent systems are increasingly popular for developing complex applications that operate in highly dynamic environments. As with any software these systems have to be designed starting with the specification of system requirements. In this paper, we extend a popular agent design methodology, Prometheus, and improve the understandability and maintainability of requirements by automatically generating UML activity diagrams from existing requirements models; namely scenarios and goal hierarchies. This approach aims to overcome some of the ambiguity present in the current requirements specification in Prometheus and provide more structure for representing variations. Even though our approach is grounded in Prometheus, it can be generalised to all the methodologies that support similar notions in specifying requirements (i.e. notions of goals and scenarios). We present our approach and an evaluation based on user experiments. The evaluation showed that the activity diagram based approach enhances people’s understanding of the requirements, makes it easier to modify requirements, and easier to check them against the detailed design of the agents for coverage.

[1]  Michael Winikoff,et al.  Developing intelligent agent systems - a practical guide , 2004, Wiley series in agent technology.

[2]  Nicholas R. Jennings,et al.  The Gaia Methodology for Agent-Oriented Analysis and Design , 2000, Autonomous Agents and Multi-Agent Systems.

[3]  Jorge J. Gómez-Sanz,et al.  The INGENIAS Methodology and Tools , 2005 .

[4]  Bala M. Balachandran,et al.  A Comparison of Three Agent-Oriented Software Development Methodologies: ROADMAP, Prometheus, and MaSE , 2007, KES.

[5]  Cristian Duran-Faundez,et al.  Applying Gaia and AUML for the development of multiagent‐based control software for flexible manufacturing systems: addressing methodological and implementation issues , 2015, Softw. Pract. Exp..

[6]  D. Wolfe,et al.  Nonparametric Statistical Methods. , 1974 .

[7]  NICHOLAS R. JENNINGS,et al.  An agent-based approach for building complex software systems , 2001, CACM.

[8]  Anna Perini,et al.  Tool-Supported Development with Tropos: The Conference Management System Case Study , 2007, AOSE.

[9]  Scott A. DeLoach,et al.  agentTool III: from process definition to code generation , 2009, AAMAS.

[10]  Franco Zambonelli,et al.  Developing multiagent systems: The Gaia methodology , 2003, TSEM.

[11]  Michael Winikoff,et al.  Tool support for agent development using the Prometheus methodology , 2005, Fifth International Conference on Quality Software (QSIC'05).

[12]  P. Royston A Remark on Algorithm as 181: The W‐Test for Normality , 1995 .

[13]  Scott A. DeLoach,et al.  The O-MASE Methodology , 2014, Handbook on Agent-Oriented Design Processes.

[14]  Michael Luck,et al.  Methodologies and Software Engineering for Agent Systems , 2004, Multiagent Systems, Artificial Societies, and Simulated Organizations.

[15]  Ursula Faber,et al.  Requirements Engineering A Good Practice Guide , 2016 .

[16]  Jan Jürjens,et al.  UMLsec: Extending UML for Secure Systems Development , 2002, UML.

[17]  Shihong Huang,et al.  A qualitative assessment of the efficacy of UML diagrams as a form of graphical documentation in aiding program understanding , 2003, SIGDOC '03.

[18]  Jorge J. Gómez-Sanz,et al.  FAML: A Generic Metamodel for MAS Development , 2009, IEEE Transactions on Software Engineering.

[19]  Klaus D. McDonald-Maier,et al.  Kent Model Transformation Language , 2005 .

[20]  Leon Sterling,et al.  The Art of Agent-Oriented Modeling , 2009 .

[21]  Ardavan Ashabi,et al.  Agent-Oriented Software Engineering Characteristics and Paradigm , 2014 .

[22]  Radovan Cervenka,et al.  Agent Modeling Language (AML): A Comprehensive Approach to Modeling MAS , 2005, Informatica.

[23]  Jörg Dörr,et al.  EPC vs. UML Activity Diagram - Two Experiments Examining their Usefulness for Requirements Engineering , 2009, 2009 17th IEEE International Requirements Engineering Conference.

[24]  Brian Henderson-Sellers,et al.  Agent-oriented methodologies , 2005 .

[25]  Stephen Fickas,et al.  Goal-Directed Requirements Acquisition , 1993, Sci. Comput. Program..

[26]  V. Kumar,et al.  Goal-oriented or scenario-based requirements engineering technique - what should a practitioner select? , 2005, Canadian Conference on Electrical and Computer Engineering, 2005..

[27]  Michael Winikoff,et al.  Towards a next-generation AOSE methodology , 2013, Sci. Comput. Program..

[28]  Axel van Lamsweerde,et al.  Requirements Engineering: From System Goals to UML Models to Software Specifications , 2009 .

[29]  Michael Luck,et al.  Crossing the agent technology chasm: Lessons, experiences and challenges in commercial applications of agents , 2006, The Knowledge Engineering Review.

[30]  Lin Padgham,et al.  Using three AOSE toolkits to develop a sample design , 2009, Int. J. Agent Oriented Softw. Eng..

[31]  Mohammad NazmulAlam,et al.  Use Case Application in Requirements Analysis using Secure Tropos to UMLsec - Security Issues , 2015 .

[32]  Ivar Jacobson,et al.  Object-Oriented Software Engineering , 1991, TOOLS.

[33]  Scott A. DeLoach,et al.  Analysis and Design using MaSE and agentTool , 2001 .

[34]  Ivar Jacobson,et al.  Object-oriented software engineering - a use case driven approach , 1993, TOOLS.

[35]  Douglas A. Wolfe,et al.  Nonparametric Statistical Methods , 1973 .

[36]  Scott A. DeLoach,et al.  O-MaSE: a customisable approach to designing and building complex, adaptive multi-agent systems , 2010, Int. J. Agent Oriented Softw. Eng..

[37]  Lin Padgham,et al.  Scenarios for system requirements traceability and testing , 2011, AAMAS.

[38]  Leon Sterling,et al.  ROADMAP: extending the gaia methodology for complex open systems , 2002, AAMAS '02.

[39]  Lionel C. Briand,et al.  A Use Case Modeling Approach to Facilitate the Transition towards Analysis Models: Concepts and Empirical Evaluation , 2009, MoDELS.

[40]  Fausto Giunchiglia,et al.  Tropos: An Agent-Oriented Software Development Methodology , 2004, Autonomous Agents and Multi-Agent Systems.

[41]  Eric Yu,et al.  Modeling Strategic Relationships for Process Reengineering , 1995, Social Modeling for Requirements Engineering.

[42]  Jorge J. Gómez-Sanz,et al.  INGENIAS development kit: a visual multi-agent system development environment , 2008, AAMAS.

[43]  Scott A. DeLoach,et al.  Multiagent Systems Engineering , 2001, Int. J. Softw. Eng. Knowl. Eng..

[44]  Narasimha Bolloju,et al.  Benefits of supplementing use case narratives with activity diagrams - An exploratory study , 2012, J. Syst. Softw..

[45]  Clémentine Nebut,et al.  Visualization of Use Cases through Automatically Generated Activity Diagrams , 2008, MoDELS.

[46]  Claes Wohlin,et al.  Is it Possible to Decorate Graphical Software Design and Architecture Models with Qualitative Information?-An Experiment , 2002, IEEE Trans. Software Eng..

[47]  Jorge J. Gómez-Sanz,et al.  Understanding Agent-Oriented Software Engineering methodologies , 2015, The Knowledge Engineering Review.

[48]  Jörg P. Müller,et al.  Application Impact of Multi-agent Systems and Technologies: A Survey , 2014, Agent-Oriented Software Engineering.

[49]  Lionel C. Briand,et al.  An Automated Approach to Transform Use Cases into Activity Diagrams , 2010, ECMFA.

[50]  J. Royston The W Test for Normality , 1982 .

[51]  Massimo Cossentino,et al.  From Requirements to Code with PASSI Methodology , 2005 .