To develop agent-based systems, one needs a methodology that supports the development process as common in other disciplines. In recent years, several such methodologies and modeling techniques have been suggested. An important question is, to what extent do the existing methodologies address the developers' needs. In this paper we attempt to answer this question. In particular, we discuss suitability of agent modeling techniques to agent-based systems development. In evaluating existing modeling techniques, we address criteria from software engineering as well as characteristics of agent-based systems. Our evaluation shows that some aspects of modeling techniques for agent-based systems may benefit from further enhancements. As we show, these aspects include distribution, concurrency, testing and communication richness. We also find space for (relatively small) improvements in aspects such as the refining of the models throughout the development process and the coverage and cons...