METHODOLOGIES and software engineering for agent systems : the agent-oriented software engineering handbook (Kluwer Academic, 2004)