Provided services
Backend Development, Manual Testing Services, Software Reengineering, Refactoring and Modernization. Cloud Migration, Software Integration Services
Client
Our client is the European market leader for Telecom Management Technology. Its solutions are provided in over 42 countries and are available for over 150 carriers.
Product
The primary project objective was to develop a proxy using Mule technology, facilitating the integration of the client’s internal system with external services. The application receives SOAP requests from the internal system or external service, processes them, and forwards them to the recipient. The app allows safely exchanging messages between two systems. And it doesn’t require any changes in the integrable services.
Challenge
Our customer actively invested in the unification of their infrastructure, having a development plan for unified (reusable) components. However, the customer had an expensive support cycle for these components. The primary challenge became the necessity to develop a component that was not only easy to use but also possessed a high level of reliability. The key requirement was the ability for reuse in various scenarios, meaning it should be easily extensible. As a significant number of other components and products of the customer will be dependent on this component, we anticipated the inevitability of multiple product versions.
Project Context
- Our team had to work in compliance with strict safety rules. There was not even direct access to the test environment: databases, servers, etc.
- Part of the customer requirements arose and was applied at the stage of active development.
- The rather complex and required good communication skills integration with the third-party teams, situated in other countries, was required.
Solution
In the process of overcoming the project’s challenge, we conducted a CI/CD (Continuous Integration/Continuous Deployment) process where manual operations had been fully automated, and we managed to train the product owner in the launching of necessary CI/CD tasks. The Application versioning processes were configured to further improve traceability and change management, therefore ensuring stability during various application versions development.
As a result, we delivered not only the needed component but also introduced a lifecycle management system for it. This became a crucial point that accelerated the unification process, created an optimistic attitude of the client towards the prospects of unification, and stimulated the development of dozens of new components.
Technological Overview
We used the following mechanisms on the project:
- validation of SOAP messages;
- authentication according to WS-Security specification;
- conversion of the message into the required 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.
Result
- All planned functionalities were implemented, and all requirements, received during the development, were applied. The client got an easily extensible, reliable component with a low-cost support cycle.
- The application is widely used by the client and does not cause any complaints about stability and performance.
- Comprehensive documentation on application operation was meticulously prepared.
- The implementation of CI/CD principles in this project was successfully applied to all subsequent components. The overall time for routine operations decreased by a factor of 5.
JazzTeam Achievement
- JazzTeam performed well during integration with third-party team, often taking the lead in synchronization activities. 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.
Technologies
Stack: Mule ESB, Java, Spring, Log4j, Apache commons libraries, XML, XSLT, XPath.
Infrastructure: Jenkins, SVN, Anypoint Studio.
Test Automation Libraries: JUnit.
DB: Oracle.
Protocols: HTTPS, JDBC, SOAP.