Project summary
The goal of this project was to transfer integrating applications, which connect the global Distribution Management System with ERP systems (SAP and JD Edwards) of regional distributors, from on-premise environment to CloudHub platform.
Integrating applications were implemented using MuleESB. The main difficulty was that each application launched in a few copies with individual configurations for each market/distributor, while for some applications the number of such configurations was close to 30. It didn’t represent an issue while working on the client’s servers in on-premise environment, but for launching each of the applications on the cloud a special container with the certain amount of the allocated resources is created. Within CloudHub platform it is called vCore and it may have values like 0.1, 0.2, 0.5 etc. It means that even subject to the availability of the minimum number of vCores (0.1) per one application, there would be a possibility of simultaneous launch only of a small part of all applications.
To resolve this issue all applications were updated and adapted for work with the special Mule application, that allows to deploy them on schedule dynamically. Except for this, all used libraries and Mule Runtime were updated to the latest versions.
Technologies
Mule ESB, Anypoint Platform, CloudHub, RAML, Maven, Jenkins.
Screenshots
Project features
- Distributed team from 3 countries in different time zones (North America, Asia, Europe).
- Transferring of the applications into the cloud and supporting of the original applications were carried out in parallel, and we often had to bring changes and fixes from the on-premise applications to the cloud applications, which required regression retesting.
- The customer’s infrastructure was in a virtual network, and its certain nodes were inaccessible from the outside. We had to use external IP and set up VPC access for certain groups of IP addresses.
- As part of the transference of applications into the cloud environment, a number of applications were also transferred to a new business group. This was due to the fact that the old group had a very complex structure.
- All necessary infrastructure was prepared: queues in AnypointMQ was created, client and secret identifiers were generated, APIs were configured, etc.
Project results
- Mule Runtime was updated to the latest version 3.9.0. And for this it was necessary to add changes into configurations of Anypoint, MQ, OAuth, SFTP connectors, as far as 3.9.0 version has no full backward compatibility with the previous version (3.8.0).
- The applications were adapted to work in Anypoint Platform cloud infrastructure (for example, ActiveMQ was replaced with AnypointMQ).
- Authentication for HTTP queries was added.
- All stages of User Acceptance Testing and System Integration Testing were successfully completed, all the necessary documentation was prepared.
Company’s achievements during the project
During the process of the development JazzTeam crew took responsibility for target setting to other developers, participating in the project.
Client’s testimonial
"We partnered with JazzTeam to expand our offshore team which allowed us to enhance our service offerings to our customers globally.
Beginning with an initial project we were pleased with their efficient processes, good management, and high level of technical expertise they brought to the overall customer experience.
Daily stand-up meeting on projects with open communication allows us to stay on track, and keeps all team members updated on the current circumstances of the project. The approach allows us to predict risks and manage them, and when necessary react fast to various situations that may arise. Their team works cohesively with our global team, providing successful project execution. I can recommend this company as a reliable partner in the area of software development."