Architecting an enterprise system requires thoroughly understanding the current needs and building in mechanisms to handle the modifications that will inevitably occur as business conditions change. (This has been popularly referred to as "future-proofing" the enterprise.) To successfully adopt web services, the enterprise architect must determine whether to use them synchronously or asynchronously. Each model has its advantages and disadvantages, and neither is inherently superior. The challenge is to correctly identify the business needs and then match the technology to those needs.
Most asynchronous web services will probably be published in private repositories because to successfully adopt them requires working out many semantic issues between the sender and receiver, including the workflow and supported data formats. This is in contrast with the publicly available web services at public repositories such as XMethods and SalCentral, which are all synchronous.
The author would like to express his gratitude to the following people for their insights and help: Carl Sturmer and Fred Hart.