
Designing Self-healing Software Using Role-Based Multi Agent System Approach
Author(s) -
- Falahah,
Kridanto Surendro,
Wikan Danar Sunindyo
Publication year - 2020
Publication title -
iop conference series. materials science and engineering
Language(s) - English
Resource type - Journals
eISSN - 1757-899X
pISSN - 1757-8981
DOI - 10.1088/1757-899x/879/1/012089
Subject(s) - computer science , executor , software engineering , field (mathematics) , multi agent system , software , software agent , agent architecture , software development , plan (archaeology) , human–computer interaction , distributed computing , systems engineering , artificial intelligence , engineering , mathematics , archaeology , political science , pure mathematics , law , history , programming language
Multi-Agent System (MAS) is one of the popular approaches on modeling behaviour and states in complex system, and has been widely implemented in various field, both on modelling computer-based system or social system condition. There are many approaches and ways on modeling MAS, such as Gaia, OORam, Tropos, and MaSE. In general, the approaches usually starting from defining agents then followed by defining the attributes and roles of each agent. The problem could arise when some agents can share the same roles, because the roles should be defined on each agent. This problem can be resolved by using Role-based MAS or RoMAS approach, that emphasized on defining the role then assigning agent into the defined roles. Using this approach, we can share the role among agents and the agents could build or designed separated from the roles. On this research, we designed the conceptual model for self-healing software that will be modeled using RoMAS. The model show organization of roles that has 3 main roles which are logger, controller and executor. We also identify the breakdown for each roles and it has 3 generic roles such as getter, comparator and setter. The generic roles have responsibilities to collect data, control the system and execute the recovery plan if the system fail. By defining the role, we can propose the architecture of self-healing software that can be independent from agents that would be assigned for executing the role.