Overview

OutSystems is a low-code development platform used for accelerating the creation and deployment of enterprise applications. The platform aims to reduce the time and resources required to build software by providing a visual development environment, enabling developers and cross-functional teams to design, develop, and deliver applications without extensive manual coding. OutSystems is suited for organizations looking to modernize existing legacy systems, develop new customer-facing digital experiences, or create internal operational tools to improve business processes.

The platform supports the full application lifecycle, from initial design and development through deployment and ongoing maintenance. It includes integrated capabilities for managing application portfolios, automating DevOps processes, and ensuring application performance and scalability. Developers can extend the platform's standard low-code capabilities using traditional coding languages like C# or Java when custom logic or specific integrations are required. This hybrid approach aims to balance rapid development with the flexibility to address complex requirements.

OutSystems offers two core product lines: OutSystems Developer Cloud (ODC) and OutSystems Platform. ODC is a cloud-native platform designed for deploying applications on cloud infrastructure, leveraging containerization and microservices architectures. The OutSystems Platform offers deployment options for both on-premises and cloud environments, providing flexibility based on an organization's infrastructure strategy. The platform's emphasis on visual development and integrated tooling is intended to streamline development workflows and facilitate collaboration among development teams.

Target use cases include the modernization of mission-critical applications, creation of responsive web and mobile applications, development of enterprise portals, and building process automation tools. Organizations utilize OutSystems to address challenges such as slow development cycles, technical debt from outdated systems, and the demand for rapid digital transformation initiatives.

Key features

  • Visual Development Environment: Provides a drag-and-drop interface for designing user interfaces, data models, and business logic, reducing the need for manual coding.
  • Full Application Lifecycle Management: Supports development, testing, deployment, monitoring, and maintenance within a single platform.
  • Integrated DevOps: Includes built-in tools for continuous integration, continuous delivery (CI/CD), and automated deployment processes, documented in the OutSystems application deployment guide.
  • Scalability and Performance: Designed to build applications that can scale to enterprise-level demands, with options for cloud-native deployment via OutSystems Developer Cloud.
  • Extensibility: Allows developers to extend platform capabilities with custom code (C#, Java) and integrate with external systems, providing flexibility beyond visual components.
  • Mobile and Web Development: Enables the creation of responsive web and native mobile applications from a single codebase.
  • Security and Compliance: Incorporates security features and adheres to standards such as SOC 2 Type II, ISO 27001, GDPR, and HIPAA.
  • AI-Assisted Development: Offers features like AI Mentor for code quality, security, and performance recommendations.
  • Pre-built Components and Templates: Provides a library of reusable UI components, connectors, and application templates to accelerate development.

Pricing

OutSystems offers custom enterprise pricing based on specific organizational needs and scale. A free edition is available for personal environments. For commercial use, pricing is determined through direct consultation.

Edition Description Availability
Free Edition For personal use and learning; includes a personal cloud environment. Available
Standard Edition Entry-level paid tier for commercial use, offering core platform features. Custom pricing
Enterprise Edition Designed for large organizations with advanced requirements for scale, security, and support. Custom pricing
OutSystems Developer Cloud (ODC) Cloud-native platform for modern application architectures. Custom pricing

For detailed pricing information and to obtain a custom quote, prospective customers should refer to the official OutSystems pricing page and contact their sales team.

Common integrations

OutSystems supports integration with a range of enterprise systems and services. The platform provides built-in connectors and mechanisms for custom integrations.

  • Databases: Connects to various relational databases like SQL Server, Oracle, MySQL, and PostgreSQL.
  • REST/SOAP Web Services: Consumes and exposes web services, enabling integration with external APIs and microservices.
  • SAP Systems: Offers connectors for integrating with SAP ERP and other SAP solutions, as detailed in the OutSystems documentation on SAP integration.
  • Salesforce: Integrates with Salesforce CRM for data synchronization and extending Salesforce functionalities.
  • Microsoft Azure & AWS Services: Connects with cloud services for storage, AI/ML, and other infrastructure components.
  • Authentication Providers: Supports integration with identity providers like Active Directory, Okta, and Azure AD using standards like SAML 2.0.
  • Enterprise Resource Planning (ERP): Integrates with ERP systems for managing business processes. For example, similar low-code platforms like ServiceNow also offer IntegrationHub for enterprise systems.
  • Customer Relationship Management (CRM): Connects with CRM platforms to manage customer interactions and data.

Alternatives

  • Mendix: A low-code development platform from Siemens, offering visual development and cloud-native capabilities for enterprise applications.
  • ServiceNow App Engine: Part of the ServiceNow platform, enabling low-code application development to extend IT workflows and build custom business applications.
  • Microsoft Power Apps: A suite of apps, services, and connectors, along with a data platform, to build custom business apps without writing code.
  • Oracle APEX: A low-code development platform that enables you to build scalable, secure web and mobile apps, with native support for Oracle Database.
  • Appian: A low-code platform for building business process management (BPM) and case management applications, emphasizing workflow automation.

Getting started

To begin developing with OutSystems, the initial step typically involves creating a personal environment through the OutSystems Free Edition. This provides access to the visual development environment, known as Service Studio, and a cloud-based runtime environment for deploying and testing applications. The process generally starts with downloading and installing Service Studio, then connecting to the provisioned personal environment.

A basic "Hello World" application in OutSystems involves creating a new application, defining a screen, and adding an expression widget to display text. This is done visually without writing traditional code for the core display logic.

1. Sign up for a Free Personal Environment: Navigate to the OutSystems website and register for the Free Edition to get access to a personal cloud environment.

2. Download Service Studio: Install the OutSystems development IDE, Service Studio, on your local machine.

3. Connect to Your Environment: Launch Service Studio and connect to your personal environment using the credentials provided during registration.

4. Create a New Application: In Service Studio, select "New Application" and choose a template (e.g., "Web Application" or "Mobile App"). Give your application a name.

5. Add a Screen: Within your new application, right-click on the "UI Flows" folder (for Web) or "MainFlow" (for Mobile) and select "Add Screen." Choose a basic screen template, such as "Empty."

6. Design the Screen: Drag an "Expression" widget from the widget toolbox onto the newly created screen. In the properties pane for the Expression widget, set its "Value" to a simple text string like "Hello, OutSystems!"

7. Publish the Application: Click the "1-Click Publish" button (green play icon) in Service Studio. This compiles and deploys your application to your personal environment.

8. View the Application: After successful publication, a browser window will typically open, displaying your newly deployed application with the "Hello, OutSystems!" message.

// Example of custom C# extension (for advanced scenarios)
// This is not part of the standard 'Hello World' visual development flow,
// but illustrates extensibility for custom logic or integrations.

using OutSystems.HubEdition.RuntimePlatform;
using OutSystems.HubEdition.RuntimePlatform.Db;
using System;

namespace OutSystems.NssHelloExtension
{
    public class CssHelloExtension : IssHelloExtension
    {
        public void MssGetHelloWorldMessage(out string ssMessage)
        {
            // This logic would be implemented in an extension module
            // and then exposed as a server action to the OutSystems visual IDE.
            ssMessage = "Hello from C# in OutSystems Extension!";
        }
    }
}

The provided C# code snippet is an example of an extension that could be developed and integrated into an OutSystems application. While the core platform emphasizes visual development, custom code can be used to extend functionality or integrate with specific systems when needed, reflecting the platform's hybrid approach to development. Further details on creating extensions are available in the official OutSystems documentation on extending logic.