1. A computer-implemented method comprising: obtaining, by a cloud management system that includes at least (i) a cloud control module, (ii) a cloud transformation module, and (iii) a cloud instantiation module, constraint information associated with a software application; determining, by the cloud control module of the cloud management system and based on the constraint information associated with the software application, that a capacity of a cloud architecture is to be scaled by deploying instances of the software application across multiple cloud computing platforms that each are sourced by a different cloud computing platform provider; receiving, by the cloud control module of the cloud management system, capability information associated with a set of available cloud computing platforms; selecting, by the cloud control module of the cloud management system, a subset of the available cloud computing platforms based at least on the constraint information associated with the software application and the capability information associated with the set of available cloud computing platforms, wherein the subset includes at least two cloud computing platforms that are sourced by at least two different cloud computing platform providers; obtaining, by the cloud transformation module of the cloud management system, for each of the cloud computing platforms of the subset, code for an instance of the software application on the cloud computing platform, where the code is specific to the cloud computing platform; and providing, by the cloud instantiation module of the cloud management system, for each of the cloud computing platforms of the subset, (i) the code for the instance of the software application on the cloud computing platform and (ii) configuration information for configuring the cloud computing platform to execute the code.