When started Blue Canvas we were interested in doing something fundamentally different for Salesforce developers and admins. There are some great tools out there that can get you off of change sets and add some process to your Salesforce development flow.
But we knew too many companies that relied too heavily on Salesforce to not invest in an excellent workflow. Salesforce is the heartbeat of so many businesses. It tracks customer and financial information. It tracks supply chain and product information. When Salesforce isn’t working optimally the business isn’t running optimally. That is a big deal.
There is a reason businesses invest hundreds of thousands or millions of dollars in Salesforce. And yet we knew that the options for making their Salesforce development process significantly better were severely limited.
To make the Salesforce development process commensurate with the importance of Salesforce for many businesses, there needed to be a radical change. In 2016, we set out to be that change based on a few core principles:
- Source control needs to be front and center to the release process
- Admin and declarative changes need to be included in the release process
- Deployments and CI needed to be radically simplified to match the clicks not code philosophy of Salesforce
- Deployments needed to be much faster
Today we’re proud to introduce a new workflow called Work Items to help Salesforce developers and admins release their configuration metadata faster and more safely.
A New Workflow for Salesforce Developers
Work Items was born from watching users interact with Blue Canvas. Previously, you could create a Deployment Request by comparing differences between orgs and subtracting files that you did not want to include in the deployment. This works pretty well, but many of our customers wanted a better way to interface with their business stakeholders.
With Work Items, a business operations person or a developer creates a ticket in Blue Canvas that includes a description of what needs to be done. As a developer or admin makes changes to their Salesforce metadata to fulfill the Work Item, Blue Canvas automatically captures those changes in a Git repository as commits. Developers and admins can then attach those commits to the Work Item.
When they are ready to deploy they can run a validation to ensure their changes won’t break anything and that there are no merge conflicts. They can then submit the Work Item to another user on the team to review and deploy, ensuring a separation of duties and streamlining the code review process.
Instead of monolithic releases, Work Items allows Salesforce developers and admins to quickly make changes that are tied to features or units of business value. This makes auditing, rollback, and code reviews simple. By making deployments additive rather than subtractive it improves speed of deployment and allows you to deploy more cleanly without refreshing your sandboxes.
We knew too many companies that relied too heavily on Salesforce to not invest in an excellent workflow.
Business stakeholders now have a better way to track work that is being done and request new work to be done from their Salesforce team, speeding up the feedback loops between business requirements and Salesforce improvements.
Here are some answers to Frequently Asked Questions about Work Items. For more information reach out to firstname.lastname@example.org.
At a high level, what are Work Items?
Work Items are a new workflow based on how we’ve actually seen users behave in the wild.
They are a new way of conceptualizing your releases and units of work. I.e. you can start from an end goal of business value. Then you can make changes and associate those changes to that end goal
What are the benefits?
- Speed improvements through proactive addition rather than subtraction
- More intuitive user interface for admins, developers, and biz ops people alike
- Enables simple “Feature branching” concept for Salesforce
- Better way for businesses to interact with developers - they can see what requirements are open and which are in progress
- Proactive merge conflict resolution
- Push commits rather than files - you can push discrete units of work rather than entire files
- Squash commits into a single larger commit with a description, comments, logs etc.
What is a Work Item?
A Work Item is a unit of change in Salesforce. What that means will be different for different organizations. A Work Item has a title and a description at first. You could attach a JIRA ticket in the description for example. As you start to develop you will “pin” commits to the Work Item. Commits are actual code changes in Salesforce (declarative and Apex). At any given point in time you can look at a Work Item, read it’s description and see the progress that has been made on the Work Item.
How do I assign code to Work Items?
Each change you make on your connected Salesforce orgs are automatically committed to Blue Canvas. You can see these changes in real time in your History or Activity stream. Each commit has a checkbox on it. You can click the checkbox and assign it to your list of open Work Items. We call this “pinning”.
What do I do with a Work Item when it is finished?
When the Work Item is ready for review you can click Submit for Review. This will run merge conflict checks and a Salesforce validation. A release manager or colleague can see what changes are pinned to your Work Item, the result of the validation log and decide whether to approve it for deployment to the Integration Org.
You can have several Work Items going simultaneously and bundle them into a Release and push several Work Items at a time from your Integration Org into upstream orgs like UAT, QA and Production.
Can the person who creates a Work Item also deploy it?
During onboarding you can work with Blue Canvas to create various permissions for deployments into different environments. Useful for SOX compliance.
Does Work Items support merge conflict resolution?
Can I run tests before deploying a Work Item?
Not in the beta for Work Items but this is on the roadmap for the very near future.
What does Work Items Cost?
Work Items are included as part of the Blue Canvas platform at no additional cost!