OutSystems came to my attention at the Forrester IT Forum as they were suggested as a tool with good support for what Forrester calls Dynamic Business Applications. Founded in 2001 they have 100+ customers mostly in Portugal and the Netherlands but increasingly also in the US. Of these they identify 17 existing customers that have a “software factory” built around OutSystems’ Agile method and platform.
OutSystems’ focus is on web business solutions with fast time to market for custom applications that are adaptable, controlled and manageable. They focus on reducing the TCO of custom systems and on change-centric markets. Half their customers are SAP shops and most are building composite applications. They like to differentiate between the stable business elements (well supported by existing ERP, CRM and custom applications) and fast, continuous business change where customers need rapid development and change of a composite application based on the web. Five key areas are supported by the product called the Agile Platform:
- Integrate – An Integration Studio allows you to make code or legacy systems into services consumable by the rest of the OutSystems platform. It supports introspection for existing services etc.
- Assemble – Service Studio is a visual IDE for laying out business logic, flow, data structures, calls to services etc
- Deploy – Service Studio and Service Center are used to define where an application will run, to deploy it and to do QA (error and code checking, generation, compilation and deployment).
- Manage – Agile Manager and Sizing and Scoping tools allow you to log, and monitor deployed applications and their consumed services. In addition Agile project management capabilities are built into the platform.
- Change – the system allows you to capture user feedback from the running application (with their Embedded Change Technology) – users click on a hotspot to get a pop up window where they can say what’s change is required – and this feedback is captured as a screen shot and then managed as part of the ongoing Agile project management capability.
Within the Assemble piece they support if-then-else, calls to code, iteration etc. There is not much business process support and no support for declarative decision services (except in so far as you could integrate any decision service built with a Business Rules Management System). The environment is designed to be collaborative and is model driven allowing a certain amount of self healing as things are changed.
It’s an interesting development tool – reminds me somewhat of what CASE tools SHOULD have been when I worked on them back in the late 80s/early 90s. I do think that to be a platform for dynamic business applications they need to provide some tools that allow business users to collaborate more easily around decisions and processes and I am lookin forward to see what they do.