Disciplining Orchestration and Conversation in Service-Oriented Computing