Read about our update schedules here.

Introduction

A Salesforce solution that is Adaptable evolves with the business. A solution well-architected to be Adaptable is resilient and composable.

Resilient solutions handle change well.
Composable solutions adjust quickly and with greater stability.

The need for business change can come from many sources: customer requests, market or industry disruption, or digital transformation opportunities. Sometimes changes are small. Sometimes, changes are profound. At the most profound levels, a change can require businesses to rethink and shift their core reasons for operating and to reevaluate the what, how, and where of their customer offerings. Architectures that are Adaptable don’t just help businesses to survive and recover from disruption, they create the potential for businesses to innovate and thrive in times of profound change.

Creating systems that are Adaptable requires deeply creative and precise architectural thinking. You have to start with an accurate understanding of the near-term and long-term trajectory of the business. As you evaluate individual implementation details, you have to consider impacts along multiple dimensions and levels of detail. You have to think in terms of people, processes, and technology. And you have to simultaneously predict impacts at macro and micro levels — for the current state and any future states.

The following sections provide more in-depth guidance for each of the core behaviors of an Adaptable solution architecture.

Adaptable Overview

Resilient
Resilient solutions handle change well. Resilient architectures can return to expected behavior and operations quickly and in predictable ways.
Application Lifecycle Management Incident Response Continuity Planning
Release Management
Environment Strategy
Testing Strategy
Time to Recover
Ability to Triage
Monitoring and Alerting
Business Continuity
Technology Continuity
Composable
Composable solutions adjust quickly and with greater stability. Composable architectures are built in units that operate gracefully with one another, and can be swapped in and out of service.
Separation of Concerns Interoperability Packageability
Functional Units
State Management
Messaging and Eventing
API Management
Loose Coupling
Dependency Management