Building A Cloud Native Digital Enterprise using an iPaaS

Lakmal Warusawithana
7 min readOct 25, 2021

--

The CEO of Microsoft, Satya Nadella, repeats the message: “Every company is a software company. You have to start thinking and operating like a digital company.” In the journey of transforming into a digital company, either you have to build or buy the software. But the reality is there is no universal piece of software that fits every company. Emphasizing this reality where Twilio CEO, Jeff Lawson, recently said “Forget build vs buy, it’s build or die ‘’.

Over the last decade, software applications are evolved drastically and there is no single stand-alone application to deliver the required business functionality. It’s all about integrating different pieces of software. This has transformed every developer into an integration developer. Aligning with (digital) enterprises’ goals, developers have to innovate fast to deliver more value to their customers, with dramatically less effort.

In the winter of 2020, I published a reference architecture for a cloud native digital enterprise [1] where I described a vendor/technology-neutral reference architecture that can be implemented using different cloud-native platforms. Digital enterprise and its architecture have evolved in parallel with changes in how organizations operate and advances in technology, serving as the heart of the technology landscape, by connecting business and technology. In this two-part article series [2][3], Asanka Abesinghe and I discussed how an enterprise integration platform as a service (EiPaaS) can help organizations build future-proof enterprise architecture for an effective digital enterprise.

There are different iPaaS solutions in the current technology space, and they bring unique values and experience for building a cloud native digital enterprise. In this document, I will focus on, WSO2’s latest enterprise iPaaS, Choreo, and its unique values and the experience brought by building on top of Kubernetes by adhering to all cloud native engineering concepts.

Simultaneous low-code and pro-code

Low-code integration eliminates coding in most projects with a point-click-drag-and-drop interface. Simple, template-driven integrations cover a wider variety of integration use cases with ready-made connectors (e.g., Salesforce, NetSuite, Slack, Magento, Workday, Shopify, etc.). These take only minutes to get up and running.

Most low-code editors are built based on the abstraction from a domain-specific language (DSL) and if the developer edits the generated code, the abstraction will be lost. But the low-code editor in Choreo is the graphical representation of the Ballerina (a cloud native programming language) actual code runs once executed, without intermediate translations or abstractions. This allows developers to edit the generated code and the graphical representation in the low-code editor simultaneously where the developer always finds it more productive in developing complex integrations.

Figure 1 — simultaneous low-code and pro-code editoir

Figure 1 — Simultaneous low-code and pro-code editor

AI-assisted development

One of the key challenges that developers are facing is to identify performance and latency issues in the application development phase. Identifying and fixing them in the late stages (test/prod) in the development life cycles is slowing down the innovation and delivery pipeline. To overcome this challenge, Choreo has introduced real-time performance feedback as part of the application development experience. As the developer writes the code, the Choreo low-code/pro-code interface shows the estimated application performance, and they can also see throughput and latency curves if they need more information. Choreo uses historical observability data with a machine learning model of the performance characteristics of different IO operations and calculates the distribution of latency.

Figure 2 — AI-assisted throughput and latency predictions

Choreo also comes with AI-based code suggestions, such as what low-code elements could be used next in the composition based on the code, etc. This helps developers by reducing the time and effort put to browse through all the connectors and low-code statements. Choreo uses a deep neural network followed by short-term memory (LSTM) to learn how the user adds each visual element to compose new experiences.

Even though developers have battle-tested the applications, we commonly see performance anomalies after deploying applications into productions. Choreo uses a real-time multivariate time-series anomaly detector, where it monitors many time series of data that includes both applications and system metrics and is able to generate alerts to service owners through email as well as through a notification in the Choreo console.

If you are interested to find out more about how Choreo uses AI to improve the developer experience and productivity, I would recommend reading AI and Choreo article, written by Dr. Srinth Perera.

Integrated API ecosystem

Today, there’s an API for almost every software, service, or smart device. As a result, developers are increasingly creating new digital products and services by integrating them using APIs. Sametime, every organization wants to expose business functionalities as APIs to deliver an enhanced digital experience for consumers and partners. All of these together form a massive API ecosystem for developers and an API economy for organizations. Proper API management is essential to become successful in this API economy. Choreo full API lifecycle management helps API creators to develop, document, scale, and version APIs while also facilitating related tasks, such as publishing, monetizing, and promoting APIs.

Security is paramount when exposing business capabilities via APIs. The Choreo has all the capabilities to define security policies, manage tokens and protect APIs by enforcing them in the data plane. Also its built-in API quality of service (QoS) and rate-limiting help to productize and monetize API products.

Figure 3 — Built-in Full API Lifecycle Management

Built-in CI/CD pipeline and scalability

CI/CD is essential to speed innovation using customer feedback, making it possible to deliver an improved product or service on a daily or even hourly basis. After developer testing, Choreo application source code can be turned into a build and tested against the defined test cases. When all test passes, the application can be promoted into production through a builtin pipeline and it deployed into a Kubernetes cluster with all the scalability and security requirements.

Choreo developers will get all the necessary infrastructure to move their code from the low-code editor to production runtime that runs in a Kubernetes cluster. This eliminates spending time on building a platform and focusing only on your application, with simple abstractions for cloud native engineering.

Figure 4 — Built-in CI/CD pipeline

Deep observability and Business insights

Unlike monolith architecture, auditing and tracing are hard problems in decentralized architectures such as MSA. Having the necessary interceptors to collect logs, metrics, stats, and data is critical. Choreo has all the instruments to deeply trace application executions from the code statement level to the machine it runs in.

Choreo root cause analysis view presents logs, latency, and other telemetry data aligned by timelines, which helps developers to see all events in context to each other and detect patterns.

Figure 5 — Root cause analysis view

Choreo flame graph builds a stack trace using the application execution traces and is helpful in finding bottlenecks in the application.

Figure 6 — A flame graph in the diagnostic view

Obtaining meaningful business insights on how APIs are behaving is critical in every business. Built-in API observability tools and AI-powered decision-making engines play a significant role in providing vital business intelligence insights. Choreo has out-of-the-box API analytics dashboards and reports that can be used by both business and operations leaders to gain a 360-degree view of their digital business.

Figure 7 — API Analytics and insights

Closing thoughts

The digital enterprise enables companies of every sector to integrate and expose their business capabilities as APIs by the digitalization of the entire value chain in their digital transformation journey. Choreo, future-proof integration as a service platform and its cloud native engineering helps to create an effective architecture for a digital enterprise to increase productivity by having automation, AI-powered operations, and services.

Note: Choreo is in public beta now and you can signup and try it free!

References

[1] A Cloud-Native Architecture for a Digital Enterprise

[2] https://thenewstack.io/the-role-of-eipaas-in-enterprise-architecture-part-1/

[3] https://thenewstack.io/the-role-of-eipaas-in-enterprise-architecture-part-2/

[4] https://wso2.com/choreo/resources/ai-and-choreo/

--

--

Lakmal Warusawithana
Lakmal Warusawithana

Written by Lakmal Warusawithana

Senior Director Cloud Architecture at WSO2 Inc.

No responses yet