All IT projects should begin with a specification of requirements. Cloud-based solutions are no exception. As you begin to define your solution’s requirements, consider the following common issues:
Data security and privacy requirements
Site capacity plan—What resources will the application initially need to operate?
Scalability requirements—What measurable factors should drive scaling events?
System uptime requirements—A cloud provider must be able to match your site’s up-time requirements.
Business-continuity and disaster requirements
Budget requirements
Operating-system and programming-language requirements
Type of cloud: public, private, or hybrid
Single- or multitenant solution requirements
Data-backup requirements
Client-device requirements—What devices, such as a desktop computer, tablet, or smartphone, must the application support?
Training requirements
Help-desk and support requirements
Governance and auditing requirements
Open-source software requirements—Some companies believe that open source–based cloud solutions reduce the risk of vendor lock-in.
Programming application-program-interface (API) requirements
Dashboard and reporting requirements
Client-access rights requirements
Data-export requirements—Make sure the cloud provider lets you export all of your data in the event that you need to cease operations or move the solution to a different cloud.
After you define your application requirements, discuss each in detail with potential cloud-solution providers. Make sure you clearly define all of your system requirements within the service-level agreement (SLA) you make with your cloud-solution provider.