Tell us about your project
-
Founded in
-
IT Experts
-
Accomplished Projects
-
Clients
Custom software development, modernizing and optimizing legacy project of a major food processing company.
Industry: food
Category: ERP software, custom software development
Years: 2013 – ongoing
The client is a large food manufacturer encompassing the entire food processing cycle. Software is one of the crucial elements for the company’s efficient workflow that has made it possible for the client to achieve a successful operation.
The client’s company benefits from its own internal, custom ERP system where its employees manage every detail of an extensive line of products.
The original system was brought into operation over 30 years ago. It received regular maintenance and feature updates during the years of operation. However, its COBOL-based core remained unchanged. The core gradually became incompatible with emerging technologies; this incompatibility created long-term challenges on system upgrades for the client.
Collaboration with IT Craft started when the client requested new functionality needed to manage food ingredients. The IT Craft team delivered the required functionality implementing it as a stand-alone project that exchanged data with the rest of the system.
But to cover more of its client’s business needs, the system required multiple feature upgrades as well as new functionality. Those upgrades were only possible with re-creation of the system core on a new technological stack.
By the time our IT Craft team took over the project, the system had already gone past the point of no-return: it could no longer support the client’s growing business requirements.
However, the client could not wait until a new system would be ready, tested, and adopted by employees. The IT Craft team and client decided on a stepwise transfer of functionality from the old to new system with both systems working in parallel as long as required.
The following challenges affect directly project complexity:
COBOL was designed specifically for IBM mainframes. Modern languages do not support COBOL approaches and best practices. Thus developers could not make a copy of source code and reproduce it on a new platform. Instead, IT Craft developers had to study the source code and design a new architecture.
Another downside of COBOL is its self-documentation feature. It is very convenient when quickly figuring out what the source code does then provide hot fixes. However, it turned out that no description process was available, thus adding to the entire scope of modernization work.
IT Craft developers transfer functionality to a new platform and add new features based on stakeholders’ recommendations. Because no person knows the entire process—employees can describe only their daily routine—the team must refine requirements and implement them accurately to maintain existing workflows.
The client’s business cannot stop for even a minute without facing huge losses. The team introduces new source code, accurately ensuring continued functionality always remains available for the client’s employees. New releases are possible only within strict timeframes when workload is minimal.
No new functions are compatible with the old system. Because of this, developers can only add more functions in the new system. When introducing a new part of source code, the developers must ensure users keep working in the “right” system so no data gets lost after its input.
After so many years of constant updates and changes, the system had accumulated a large volume of unused subprograms, failed features, and system errors. Employees formed specific habits on how to manage those. Developers must keep both system errors and employees’ habits in mind to ensure the new system would behave as per employees’ expectations after an update.
The old functionality remains in production until the new functionality is tested, approved, and the team thoroughly checks that it creates no churn. The team especially focuses on data security, system performance, and zero downtime.
Main solutions for technological challenges include:
Regular system support and project progress have become possible with systematic transition from COBOL to .NET.
Modernization has made it possible to:
There have been several engineering wins on the project. Here are only a few:
The team provides only slight updates and improvements to the SPAs it has already deployed.
The old COBOL remains intact. All new functionality is deployed for the new .NET-based system. This makes enhanced UX possible. System improvements can be delivered.
The team has synchronized data processing for both systems working in parallel in the same database. In addition, data locks ensure users do not wipe out each other’s edits in the system when working with certain data.
Apart from simplified maintenance, the new system is the key to further process automation and decreased costs. With the transfer to new infrastructure, the team has reduced IT costs by 50%, improved development productivity by 26%, increased system performance by 15%, and more.
The team uses utilities to administer builds, tests, etc. Another utility software logs all user activities in the system saving developers’ time on investigations. There is also software that aggregates all server metrics and makes it possible to set up alerts on certain events ensuring no emergencies remain unnoticed.
Check out more software projects IT Craft developers have accomplished for company’s clients.