Thursday, December 22, 2022

Salesforce Industries vs. Custom Salesforce Development: Benefits of OmniStudio

These solutions are customizable thanks to the tools of the OmniStudio Platform, giving a fresh look and functionality to standard processes like guided selling, CPQ, and more.

As an architect involved in a project requiring industry-specific designs should you use Salesforce Industries, or customize the existing Salesforce platform?

To help you settle on a plan of action, we want to share our experience. Let’s dig into the pros and cons of standard OmniStudio tools vs. functionality you can build with Salesforce platform customization (LWC/Apex).

OmniStudio Architecture

OmniStudio is a modular system assisting in designing reusable industry-specific solutions on Salesforce. As a result, complex processes are built with significant development time savings.

Let’s break down the standard components that make this possible: Flex cards, OmniScripts, OmniStudio DataRaptors, and Integration Procedures.

1. Flex Cards

FlexCards collect contextual data from multiple sources and display it for users viewing them on any device. They are configured in a breeze with the help of click-based components.

2. OmniScripts

OmniScript is a descriptive tool for guiding users through complicated sales or service processes. A drag-and-drop editor helps you design customer interactions by creating specific sequences with its elements:

  • Actions (updating data, sending an email)
  • Display (adding text, images)
  • Functions (formulas, warnings)
  • Groups (e.g., Blocks for grouping items for a one-page view or Type Ahead Blocks for autocomplete and search)
  • Inputs (data input or selection)

Action elements are also crucial when it comes to integrating data from Salesforce or other third-party sources. Calling APIs or OmniStudio Integration Procedures can help capture the required data saved in the JSON format.

Read more: Salesforce Screen Flow Vs Omniscript

3. OmniStudio DataRaptors

DataRaptors help manipulate the data. For example, a user might need to submit, change, and save new information. To enable this functionality, you turn to DataRaptors (Extract, TurboExtract, Load, Transform) that access and transform data from Salesforce objects or other external sources with OmniStudio Integration Procedures getting in the act.

Compared with Apex classes that perform similar operations, DataRaptors are less time-consuming and easier to maintain.

4. OmniStudio Integration Procedures

IP is a click-based process for retrieving information from third-party services without any additional user interaction. Server-side processing allows you to minimize client/server calls and speed up overall performance.

IPs can be called from an OmniScript, Apex method, or API.

OmniStudio Tools vs. Custom Development

Imagine that we need to build custom components on the Salesforce platform to control a third-party application from the homepage, like a stock or crypto market.

Note: there are prerequisites for implementing both (2h): Inspect API with Postman, prepare requests, save JSON responses.

Let’s compare the toolsets and time estimates required for this case:

There are two factors to bear in mind when comparing OmniStudio tools to custom platform development: time and scalability. OmniStudio provides you with time-saving shortcuts, simplifies complex development processes, and offers more opportunities to reuse components. It means that results can be reached quickly and with fewer resources deployed.

And that’s not all. There are other OmniStudio benefits worth considering:

  • Fast prototyping with minimized custom development (LWC/Apex/tests)
  • Quick conversion from an idea to the solution
  • Easy debug: the ability to inspect raw JSON data with an embedded procedure debugger
  • Obvious components structure
  • Codebase versioning
  • Conditional view of the components, reactive variables

On the contrary, LWC/Apex tools like lookup, datable, DTOs take significant time in the release process and most likely will not be reused in other features. However, when flexibility comes to the fore, custom development hits the target.

Having dealt with a good deal of Salesforce Industries projects, we have faced some of its challenges that are hard to spot at the outset.

  • For long-term projects, features should be carefully architectured. You should develop and maintain the naming convention for the OmniStudio components, as it can quickly turn into a mess
  • Previous component versions will not work anymore if not wrapped in a data pack it will be hard to revert the process to a specific moment
  • Some bugs are hard to find because of the growing complexity
  • Some features still work on Angular components, Angular skills are more specific than LWC
  • Most likely, you will not be able to replicate UX from customer mockups, despite the ability to override the components with LWC
  • Technical knowledge is a prerequisite for interacting with the components (Http Actions, formulas, conditional views)
  • Lack of reactivity – no handlers onClick, onChange, you can only use buttons and actions between Omniscript steps
  • No standard search by specific word/method for the whole OmniScript – a developer should track and update any upward changes

Summary

OmniStudio offers a set of built-in components for different industries, and these components can give a fresh look at standard processes like guided selling, CPQ, etc.

Potentially, it can fill the gaps in out-of-the-box Salesforce features, so you can definitely consider replacing parts in your Salesforce org with Vlocity solutions. You need to keep in mind, though, that the architecture has to be built with caution, and it doesn’t offer much scalability in the long run. As a result, the best choice is usually a well-thought combination of OmniStudio tools and custom development.

No comments:

Post a Comment

Understanding Wire vs Imperative Apex Method Calls in Salesforce Lightning Web Components (LWC)

Understanding Wire vs Imperative Apex Method Calls in Salesforce Lightning Web Components (LWC) Introduction: Salesforce Lightning Web ...