How does OutSystems provide scalability for multiple teams in large organizations?
Table of contents
- Server support for large numbers of developers working simultaneously
- Staging control for complex deployment scenarios
- User governance for application portfolios
- External authentication for IT users
In situations where developers need to collaborate in the same module, OutSystems offers everything that is needed to implement a continuous integration development cycle between developers. Learn more about how OutSystems enables all team collaboration.
For the scalability needed to support organizations with large numbers of developers in multiple teams and multiple departments building hundreds of applications with:
- Server support
- Staging control
- User governance for large application portfolios
- External authorization
Server support for large numbers of developers working simultaneously
The OutSystems architecture allows you to set up an environment where large numbers of developers can work simultaneously without being hindered by performance issues. You do this by isolating the services in charge of compiling the applications (deployment controller) and executing the applications (front-end server):
- In the OutSystems deployment controller server, enable multiple processors in the deployment controller server to ensure that simultaneous compilation processes do not affect processing capacity.
- Separate the OutSystems deployment controller server from the OutSystems front-end server so the application compilation process does not affect the execution of applications.
With these settings, 20 or more developers can be working on the same OutSystems server without any issues. For example, an OutSystems customer in the banking industry has 60 developers working simultaneously on an OutSystems development environment without any performance problems.
Staging control for complex deployment scenarios
OutSystems provides fine-grained control over deployment operations by providing the ability to choose individual modules to push. This enables someone to quickly push a small hotfix, instead of deploying the full app. In addition, deployment plans are validated to make sure that all dependencies are satisfied and apps are consistent.
User governance for application portfolios
In typical enterprises, it is very common for a given IT user to have different responsibilities and access levels for different applications. For example, an in-house developer might be allowed to change a application, but not allowed to open or reuse the "Intranet" application (where the master intranet data and services reside). And, another user might be able to open and reuse services from Directory and Intranet, but only change the "Vacations" application.
OutSystems Platform enables the configuration of such rules along with the definition of the roles and their permission levels across an entire infrastructure. The desired role can then be assigned to a user in the desired applications.
External authentication for IT users
Centralized user management systems such as Microsoft Active Directory ease operations activities and support complex security policies requirements, thus increasing the overall security of an IT infrastructure, and they are popular in large enterprises.
It is possible to leverage such investments with OutSystems. OutSystems modules (eSpaces) can be created to act as authentication providers for the OutSystems platform, implementing the specific authentication rules that an enterprise may require by simply complying with a well-defined API.
OutSystems includes by default - on top of its own internal authentication provider - integration with Active Directory and LDAP. These “authentication plug-ins” can be used as-is or as starting points for more complex scenarios. OutSystems offers support for user and password validation as well as Windows Integrated Authentication for LifeTime and Service Center.