Skip to content

P5. Consider cloud suitability for each application individually

Be intentional and deliberate in considering the needs of specific applications or application components, using technical as well as business criteria in choosing between cloud-based and on-premises approaches.

Some applications are better suited to the public cloud than others, as a function of their architecture, supporting components, data needs, and usage volumes. A service owner, instead of blindly adhering to mandated uniformity, or the perception thereof, ought instead to be intentional and deliberate in considering the needs of specific applications.

It is also the case that an application may consist of multiple discrete components (web hosting, database, networking, storage, etc) of varying suitability for the public cloud. Some application components may have legitimate need to be on premises, or at least physically closer to their user base, but there may be other components of that same application that would work better in a cloud-hosted environment. In some cases, entire applications might be moved to the public cloud at once; in others, only components that are architecturally suitable might be moved; in others, none at all, depending on the circumstances. This principle admits all of these possibilities.

As a principle, we recommend considering an application workload - defined as the application, its data, networking, and everything necessary to deliver an enterprise function - as the unit of analysis; not, in isolation, the atomic computing tasks that compose it. Although specific components (say, for example, a supporting database) might be very amenable to migration to a managed cloud service, if the overall performance of that application is degraded (in the same example, via latency issues), or its availability and resilience are reduced due to components existing across different networks with increased potential for outage, then the efficiency benefits of moving specific components to the cloud may be outweighed.

The benefits to running in the cloud should exceed the costs of doing soP2, and this principle emphasizes that such a calculation ought to take place at the level of the application.