Overview and Architecture : Steps to modernize an OpenEdge application

Steps to modernize an OpenEdge application

For OpenEdge, the Kendo UI Builder includes components from several Progress products that you use in an iterative fashion to modernize an OpenEdge application as follows:
1. Ensure that your application UI is separate from its business logic, with the ABL business logic tailored to run on an OpenEdge application server. The OpenEdge Reference Architecture provides a methodology for accomplishing this. For more information on the OERA, see OpenEdge Getting Started: Guide for New Developers.
For more information on tailoring ABL business logic to run on your choice of OpenEdge application server, see the overview and application development documentation for:
*Progress Application Server for OpenEdgeProgress Application Server for OpenEdge: Introducing PAS for OpenEdge and Progress Application Server for OpenEdge: Application Migration and Development Guide
*OpenEdge AppServerOpenEdge Getting Started: Application and Integration Services and OpenEdge Application Server: Developing AppServer Applications
You can then deploy and run your ABL application with its UI running in a separate ABL client that accesses its business logic as an ABL application service.
2. Implement a new service interface for your business logic in the form of an OpenEdge Data Object Service. An OpenEdge Data Object Service provides web access to your ABL business logic through one or more OpenEdge Data Objects implemented as ABL Business Entities. ABL Business Entities are annotated ABL class or procedure-based objects that provide a standard web interface to your data and business logic. An OpenEdge web app can then access this standard interface using a JavaScript Data Object (JSDO) that hides the underlying details of the network request and response protocol from the app. A Data Object Service then manages all web access between an instance of the JSDO in the web app and a given Data Object running on the OpenEdge application server.
For an overview of OpenEdge Data Object Services and how to implement ABL Business Entities as Data Objects, see the information on Data Object Services in OpenEdge Development: Web Services.
For information on creating, editing, testing, and deploying Data Object Services for both PAS for OpenEdge and the classic OpenEdge AppServer, see the Progress Developer Studio for OpenEdge Online Help and the administration documentation for each OpenEdge application server.
Note: Also see the New Information documentation for recent service packs of your supported OpenEdge Release.
For information on the JSDO and how it can be used in web apps to access Data Object Services, see the Progress Data Objects: Guide and Reference
3. Design and build the OpenEdge web app that contains the web UI for your OpenEdge application using the Kendo UI Designer. This is a Electron-based, Kendo UI Builder tool that can optionally install into your OpenEdge environment. The Kendo UI Designer is thus an on-premise, visual design tool that accelerates web app development based on selected Data Object Service meta-data and UI templates for supported Kendo UI components.
The initial result is a set of UI meta-data that you can customize in a prescribed fashion. You can then invoke the integrated Kendo UI Generator to build and preview the web app directly from this meta-data in your default web browser, allowing you to test the UI and its data access from within the Kendo UI Designer itself. A Node.js-based webpack-dev-server continuously updates your initially built and previewed app as you save further changes to it in the Designer using the Kendo UI Generator or in customizable source code using your choice of editor.
The present documentation provides an overview of the Kendo UI Designer and how to work with it to build and test a web app with access to OpenEdge data and business logic. For more detailed information on using the options of the Kendo UI Designer, see Kendo UI Builder by Progress: Using the Kendo UI Designer.
4. Optionally, use Progress Developer Studio for OpenEdge to deploy each stage of completion for both Data Object Services and the client OpenEdge web app. In Kendo UI Designer, you can configure the web app location so the Kendo UI Generator automatically builds the web app within a Web UI project of Developer Studio. From this project, you can deploy the app to a development instance of PAS for OpenEdge to test general web access. Ultimately, you can deploy the completed web app for release on any production web server of your choice.
For a brief walk-through of building an OpenEdge application, end-to-end, with the modern web UI provided by an OpenEdge web app, see Kendo UI Builder by Progress: Sample Workflow.