Mule application: proxy for customer’s internal systems integration with external services

Project summary:The main goal of the project was to develop proxy using Mule technology. This proxy is used for integration of customer internal system and external service.

The application receives the SOAP requests from internal system or external service, processes them and forwards to the recipient. The app allows safely exchanging messages between two systems. And it does not require any changes in the integrable services.

The following mechanisms were used on the project:

  • validation of SOAP messages;
  • authentication according to WS-Security specification;
  • convert of the message to the desired format.

During development the engineers used approaches that make it easy to reorient the application for integration with other services. This has made the app universal, and significantly reduced the costs of integration with other systems.

The objectives of our team was to realize Mule-application, integrate its work with other systems, test and provide the customer with a fully finished product.

Technologies: Java, Mule, Spring, Oracle DB, Log4j, SOAP, JUnit, XPath, XSLT, JDBC, Apache commons libraries.

Screenshots

Project features:

  • Our team had to work in compliance with strict safety rules. There was not even a direct access to the test environment: databases, servers, etc.
  • Part of the customer requirements was arisen and applied at the stage of active development.
  • The rather complex and requiring good communication skills integration with the third-party teams, situated in the other countries, was required.

Project results:

  • All planned functionalities were implemented, and all requirements, received during the development, were applied.
  • The application is widely used by the customer and does not cause any complaints on stability and performance.
  • The detailed documentation on application operation was written.

Company's achievements during the project:

  • JazzTeam performed well during integration with third-party team. Our engineers were often the initiator of the activities which are necessary for synchronization with colleagues. It made the integration process open and understandable for the customer.
  • The team has taken the initiative to profile the application and adapt it for usage with maximum loading.
  • In the conditions of close cooperation between all the teams, the clear process of manual testing was adjusted, the unit tests were created, and load testing was done.