In 2020, Abto Software took over a project aimed at the replacement of a warehouse management ERP system. The outdated ERP system was implemented in the Liferay platform and enhanced by custom built portlets.
As the Community Edition of the Liferay service was limited starting from version 7+ and many key components of the web platform were no longer supported, our client decided to migrate to another platform. To increase the performance and efficiency of internal operational processes, major parts of the old solution were rebuilt into a web platform based on modern Java API and Angular SPA.
Our client is a US based company providing implementable supply chain solutions. For over 27 years they have been establishing and implementing supply chain, order, and warehouse management ERP software.
The solutions, provided by our client, are designed to keep track of the movement and holding of products inside warehouses. The software is utilized to process accounting, storing, receiving, shipping, and more.
The project’s main goals can be reduced to the following:
- Migrating the old desktop solution to web to digitize internal processes
- Adapting the front-end part to make the solution mobile-friendly
- Increase the overall performance and stability of the implemented solution
During the course of the project, we provided:
- Replacement’ feasibility research
After research, our team suggested building a hybrid ERP system. This way, a part of the existing functionality was left completely untouched. The delivered ERP system is now based on web components and has implemented middleware. This allows the built custom portlets to run in containers with minor code changes.
- Middleware implementation
The development of the ERP system also included the implementation of middleware to run existing portlets. These components are responsible for enabling administrative and maintenance domains.
- Application rebuild
After the successful delivery of the ERP solution, our engineers started re-writing the outdated Java application. We rebuilt major parts of the existing solution into a web platform based on both Java API and Angular SPA.
- ERP development
Our engineers covered the custom ERP solution development. This allows multiple users to simultaneously perform activities related to order management, warehouse movements and stock item processing, and more.
- Requests’ analysis implementation
To make request analysis more efficient, our team has implemented a new, advanced feature. The feature allows to quickly analyze all types of requests and display this information on dashboards with advanced role-based access.
The product includes the following features:
- User authentication and authorization
- Multi-tenant user management
- Role-based access
- Order management center
- Kitting process management
- Billing process management
- User dashboard
- Preparation for the migration
Before migrating, we had to understand the landscape of the existing environment. It includes the portlets, customizations, content structures, search extensions, etc.
- Lack of comprehensive documentation on Liferay migrations
Due to incomplete documentation, our engineers had to go through the process and fix unexpected and undocumented issues one by one successively.
- Dictionary management related constraints
While working on the dictionary management, we had to consider related constraints. Empty descriptions should not be allowed, and the item codes had to be unique and unchanged.
- Working with 30-years-old database
We had to write code in the way to eliminate the disadvantages of slow performance and poor design of the legacy database.
Tools and technologies
- Java 11 REST API
- Spring (Boot, Data, Security)
- Oracle Database and JPA/Hibernate
- Specific middleware for legacy JSP-based portlets
- Angular 10+
- April 2020 – ongoing
- 1 Project manager / Business analyst
- 1 QA engineer
- 1 Back-end developer
- 1 Front-end developer
Value delivered to business
The delivered ERP solution provides the following benefits:
- Increased overall productivity (compared to the legacy desktop app)
- Simplified remote access and internal personnel training
- Digitalized reporting process (no need to generate paper reports)
- High performance and scalability
- Cost efficiency (compared to Liferay Enterprise license costs and the potential efforts, which would have been necessary to upgrade the outdated environment)