In this second installment of my series on Oracle Forms and Reports, I’ll explain why Oracle APEX is ideally suited for Forms Modernization (My first blog was about Forms Challenges). APEX is a web-based Rapid Application Development tool that comes with the Oracle Database. If you already run an Oracle database, it is there for your company to use, right now, without extra licensing fees. Forms-APEX similarities run deep. This is why APEX represents the most cost-effective method to bring your Forms and Reports applications into the 21st century.
The Backbone and the Thorn in the Foot
Legacy Systems like Oracle Forms and Reports can be both the backbone and the thorn in the foot of an organization. On one hand, they’ve evolved over time to fit the needs of order processing, shipping, finance, and more. In many organizations, they are a model of efficiency. On the other hand, connecting them to the outside world and the needs of the modern business is increasingly difficult, sometimes impossible.
Various options have been made available to modernize or replace Forms systems over the years. Among them:
-Open Source Technology
Some have chosen to replace Forms with open source technology. For example, the LAMP approach: Linux, Apache, MySQL, PHP. There is no integration with Forms and you are starting from scratch. Open source is free and without licensing fees. However, long-term support on these platforms is a question mark. Even the most popular open source software risks being superseded. The result can be fewer upgrades and dwindling support.
It’s true that some open source software is supported by large manufacturers. For example, Oracle supports MySQL. Overall, however, open source tools often lack structure. The understanding and use of these tools will often depend on how well the specific technology suits the developer.
-ERP Systems (SAP, Oracle E-Business Suite, JD Edwards etc.)
These standardized platforms became very popular in the early 2000s. They’ve helped businesses grow, but they didn’t necessarily grow with all business needs. Companies using these systems are increasingly calling on software developers to extend their ERP’s capability. Each division of a large company can end up having custom needs outside the ERP’s parameters. This could come from managing new products, new technologies, new processes. ERPs may cover 80%-90% of your application needs, but that remaining 10%-20% is often what makes your business unique.
All in all, the associated costs of ERPs are high. This can make sense if your business functions are covered by the new system. In my experience though, there is always something of Forms which isn’t. When this happens, we now use APEX to extend the ERP to integrate the necessary functionality.
-Object Oriented Development Technology
Some Businesses change over to a different technology entirely, such as Java or .NET. But does your development team have the time and talent to convert to a completely new application framework? Can your company get safely through such a transition? If not, it can become a job for 3rd party technologists with the costs that this entails.
Many companies have application suites with Forms-like behavior created for them by 3rd parties using a combination of technologies. Just as with open source technology, you don’t know how that will turn out for you in the long term. You might end up with a system that is just as difficult to maintain as your Forms system was.
All of the approaches above are basically “From Scratch”, where Forms and its efficiency get put aside. This where the Oracle APEX approach differs. It isn’t from scratch. In fact, it allows you to reuse much of what your company has painstakingly developed over the years with Forms.
Forms: the Thick Database Paradigm
The often-recommended best-practice approach with Forms was to have as much of the code as possible reside in the database, including business functions and security. This can make migration or extension work with Forms easier. In this paradigm, Forms acts as a front-end to all this functionality while most of the business logic resides in the Database. This is the thick database Paradigm. This approach is secure, centralized, easy to maintain, easy to deploy, and makes for good performance. Forms is not always set up this way but it can be transferred fairly easily during a migration. Oracle APEX offers tools for such a transition.
Another advantage of this paradigm is that you can reuse the same code. For example, if you have 15 order taking screens, you can have them all make the same call from the same code in the database. You won’t have to develop code for 15 different order-taking screens. This not only makes development easier, but it also makes for better application performance.
This is what Forms-APEX similarities stem from. APEX shares this exact same paradigm and much more.
APEX: Same Paradigm, Same Database Model, Same Programming Language
Forms is based on a relational data model, meaning most application screens or blocks of information are based on tables in the database. Often, these are management applications: Client management, order management, PL Management, etc. APEX uses this same relational data model.
Another similarity: Forms development is procedural and not object-oriented such as with Java or .Net. So is APEX. Forms and APEX even share the same coding language, PL/SQL. There are, of course, many new functions in APEX, but the base is still the same. APEX even allows you to reuse much of the code you already have in Forms (that’s right, EXACTLY the same PL/SQL code!).
Because of these similarities, your Forms developers will feel at home using APEX very rapidly. They’ll have a fast, efficient learning curve. Forms and APEX, after all, are both Oracle tools.
Moving From Forms to APEX
So, you have a data model, you have PL/SQL, you have Forms applications, you have business functions in your database, you have predefined security parameters. You’ve had all of this for years. It’s thoroughly debugged and proven. It is a stable and reliable backbone of your operations. All you need to do is position APEX alongside Forms and reuse the same database, the same SQL code, and the same business functions. The only thing that is really changing is the presentation layer, the User Interface, which also happens to be the one that is web-based. You can also partially or completely replace your Forms applications. It’s up to you.
If you decide to go with another technology, you are basically throwing all of this away and starting over, with all that entails. With APEX you are leveraging the significant investments you’ve made in your Database. You are using the same server, the same personnel, the same developers the same knowledge, and the same IT structure.
Why start from scratch when you can start from a large percentage of your existing investment?
APEX: Rapid Application Development at the service of Forms Developers
Because Forms and APEX share the same developmental approach, the development methodology is the same as well. Just like in Forms, you develop a logic model, create a physical model, then sit down with the customer/end user and establish a list of business functions and start development.
The beauty of modernizing Forms with APEX is that it enables you to keep most of this backend programming. This is because your backend processes don’t really change. You’ll always have customers, you’ll always products, you’ll always have shipping. You order process will remain the same.
What’s different? These actions might be performed over the internet, on a mobile or tablet. They might be put into communication with web services. This opens up so many possibilities. It allows connection to internal or external systems such as other departments, business process, business partners and customers.
APEX’s Rapid Application development allows all this to happen quickly and smoothly. Plus, you can now use modern development approaches, like AGILE. This is a far cry from line-by-line Java coding. Suddenly, the move towards web-based applications becomes feasible. Suddenly, those hundreds of Forms your company has developed over the years can be moved into the 21st century within a reasonable timeframe and cost.
To recap, Forms and APEX have the same:
- High availability
- Performance tuning
- Data model
- Development approach
It’s no wonder they work so well together.
In the next blog in this series, we’ll look at the advantages of Modernizing Oracle Forms with APEX.
See the others in this series on Oracle Forms Modernization
First blog in this series Forms and reports Modernization – Forms Challenges
Third blog in this series Advantages of Modernizing Oracle Forms with APEX
Fouth blog in this series Modernize Oracle Forms Applications