The agent paradigm can be seen as an extension of the notion of (active) objects by concepts like autonomy and cooperation. Mainstream object-oriented modeling techniques do not account for these agent-specific aspects. Therefore, dedicated techniques for agent-oriented modeling are required which are based on the concepts and notations of object-oriented modeling and extend these in order to support agent-specific concepts. In this paper, an agent-oriented modeling technique is introduced which is based on UML notation. Graph transformation is used both on the level of modeling in order to capture agent-specific aspects and as the underlying formal semantics of the approach. Concepts of the concurrency theory of graph transformation systems following the double-pushout (DPO) approach are exploited in order to formalize the relation between global requirements specification by means of message sequence charts, and implementation-oriented design models where graph transformation rules ...