Skip to main content

Third-party integrations (DevOps)

The Thinkwise Platform supports using specialized third-party DevOps tools to automate DevOps workflows, gain deeper insights, and speed up deployments. This page contains an overview of proven third-party DevOps tools for each of the phases of the DevOps Lifecycle. They are either natively integrated or can be used in conjunction with the Thinkwise Platform.

For functional integrations, see Third-party integrations (functional).

Choosing the right tools

The tools listed on this page are examples of tools that can be used with the Thinkwise Platform.

The Thinkwise Platform only uses mainstream technologies, provides an extensive API, and supports many different platforms. Because of that, you can integrate virtually any other third-party tool throughout the entire DevOps Lifecycle, regardless of whether it is mentioned here.

For more information on how to integrate third-party tools, see Indicium OData API and deployment automation.

All tools have advantages and disadvantages, and which tools suit your needs depends on your unique situation and requirements.

Planning integrations

During the Plan phase, development teams and stakeholders define the project goals, gather requirements, and set up a development roadmap.

You can use the following planning tools:

Development integrations

During the Develop phase, you create the data model, process flows, and user interface of your application.

The Thinkwise Platform provides an integrated SQL code editor and a full-fledged version control system with advanced model-based branching and merging capabilities. It is not necessary to use external code versioning systems like GitHub or GitLab.

Creating business logic

For some aspects of your application, like complex business logic and dynamic modeling, you need to write SQL code. You can use the integrated code editor, but the Thinkwise Platform also supports using a different SQL editor.

You can use the following editors (and popular extensions):

Merging code changes in different branches is supported through integration with differencing and merging tools.

You can use the following differencing and merging tools:

The Thinkwise Platform also provides integration with LLM providers to generate models and code based on natural language descriptions. You can use LLMs in your applications to build features with generative AI. In the Thinkwise Platform this is used to, for example, analyze and review code, and to generate descriptions of model objects or code templates. Currently, OpenAI and Azure OpenAI are supported. See also Enable generative AI.

Integration development and testing

You can use the following API development tools for developing and testing integrations with third-party applications and services:

Debugging

The Thinkwise Platform provides integrated tools to aid you when testing and debugging your code or integrations in running Thinkwise applications during development:

Build integrations

During the Build phase, you compile your source code, run automated tests, and prepare the software to be released. On the Thinkwise Platform, this phase consists of generating and validating the definition, followed by generating and executing the source code.

These steps can be executed manually from the Thinkwise Software Factory development, but can also be automated through the Thinkwise Platform API.

You can use the following CI/CD tools to automate the build pipeline:

You can use most of these CI/CD tools throughout the entire DevOps process, not just during the Build phase.

Test integrations

During the Test phase, your application is tested thoroughly for bugs, regressions, and other issues. You can use both the built-in testing features of the Thinkwise Platform and third-party testing tools to ensure the quality of your applications.

For more information, see Introduction to testing

Release integrations

During the Release Phase, your application is finalized and prepared for deployment.

Some components of the Thinkwise Platform, namely IAM, the Indicium Application Tier, and the Universal User Interface, are usually pre-deployed and do not necessarily change with a new release of your application.

The application-specific components can be deployed from the Software Factory development environment or manually, but for production environments we recommend using Deployment Packages. With deployment packages, you can easily deploy applications to separate locations, customers, or tenants.

You can create a deployment package manually in the Software Factory or through the platform's API. You can also automate this step using the recommended build pipeline tools.

Deployment integrations

During the Deployment phase, your Thinkwise application is deployed to production environments. Key activities include configuring environments, deploying applications, and verifying deployments, in both on-premises or cloud environments.

Configuration management

In certain cases, for example, if you want to deploy your application to multiple tenants, you might want to automate the configuration of the infrastructure.

You can use the following configuration management tools:

  • TerraForm - manages infrastructure as code, allowing for automated provisioning of infrastructure, multi-cloud.
  • Azure Resource Manager (ARM) Templates and Bicep - define and deploy Azure infrastructure resources.
  • AWS CloudFormation - offers a way to model and set up Amazon Web Services resources using templates.
  • Ansible - automates application deployment, configuration management, and continuous delivery.
  • Chef - manages infrastructure as code, automating the setup and maintenance of servers.
  • Puppet - automates the delivery and operation of software, ensuring consistency across environments.

Intelligent Application Manager

You can download deployment packages for the IAM platform components from the Thinkwise Community Portal. Execute the packages using the included Thinkwise Deployment Center, either through the GUI or the CLI. To automate deployments, you can use the CLI together with deployment and release management tools, see Automate deployment.

You can use CI/CD automation tools for deployment and basic release management.

If you are working with complex environments, you can use dedicated tools that provide more advanced features, for example:

Application model and database

The deployment package of your application is created during the Release phase of the DevOps lifecycle. You can deploy it using the included Thinkwise Deployment Center, either through the GUI or the CLI.

Indicium and Universal GUI

You can download the runtime components of the Thinkwise Platform (the Indicium Application Tier and the Universal User Interface) from the Thinkwise Community Portal, and deploy them using the included Thinkwise Deployment Center, either through the GUI or the CLI.

You can also use the provided container images that you can download from the Thinkwise Container Registry. A container image is an application together with all the required dependencies wrapped together into a single image, which can be deployed and updated on many different platforms.

You can use the following tools for container deployment and orchestration:

All major cloud platforms provide services for running and managing container environments, like Azure Container Apps and Kubernetes Services, AWS App Runner, and Amazon Elastic.

Data migration and ETL

The Thinkwise Platform offers support for data migration from existing applications with the Thinkwise Upcycler. You can also import data via the Thinkwise GUI or API. For other data migration scenarios, you can use third-party tools.

Data migration via the Thinkwise Upcycler

The Thinkwise Platform provides all the tools to migrate the data from your old application to the Thinkwise application, including any data conversion and transformation required.

For more information, see Thinkwise Upcycler.

Data migration via the Thinkwise GUI or API

Sometimes, data migration scenarios include, for example, ISVs that need to import data from many different sources. The out-of-the-box import features of the Thinkwise GUI or API can often be used. Staging tables can help to clean up the data or to fix integrity issues.

Other data migration scenarios

In cases where the standard import does not suffice, you can use dedicated data migration or ETL (Extract Transform Load) tools that work directly on the Thinkwise database or through the Thinkwise API.

You can use the following data migration and ETL tools:

Operating integrations

The Operate phase focuses on maintaining and managing applications and infrastructure once they are in production. This includes incident management, performance tuning, capacity planning, and ensuring overall system reliability.

Common tools that are used in this phase are often provided by the used Cloud platforms. For container deployments, Kubernetes also plays a key role in the monitoring, scaling, and management of containerized applications.

Monitoring integrations

During the Monitor phase, both the application itself and the performance of the infrastructure it runs on are monitored continuously. That way, you can identify issues and gather information for potential improvements.

Backend

You can use the following tools to monitor Thinkwise applications and infrastructure:

Database

You can use the following tools to monitor and tune your database performance:

Frontend

You can use the following tools to monitor the frontend of your application:

  • Sentry - application performance monitoring & error tracking, integrated in the Thinkwise Universal GUI.
  • Miruni - submit and resolve visual feedback, bugs, and ideas.

Was this article helpful?