The need for simple access to complex rules
AKIOMA Software’s Complex Offer Management Software enables manufacturers of large-scale industrial products and services to craft price quotes and proposals that embody myriad business rules, deal steps, and custom parameters. For example, a maker of custom-engineered equipment and factory management systems could use AKIOMA to quote and deliver proposals with thousands of sub-orders, interdependencies and contingencies. The AKIOMA application is comprised of Product Management and Offer Creation modules. It runs on Progress® OpenEdge® and uses Progress® Corticon® as its rules engine.
To stay highly competitive in the marketplace, AKIOMA wanted to create a self-service web-based “configurator” feature – also known as intelligent, reflexive “smart forms.” AKIOMA clients could use the configurators to engage with potential customers. For instance, a manufacturer of electric turbines could display a configurator that lets a website visitor choose from different power outputs, among many interdependent options, and request a quote based on a custom configuration. In another case, a hosting provider client of AKIOMA needed a configurator to help customers get quotes for hosting SAP Financials. Hosting SAP entails dynamic software and hardware specifications, as well as service level agreements (e.g. 99.999% uptime)—all of which drives further hardware, availability and consultancy requirements.
AKIOMA faced several obstacles in moving to its goal of creating a configurator. Though it sounds simple, an AKIOMA configurator would have to tap into potentially quite complicated business rules. If the turbine manufacturer offered a choice between 50 Hz or 60 Hz power output, the selection of one or the other could trigger any number of derivative rules. A 60 Hz turbine might be for delivery in the United States, with many unique export regulations and other related manufacturing parameters, and on and on.
Another serious challenge was the apparent requirement that the client would have to write custom code to make it work on their end. Until recently, any attempt to build a configurator would have run into this roadblock—to code a working configurator on top of AKIOMA would take an estimated 9 months. This resource-intensive activity made the configurator a hard-sell. In addition, a 9 month delivery was arguably longer than the market cycle of the client’s product or service itself.
Reimagining the possibilities with Progress and Modulus Node.js
The emergence of Progress’ cloud-based Platform-as-a-Service (PaaS), its related web-based computing technologies, and the acquisition of Modulus to run Node.js gave AKIOMA an opening to reimagine how it could approach building the configurator. Modulus provides a portable, scalable and uniquely customizable hosting platform focused on a Node.js deployment. Modulus frees developers from time-consuming set up and maintenance tasks, enabling them to more quickly and securely run their applications.
The AKIOMA team took advantage of the new Progress® Pacific™ PaaS to build AKIOMA.Config, a dynamic web-based configurator that runs on top of OpenEdge and Corticon. With AKIOMA. Config, an AKIOMA client can create a configurator without having to write any code. The client can drag and drop user interface (UI) elements into a template and quickly make a web-based configurator available online. The configurator creation toolkit is also web-based and there are no special software development tools to install. A business user who is familiar with the business rules can create the configurator on his or her own, without the need to involve members of the IT department. “Empowering business users to build configurators on their own is a way to help our clients be more competitive while saving them money at the same time,” said Mike Liewehr, Managing Director of AKIOMA Software.
The web configurator UI uses Node.js and socket.io to communicate with Progress OpenEdge on the backend through the open source Node4 Progress Bridge. Progress OpenEdge, in turn, engages with Progress Corticon to process the rules inherent in the AKIOMA Complex Order Management Software. This communication is accomplished through the OpenEdge/Corticon integration available in Progress OpenEdge 11.3. The form data structure, which lives in the OpenEdge backend (and which receives updates by calling on Corticon triggered by any change in the front-end configurator), is dynamically synched with the AKIOMA.Config front-end through Node.js and socket.io and Node.js runs on Modulus. When an AKIOMA.Config smart form is built, Progress Pacific performs the quick creation of reference data tables that need to be included for it to function. The Pacific application programming interface (API) spans different data structures in Pacific and OpenEdge.
This architecture makes it possible for the AKIOMA smart form UI to be dynamic and quickly responsive to user inputs. As the end user chooses different configuration options, Node.js instantly transmits them to the Corticon rule sheet and returns the correct rule-based data. In the turbine example, the choice of 60 Hz power would be messaged to Corticon the moment the user selected it. Progress Corticon, working with Progress OpenEdge, would return the appropriate configuration options that went with 60 Hz power dynamically. The end user would see only the configuration possibilities for 60 Hz power. The process is completely transparent to the end user.
An impossibility without Modulus Node.js and Progress Corticon
AKIOMA.Config almost didn’t happen. Though the company wanted to create a configurator, the solutions that AKIOMA considered before the introduction of Progress Pacific were not adequate to the demands of the software. Flash, for example, and HTML 5 were candidates for the configurator, but they lacked the dynamic messaging functionality that AKIOMA found in Node.js. In addition, even if Flash or HTML 5 had been adopted, AKIOMA found it nearly impossible to deliver the kind of codeless configurator creation that it is able to effect with Progress Pacific. With Modulus Node.js, AKIOMA obtained a scalable, high performing messaging infrastructure. The architecture allows the smart form on the browser to communicate thousands of front-end screen changes back and forth to the OpenEdge backend and Corticon eliminates the need for coding. All of the rules driving the front-end screen logic could be externalized in the Progress Corticon rules engine to deliver a customizable, dynamic (reflexive) front-end user experience without any screen delays.
Quicker and quicker
“AKIOMA.Config based on the Progress Pacific and Modulus Node.js platform has come out of the starting gate with impressive results,” said Liewehr. “When we tested the Progress Pacific and Modulus Node.js combination in production conditions with remote servers, the configurator sustained a remarkable 100 messages per second. For the end user, the experience of configuring a complex product order is completely seamless and real-time.” The development time required to assemble a new configurator drops from 9 months to just 2 weeks in the codeless operating environment.
The configurator gives new selling and competitive powers to AKIOMA clients. With the rapid creation of web-based configurators possible, AKIOMA clients can offer their customers full online quoting of even the most intricate industrial products and services. Without the codeless configurator, AKIOMA clients would face an insurmountable cost and time burden in creating an equivalent online custom quote engine. industrial products and services. Without the codeless configurator, AKIOMA clients would face an insurmountable cost and time burden in creating an equivalent online custom quote engine.
For AKIOMA itself, the ability to give clients the codeless web configurator capability is a way of staying ahead of the market for industrial customer relationship management (CRM) software. AKIOMA.Config shows that AKIOMA understands the business climate facing its clients. “AKIOMA clients compete in a world where their customers can go online and get instant information about products they want to buy, no matter how complex the order might be,” said Liewehr. “AKIOMA clients must respond to this change in customer expectations. AKIOMA. Config, makes it happen, with Modulus running Node.js and Progress Pacific on top of the whole OpenEdge and Corticon stack.”
AKIOMA Software develops CRM systems for medium-sized companies. Our CRM software is based on Framework SWAT, which was developed by us, and is applied on-premise as well as based in the Cloud. Special focus has been placed on the creation and management of complex offers, product management as well as the representation of complex customer relationships. For more information, please visit www.akioma.de.