Abstract. Agent-based computing is a promising approach for developing applications in complex domains. However, despite the great deal of research in the area, a number of challenges still need to be faced (i) to make agent-based computing a widely accepted paradigm in software engineering practice, and (ii) to nt-oriented software abstractions into practical tools for facing the complexity of modern