Agent-oriented software engineering : Reflections on Architectures, Methodologies, Languages, and Frameworks.