Agent-based architectural pattern by