Identify modernization requirements
- Last Updated: February 11, 2026
- 2 minute read
- OpenEdge
- Version 13.0
- Documentation
After completing the review of your existing architecture, you are ready to start identifying the tasks that you must perform to modernize your OpenEdge environment. Remember that making incremental changes is better than performing one large update, so you should plan for phased releases and iterate through the modernization tasks for each release.
Typically, these tasks include:
- Defining the end-user workflow, the UI screens that will be presented to the
user, types of client applications, the front-end technologies that will be used
to build the client applications, and so onNote: You might need to support both old and new UI screens and client applications for a period of time, to help your users adapt to the changes and resolve issues that may arise in the process of transitioning.
- Designing APIs that will be consumed by the UI screens and other
types of client applicationsNote: If you are supporting old and new UI applications concurrently, you may need to design two sets of APIs that sit on top of the same business logic. For example, one set of APIs may work with a business entity to send customer data to a desktop GUI application while the other set of APIs sends customer data in a RESTful way to a web UI application.
- Identifying the ABL classes and procedures that will be exposed through the APIs and analyzing which parts of the codebase can be reused
- Optionally, choosing frameworks that implement design patterns like the Common Component Specification
- Identifying databases and database tables that will be used by the ABL business logic
- Determining the type of database connection appropriate for your needs—shared-memory connections (where the application and database are on the same machine) or network connections (where the application and database communicate over TCP/IP)1
- Determining how context and application state will be managed
- Listing the requirements for a CI/CD pipeline, with quality gates and security vulnerability checks included in the process
- Evaluating load balancers and failover strategies, if high availability is a requirement
- Researching application performance monitoring tools that give you an overview of your distributed environment, with the ability to collect and track custom metrics, set alerts, and so on
- Choosing whether to deploy your application or parts of your application using Docker containers
At the end of your analysis, you should have a set of actions that you need to perform. These actions typically span across different components and roles, such as a database administrator setting up a multi-tenant database and a DevOps engineer working on a CI/CD pipeline. However, because the focus of this guide is the application, the remainder describes how to design and develop a modern OpenEdge application.