Low Code via OutSystems

LowCode platforms are a very important trend to catch up with. Check out this link. If you look at the Gartner Magic Quadrant, OutSystems is among the top LowCode service providers. The video below gives a good introduction to
the OutSystems platform with Service Studio as the development environment.

Within our company, OutSystems was first of all positioned as a platform to quickly generate a (mobile) user interface. As an example, you can create a self-service portal for customers over an internally hosted ERP system like SAP or Dynamics AX. OutSystems is however increasingly positioned as a platform to replace legacy systems. That raises all sorts of questions. After discussion with a colleague, I came to the conclusion that business-specific functionality is eventually custom built in C# as reusable components or reusable services. I would prefer services, but that would mean I still have to architect a service oriented solution. OutSystems doesn’t help me building services. In my opinion that means, that the functionality for replacing legacy applications via OutSystems is very limited. Contemplating about that, there are two counter arguments against this premise. First of all, OutSystems offers a lot of connectors, natively and as part of Forge and the Community. Secondly, you can perfectly use Azure components in conjunction with OutSystems. OutSystems doesn’t have to do the job alone.

We also discussed reusing a legacy database versus importing the database in OutSystems. My colleague proposed importing the database and mentioned the complicated data migration effort involved. Apparently you can’t just use Integration Studio for that. It’s not an easy job and I still wonder whether database administrators actually want a SQL Server OutSystems database instead of the legacy database in let’s say Oracle. Eventually, I saw the imported tables in Service Studio. But what happened to the stored procedures? Maybe I don’t know, because I’m an newbie.

Another question has to do with the positioning of OutSystems. Why would I recommend OutSystems over let’s say Mendix, Betty Blocks or Thinkwise? It’s very important to realize that OutSystems uses .Net under the covers. Although the quality/readability of the generated C# code is relatively poor, that makes OutSystems a natural fit for companies adopting a Microsoft-Unless strategy. Mendix, on the other hand, is Java based and strongly linked to IBM and SAP (with Mendix offering the SAP UI, not the core functionality). Betty Blocks looks like a “cowboy company” to me, raising questions about professionality and reliability. Thinkwise is also a smaller company, so …

Over the next few months, I will try and get some more hands-on knowledge of OutSystems. For now, I will finish with these three take aways.

  • You can download a freeware tool named Canvas to use in conjunction with OutSystems. Canvas intoduces a 4 layer model, so that you can categorize your OutSystems components. Discovery is another tool
    to discover and measure your architecture and understand how to improve.
  • Also take a look at the following Best Practices page: Link.
  • Finally take a look at this interview with OutSystems CEO Paolo Rosado.