Modern App Development with Low and Pro Code Patterns
Delivering modern apps requires embracing a combination of no code tools and programmable code to better leverage diverse skill sets on your team, as well as to deliver solutions that can scale with confidence to meet any demand.
The Salesforce Platform is flexible, and it allows for these combinations because it’s designed to assemble low code elements that are easily extensible with pro-code and AppExchange solutions. In addition, an Event Drive Architecture (EDA) decouples them, which allows each to operate independently while being developed and deployed on a single platform.
It’s been a few weeks since we published our first article on Event Driven Architectures describing popular techniques for extending the Salesforce Platform with simple design patterns deployed on Heroku. Since then, we’ve published a couple other posts covering multi-org visibility and cross-org synchronization, two common problems our customers face.
These patterns are easily assembled building blocks using an EDA and modern application development techniques that combine low-code and programmatic development. Wade Wegner, SVP, Developer Platform at Salesforce, discusses the growth of modern app development:
“Modern app development is a philosophy that leads with low-code tools and capabilities, but with native ways to let the developer easily tap into pro-code (i.e. writing code) tools to extend and customize the apps they’re building. And for this modern app development approach to work, both the low-code and pro-code tools should live within the same application model, which lets the developer toggle back and forth as needed and avoid the need for time-consuming and expensive integrations.”
To show the possibilities for creating business apps with a modern app dev experience, we’re sharing a set of architecture solution patterns that expand the power of Salesforce Platform to all developers. The response to our recent patterns articles has been great, with many customers looking to use these patterns in a range of different deployment scenarios.
Extend Flows with Heroku Compute
This simple pattern takes advantage of common Platform features to expose Heroku apps to low-code Flows, enabling declarative builders to use customized business logic from customer-facing apps. Here we describe how Heroku apps can be registered as External Services via their API specification and then accessed directly via Flow Actions where Named Credentials and API tokens extend the trust boundary out to the app.
Multi-org visibility for Work.com
In this article we describe how data from multiple Work.com Salesforce organizations can be aggregated into a single view for reporting and analytics. There is an AppExchange Labs Package that easily configures the solution for work.com orgs.
This is a generic solution that works with any Salesforce instance based on any Salesforce objects, and easily virtualizes your data into any Salesforce instances to take advantage of features such as the drag-and-drop report builder, list views, and other Salesforce functionality.
Cross-org data synchronization
In this article, we describe the generic problem of synchronizing data across multiple Salesforce Orgs using Heroku Connect, and detail a variety of topologies that cover most user deployments. It addresses important design considerations such as data ownership, overlap and transformation as well as bi-directional synchronization and error handling to help avoid common missteps that we’ve seen with cross-org integrations.
These patterns provide starting points for solutions that many developers might overlook as they explore ways to solve their business problems. And, as companies worldwide look to accelerate their digital transformation – proven, reliable patterns like these will help them deliver lower cost solutions more quickly. We’ve got a few more posts coming up in the next few weeks with more examples showing you how to solve common problems with Salesforce using event-driven patterns for modern app development.
At DreamTX, there are many sessions with demos that use these patterns and are worth attending. There will also be Platform experts available to answer any question you may have on how to deploy any of these patterns. I hope you have some time to attend.
About the author
Chris Marino is on the Salesforce Platform Product Management team responsible for the Heroku Compute and Private Spaces offerings. Prior to Salesforce, Chris was at Cisco and several other networking companies developing solutions for routing and network policy for IaaS network and Kubernetes cluster deployments.