Embarking on a Salesforce implementation is challenging whether you start from scratch or you move your existing data architecture, processes, and so on from your old system to a new Salesforce org. And as important as what you are going to build is how you will do so, or, in other words, which implementation approach you will take.
Choosing the right approach is an essential part of conducting a successful implementation. There are 3 common approaches and each of them has both advantages and disadvantages you will need to consider to decide which one is best suited to your needs.
Big Bang Implementation
This is a type of approach in which all users of the old system, which can be any type of system including a Salesforce instance, move to the new Salesforce org on a given date. Big Bang implementations are typically more suitable for small to medium-sized companies, fast-paced startup environments or for any type of implementation with a small number of Salesforce users.
A Big Bang implementation generally offers a better return on investment, because it is much faster and cheaper than any other option. However, it also entails a high risk, as overlooking a small detail could cause an issue that ends up impacting all users, and rolling back might not be possible. Therefore, conducting end-to-end testing very rigorously is critical when working with this type of implementation.
Support and training plans will be quite intense initially, while all users are getting used to the new Salesforce org at the same time, but the process to manage change will be shorter overall. After that, general training and support will be more efficient and focused solely on the new Salesforce org.
From the software architecture point of view, a Big Bang approach is suitable when the different modules of the old system are very interdependent and/or you are not going to implement a lot of customisations to your current process.
|Fastest implementation time
|Cheapest implementation approach
|Rollback might not be possible
|Shorter change management process
|Intense initial support and training
In this approach, the full Salesforce implementation is divided into several phases by which all users gradually switch in groups to the new system. Phases can be defined, for instance, by business unit or by geography. Phased implementations are typically more suitable for complex organisations and/or large companies operating in several markets.
In a Phased implementation, some users will move sooner than they would have with any other approach, so some business units or geographies will get an earlier ROI. However, a full Phased implementation will be conducted over an extended period of time and, if go-live dates are postponed, which is quite common in long projects, users might get a project-never-ends feeling.
A Phased approach helps minimize risk, as dealing with a smaller scope always makes the testing process easier and it is also less likely that any details are overlooked. Issues can still happen, but they can also be fixed more easily within the following phase.
As phases are completed, the implementation team gains more knowledge and experience on the specific project and the implementation process improves as the project moves on. For example, experience might help when certain tasks, like a data migration, are repeated in the following phase.
In Phased implementations, managing change is easier, as a smaller group of users is onboarded at a time. On the other hand, the following phases might include changes that affect already onboarded users in some way and they could feel that their new working environment is often changing. A certain degree of support and training will need to be provided for both the old system and the new Salesforce org, as there will be users in both of them.
From the software architecture point of view, a Phased approach is more suitable when the old system is modular and when the design of the new Salesforce org is going to be quite different from that of the old system. Most modules are usually interconnected and relevant information flows along the processes built in the system. Due to such data dependencies, temporary integrations of some sort will be needed from the old system to the new Salesforce org only to avoid information going missing along the process. Such integrations consume time and resources, just to be removed right after the implementation is finished.
Phased and Big bang implementations are the most common implementation approaches.
|Lower risk than big bang
|Extended implementation time
|Easier change management process
|Temporary integrations needed
|Implementation process gets smoother
|More expensive than Big Bang
In this type of implementation, both the old system and the new Salesforce org run in parallel during a specific period of time.
Parallel implementations are faster than the Phased approach and slower than a big bang implementation, but they also have the lowest risk. In the event of a big issue, rolling back to the old system is much easier. However, this approach is also the most expensive (and probably the least popular due to that), because both systems are fully operational for a given period of time.
In a Parallel implementation, getting users to enter and update real data in both systems should definitely be avoided. Both systems could be running, for example, when the new Salesforce org is just being used for training purposes and users are still working in the old system, or when users have moved to the new system, but they still use the old system in read-only mode to access the original data for some time after the switch.
|Faster than Phased
|Slower than Big Bang
|Rollback is much easier
Because each project and each company are different, no one-size-fits-all approach exists for all Salesforce implementations. Apart from speed and cost, many other critical factors must be considered to pick the right type of approach for your implementation.
You can use one of the approaches previously explained, but you can also use more than one and take a Hybrid approach to your Salesforce implementation if that is more suitable to your needs. A good example would be using a Big Bang approach to implement Salesforce in your main market or business unit, and then a Phased approach for the remaining ones.