A fundamental promise of service oriented architecture (SOA) lies in the ease of integrating sharable information, processes,
and other resources through interactions among the shared components that are modeled as web services. It is expected that
not only the participating services are complex and have observable states, but the number of interacting services may be
also large. Prior work on choreographies (conversation protocols) all focuses on specifying how the interacting web services
should behave globally. Studies have shown that the relationships between global and local specifications of service interactions
could be rather intricate. In this paper, we formulate a framework consisting of logical and implementation levels. We survey
and discuss the technical problems and known results concerning service design, analysis and verification in this framework.