Project summary
The main task of JazzTeam members was to design, develop and implement Mule connector, which represents a wrapper over cloud-based MDM system, acting as PaaS. The system allows creating industrial applications that produce deep automated analytics (including predictive ones) based on data about customers, products, services, personnel, technologies, materials, etc. Developed by us connector greatly simplifies the process of creating Mule applications, which work with the system by automatic update of API access tokens and dynamic DataSense. Making API calls via connector, user can download data to the system and delete them from the system, search for data using filters, establish relationships among data.
Anypoint Connector DevKit was used as the main tool for connector building. Each operation of the connector uses Jersey-client for API calls. Responses from the application are returned in the JSON format. Using Jackson-mapper, these responses are displayed as Java objects, which the connector gives at the output.
During development, JazzTeam carried out the work on implementation of main connector functionality (API requests), dynamic DataSense, functional, system and unit testing. The connector was fully prepared for passing through certification on the part of MuleSoft company.
Technologies
Java, Mule, Mule ESB, Mule DevKit, Anypoint Connector, Anypoint Studio, SonarQube, Maven, BitBucket, Jersey, Jackson, Mockito, Jayway JsonPath, Apache JMeter, TestLink.
Screenshots
Project features
- Distributed in different time zones team members from different countries (North America, Asia, Europe).
- Custom authentication module that provides obtaining and updating access token to API.
- Metadata support. Each client of the system has different data types of system objects for his or her account. The connector is able to export this information and display it for the connector (dynamic DataSense).
- High performance. The connector was originally designed to work with a large amount of data. According to customer’s requirements, the connector should not lose in performance to pure API calls by more than 10%. To fulfill this condition, test flow was built in Anypoint Studio, on which the load testing had been performed.
Project result
- All tasks were fulfilled in a very short time.
- Necessary accompanying application documentation was created, which shows all features of connector usage to users.
- To prepare the connector for the certification procedure, a large number of different tests were created, such as functional, system, unit tests with a coverage percentage of 70% at least.
- The customer was satisfied with results of all iterations.
- The connector meets the requirements for certification passing http://mulesoft.github.io/connector-certification-docs/advanced/index.html
Team achievements
- During the project implementation, our company has written the manual “Best Practices for Using Mule ESB”.
- DataSense Manual was made.
- Manual for Mule connectors testing and preparing them for certification was made.