Fundamentals for Migrating to the Cloud