Agent Roles: from Methodologies to Infrastructures