First, we have the ability to move services around as required by the architecture in support of the business. For example, we can move customer transaction processing from an on-premise application server, to an application server running within a cloud-based platform, such as infrastructure as a service or platform as a service. Since you deal with the application at the services level, they are location- and platform-independent, and it should not matter where they are hosted.
Second, we have the ability to leverage virtualization or address core applications as logical instances that may run on any number of physical server instances, providing better resource utilization and scalability. In essence, you are talking to the applications through the services interface. The location where the instance actually runs is transparent to you.
Finally, we have the ability to mix and match services for use within composite applications such as mashups or processes. This provides the agility aspect with the use of cloud computing architecture and SOA. Not only can you create applications processes quickly to solve business problems, but you can re-create them as needed, and thus provide the core value of agility. The use of cloud computing provides even more value since we do this using more cost-effective computing platforms.
Enough said. :-)
Those that look at cloud computing as separate and distinct from SOA are making a huge mistake. Indeed good cloud computing means leveraging SOA approaches, including how to approach the underlying architecture. Those that want to look at cloud computing as something new are making a huge mistake. Cloud computing is simply another set of architectural options within the context of SOA.