If you’re looking for a faster, more efficient way to develop and deliver custom mobile and web applications, there are a number of application platform alternatives to consider. For Salesforce.com customers, the company offers its Salesforce1 Platform for high-productivity application development that integrates with Salesforce data, along with other external data sources.
Released in 2008, Salesforce1 Platform was originally designed to help customize fields, implement simple workflows, and allow other services to connect to the Salesforce CRM solution. Today, Salesforce1 Platform has grown to cover visual customization capabilities, and allows its users to develop mobile apps on top of their base CRM services using a proprietary Java-like language called Apex.
Since 2001, enterprises have used OutSystems Platform to successfully build and deploy complex, mission-critical applications. OutSystems Platform is an application platform (PaaS) that makes it easy to rapidly create, deploy and manage enterprise mobile and web applications. Today, it’s used by hundreds of companies globally across more than 20 industries, providing a rich developer experience that’s extensible with standard technologies like Java, C#, HTML5 and more.
Salesforce1 vs OutSystems: At-a-Glance
Lock-in: Lock-in: relies on Salesforce for management, provisioning, etc.
Agnostic of platforms and data sources; customers can “detach” their apps as Java or .NET and keep 100% of their IP; mobile app componentry is open source.
Lock-in: Proprietary language (Apex).
No lock-in; apps built in OutSystems Platform do not depend on proprietary interpreters, runtimes, etc.
Seamless Salesforce integration
Cloud, on-premises, or hybrid.
Multiple disparate tools needed to build various aspects of apps (Process Builder, Schema Builder, App Builder, etc.)
Single environment for app creation, workflows, lifecycle management, and monitoring.
Progressing apps from development to deployment can be complex and labor-intensive.
“One Click Publish” publishes (or updates) mobile apps and web with a single click
Open With No Lock-in
Salesforce1 Platform apps are built with Visualforce, a web-development framework for hand-coding user interfaces with HTML-like markup. The framework uses Apex, a proprietary language modeled after Java, with its own Eclipse-based IDE. Apps are deployed on a multi-tenant proprietary infrastructure with no customer control over application data. Salesforce1 Platform imposes several limitations via governors that are monitored by the Apex runtime, which can make development an exercise in ‘limits engineering,’ where much programming time is spent working around (or within) the imposed limits.
OutSystems Platform is the most open high-productivity application development platform available today. It generates native .NET or Java applications. Application data in OutSystems is stored transparently in standard SQL Server or Oracle databases, ensuring customers always have flexibility and access to their data. It supports cloud, on-premises or hybrid deployments, supporting any combination of infrastructure or mix of cloud services (e.g. Amazon, Rackspace, etc.)
This deployment- and application-agnostic approach, combined with the open nature of the OutSystems Platform, means that customers always have complete flexibility to introduce new systems, or replace old ones, without having to completely re-write applications..
Integration With Existing Systems
Integration in Salesforce1 Platform is accomplished by writing Java/Apex code or via pre-built connectors supporting selected data sources provided by third parties. Maintaining these components over time can be troublesome due to a lack of integrated impact analysis and no way to monitor usage or performance impact. So when there’s an apparent bottleneck, or a dependency is severed, tedious troubleshooting is often required.
OutSystems Platform simplifies complex integration projects by automatically allowing you to integrate, reuse and visually design applications over existing SQL Server, Oracle, MySQL and/or DB2 databases. These connections can be extended to other databases as well.
Integrations with other types of systems such as ERPs, Salesforce.com, etc., can be obtained either by visually consuming/exposing web services or by extending OutSystems Platform with your own C# or Java code. All integrations are automatically monitored in a centralized management console, to make sure they do not represent a performance bottleneck in your applications, and the third party QoS levels are healthy.
Fit For The Enterprise
Salesforce1 Platform applications are usually simple data-entry screens or workflow systems. When a relatively complex application needs to be created, programmers typically resort to manual coding with a proprietary language that is limited by the platform's design patterns and limitations.
OutSystems has been successfully used for many years to design enterprise grade systems that support the mission-critical operations of organizations. Customers have deployed millions of process instances and applications that are still in production and being continuously changed after 10 years in use.
Performance and Scalability
OutSystems Platform enables applications to be scaled to accommodate any kind of load. It also provides the flexibility to determine where each application service should execute. This gives you an edge on high-load systems as you design your applications. For change management, OutSystems Platform includes a change and impact analysis engine combined with continuous integration and automatic deployment capabilities. This facilitates a streamlined continuous delivery model, even on large and complex systems.
Salesforce1 Platform controls where your code runs and the resources it can use. Performance monitoring is outside of the customer purview, with apps delivered in a multi-tenant architecture shared by all its customers and applications. Although this is scalable, customers have little control over their apps’ back-end performance, with no way to allocate resources if needed. Salesforce places limits on usage of the platform’s shared resources with ‘governor limits,’ which developers need to understand. These governors can limit the flexibility to design high-load bulk operations or complex calculations.
For change management, Salesforce1 Platform is simply not designed to cope with large and complex systems, and the iterative nature of today’s agile development methodologies. This can dramatically increase workloads for developers as applications grow in complexity.
Mobile and Web Development - User Interface and User Experience
Salesforce1 Platform apps have a standard UI with one or more page layouts that correspond to the app’s main objects. It is possible to build custom UIs using Visualforce and Apex code, although it’s a labor-intensive hand-coding process. In other words, there’s little to no productivity benefit, and it requires significant developer ramp-up time due to its differences from standard technologies.
OutSystems Platform focuses on the user experience, including:
Built-in support for grid layouts and visual design of responsive or mobile-specific applications, no coding needed;
Immediate preview, providing accurate previews across browsers and devices, with no need to re-compile and run the application;
Enhanced mobile design patterns support using standard HTML5 and CSS3, while also using native device controls;
Real-time user performance monitoring (with embedded in-app markup and feedback features) allows developers to get both analytics and subjective user input.
Hundreds of companies in 24 countries across 22 industries use OutSystems Platform to rapidly deliver custom, mission-critical applications while improving IT productivity and reducing their change request backlog. More and more companies are turning to OutSystems as the best alternative to quickly develop and deliver their custom and mission critical mobile and web enterprise applications. The more applications our customers deliver the more they appreciate the robust, complete and open OutSystems Platform.
The best way to understand OutSystems Platform is to look at examples of real-world deployments or .
If you are ready to try a new way to deliver and manage enterprise applications, to try OutSystems Platform for free.