Flosum’s Integration with Salesforce DX

Introduction

At Dreamforce 2016, Salesforce announced their upcoming launch of Salesforce DX, the Developer Experience.  As you can see from the latest tech blogs and tweets, Salesforce DX is now live.  This newest initiative from Salesforce improves the developer experience by providing an integrated, end-to-end lifecycle designed for high-performance agile development.

Salesforce is one of the top-rated platforms chosen by enterprises that want to quickly build business applications. The rapid application development capability of the platform allows both experienced software developers and citizen developers to build applications that address their specific needs.  Salesforce has created a cloud-based, limited code environment that allows a broad group of people to modify applications, allowing organizations to be agile and keep up with changing business requirements.

Improving the Developer Experience

You may be wondering why Salesforce is so keen on improving the developer experience.  The answer is a common business driver, revenue.

Revenues in Cloud Computing are Sky Rocketing

The war is on. Microsoft, Amazon, and Google are investing billions of dollars in their cloud computing platforms as they quickly try to grab market share. Microsoft’s Azure platform will generate over $2.6 billion in revenue and is expected to have double-digit year-on-year growth. Amazon Web Services (AWS) has a run-rate of $15 to $20 billion and is anticipated to soon hit $50 billion. Google’s investment is expected to exceed $50 billion in an attempt to neutralize and surpass Amazon.  Google has placed such an emphasis on this revenue stream, that their board members directly oversee its cloud computing business.

It’s All About an Open Platform

Vendors are opening up their platforms to allow customers to build and customize apps. In 2016, Box opened their platform for developers to build custom apps using the content available within their platform. Workday began with a focus on providing pre-packaged applications for HR, finance, and manufacturing. In an attempt to reach a wider audience, Workday recently opened up its platform to allow their developers to build custom apps.  Other cloud computing vendors are following suit, providing a platform for developers to build and customize apps.

Salesforce released their 2017 Annual Report which reveals the revenue from Sales Cloud, Service Cloud, and App Cloud was $3B, $2.3B and $1.4 billion respectively. Combined, the Salesforce platform business is close to 17% of their total revenue. This revenue was generated from over 2000 applications hosted on AppExchange.

With a growth plan to move from $8.4 billion to $20 billion in revenue, Salesforce needs to grow at a faster pace in the larger market segments and capture revenue from non-CRM avenues. The total addressable market for the platform is much larger than the market size for CRM. To achieve their goal, it is imperative for Salesforce to attack this platform segment and grow the business in this area.

Capturing the ISV Market Segment

Microsoft Azure is an example of a successful collection of integrated cloud services. The platform has been widely adopted because of its extensive set of tools that allow developers and IT professionals to build, deploy, and manage applications. Building an application in a poorly designed platform is difficult and having the right developer tools is certainly an advantage in the competition among cloud computing environments. The success of Microsoft’s development tools has lead developers to build their custom apps on the Microsoft platform, thereby including the utilization of the platform and increasing Microsoft’s revenue on Azure.

To grow the App cloud business (platform business), Salesforce needs a strong application development environment to entice enterprises to build, license, and scale their businesses around the Salesforce platform. To that end, the corporate development team has launched a $100 million fund and started incubator programs to encourage enterprises to build new custom apps around Salesforce’s technology.  Additionally, Salesforce DX will likely be a source of incremental revenue for Salesforce.

Understanding Salesforce DX

What Salesforce DX Isn’t

Salesforce DX is not a product. Rather, it is a program with numerous initiatives, that cover, but are not limited to, release management, continuous integration, and packaging of Salesforce applications.

Salesforce DX is not a monolithic solution that offers an all or nothing approach. Customers can choose to leverage certain parts of the solution while leaving out parts that are not applicable. Salesforce DX can be used with other solutions and tools that are available in the marketplace.

What Salesforce DX Is

Salesforce DX is an initiative to improve developer productivity and offering the same tools that other technology providers supply to their developers. For example, it could be compared Microsoft’s tool sets such as Visual Studio and Team Foundation Server which provide complete and holistic business solutions.

In order to grow and further monetize the Salesforce platform, it is imperative for Salesforce to provide a solution for traditional developers to build code-intensive applications. Salesforce DX uses open source technology to help developers transition from other technology platforms.  Built around a powerful command line interface and open APIs, it offers the flexibility to integrate a variety of outside tools.

Integration between Flosum and Salesforce DX

Flosum is excited to support the launch of Salesforce DX. We believe that Salesforce DX promotes best practices for application development.

New Principles introduced by Salesforce DX

The key principles of Salesforce DX are aligned with the Flosum platform:

  • Source-Driven Development: Flosum has always embraced this principle and includes it as part of the solution. As team sizes grow and application development velocity increases, version control is imperative to ensure that developers are not overwriting each other’s code. A common version control across the team allows for collaboration, increases visibility between the team members, helps to keep the sandboxes in sync, and drives developer productivity. To that end, either Flosum’s native version control or the Git extension can be leveraged.
  • Rapid Testing and Development: The very nature of the Salesforce platform enables citizen developers, admins, and developers to quickly build and release applications. Although Flosum supports waterfall and agile methodology, we recommend that customers follow agile best practices to reduce testing and application development times. Flosum provides out of the box apex testing facilities to ensure that application code is tested Integration with Selenium tests ensures that the developers perform smoke and regression tests.
  • Open and Standard Developer Experience: Flosum completely supports integration with various open-source solutions such as the Git open distributed version control system and Jenkins for continuous integration and deployment. Additional supported solutions include developer tools such as Eclipse, MavensMate, Atom, and many others.

Changes to the Salesforce platform

Salesforce will be using its own technology to deliver solutions to its customer base. For example, as part of the Salesforce DX program, Salesforce will be leveraging its own API (metadata APIs and tooling APIs) which are currently in use by Flosum and other partners in the Salesforce ecosystem.

With this program, Salesforce will be able to develop and improve upon their technology. For example, Salesforce has promised to improve the way metadata and tooling APIs work. This will automatically help all the partners, including Flosum, which have built their solutions on these APIs. As the foundation improves, the entire solution will automatically provide a better user experience and improved usability to the end users.

New tools from Salesforce DX

This grid demonstrates how Flosum integrates with Salesforce DX:

The above integrations are available today, but the maturity of these solutions is highly dependent on Salesforce DX. Currently, Salesforce DX does not support all the components, many of which are not packageable.

Flosum is acutely aligned with the paradigms of Salesforce DX and tightly integrates with the new tools and features it provides.

Conclusion

Salesforce DX modernizes software development practices to allow for faster innovation.  It provides Salesforce developers with a variety of new features and tools. The open and integrated platform allows developers to build collaboratively and deliver continuously.

Salesforce is a fantastic cloud platform that continuously strives to improve the developer experience. However, it requires the right set of collaborative tools, one that provides for cloud governance, compliance, and security. This is the one principle that guides everything we do at Flosum to cement our customers’ success and experience in managing their Salesforce investment.  Flosum is the only native release management solution for Salesforce that integrates with Salesforce DX.