Abstract. Service oriented computing oers a new approach to programming. To be useful for large and diverse sets of problems, eective service selection and composition is crucial. While current frameworks offer tools and methods for selecting services based on various user-dened criteria, little attention has been paid to how such services act and interact. Similarly, the patterns of interaction might be important at a level other than that of the user-programmer. Semantic agreement between services, and the patterns of interaction between them, will be an important factor in the usability and success of service composition. We argue that this cannot be guaranteed by logic-based description of individual services. We have developed a simple but apparently eective technique for selecting agents and interactions based on evidence of their prior performance.