With the announcement of the Work.com platform from Salesforce, many ISV partners have started to ask how the roll out of the Work.com managed package will impact their managed package.
To answer this, we brought together Krishna Tatta, CodeScience Director of Technology, and Brian Walsh, CodeScience CEO. Krishna gave an overview of how to safely integrate existing managed packages to any other managed package as well as showcasing common patterns partners adopt to accomplish this.
Understanding Dependency Between Packages
To understand why this is a concern for so many partners, you must first understand what a dependency between packages is.
There are two types of dependencies that ISVs must understand — installation dependency and functional dependency.
Krishna explains, “If you are building a managed package that has a hard dependency on a different managed package, and your customer tries to install your managed package without the other managed package installed, the customer will not be able to install your managed package.”
Installation dependencies occur when there is a reliance on another base package for your managed package to function. As you can see on the slide, Salesforce will showcase an error when trying to install.
“Functional dependencies are when there are certain features in your package that might need to reference components, data models, or code that belongs in a different managed package,” says Krishna.
She goes on to explain that there are patterns that ISVs can take advantage of the to avoid creating a hard dependency on another managed package, which allows your installation to go through and enables customers to use certain features of your managed package without needing the other managed package (this also enables ISVs to gracefully handle error messages, rather than disrupting your customers’ experience.)
Package Integration Patterns
Krishna showcases 6 different integration patterns through the rest of the webinar.
Patterns that don’t involve an installation dependency
Dynamic bindings to work around hard-installation dependencies
Cross-package UI-driven integration via Lightning Message Service channels
Patterns that involve an installation dependency
One extension package built on top of the base package
Dependency injection via interfaces and/or virtual contracts
The patterns that any ISV should consider are truly dependent on their managed package and the base package they are trying to integrate with.
For example, leveraging callable interfaces requires the base package developer to have engineered the managed package in a way that allows your managed package to use that technology.
Accelerate Your Work.com Strategy
Given the fast-moving nature of Work.com, we are providing ISVs three paths to stay up-to-date and accelerate their strategy with Work.com.
Subscribe to our Work.com Content — Stay up to date on the latest and greatest Work.com material produced by CodeScience.
Ask an Expert — For those who have the capacity to build, but need specific questions answered now.
Outsourced Product Development — For those who may not be able to keep up with aggressive deadlines needed to make it to market.
Learn more at http://codescience.com/work