An international retailer and market leader operating with different distributors across different regions.
The client used a complex e-commerce retail system selling goods and components, composed of multiple components, which worked separately: different distributors in different countries had different ERP systems, and each of them required a different approach from the e-commerce system. Also, the customer had PIM (Product Information Management) and CRM (Customer Relationship Management) systems in place.
- A E-Commerce system responsible for customer data storage and processing.
- CRM (Customer Relationship Management) system responsible for the storage of data about customers.
- ERP (Enterprise Resource Planning) system responsible for the processing of orders in certain countries, as well as the storage of data on purchases, goods in stock.
- The PIM (Product Information Management) system stores large amounts of information about goods.
In the system, the users can:
- Explore a wide range of goods by browsing through a catalog.
- Stay informed about product availability, including goods in stock and those available through dealers.
- Track the arrival of out-of-stock items to ensure timely purchase.
- Access comprehensive information about authorized dealers, including contact details, location on a map, business hours, and their services.
- Make purchases of goods and their components or accessories. Users can choose their preferred shipping method, make online payments, or even arrange installment payments. They can also benefit from available discounts and obtain information regarding service fees associated with the dealer.
- Easily order additional services such as assembly, customization, and repairs, all conveniently done online.
- Keep track of their orders, monitor the status of ongoing purchases, register product warranties, and view their achievements within the system.
The client faced significant operational challenges in their quest for streamlined processes and real-time data exchange. Their retail system operated in silos, and this hindered seamless integration and efficient data exchange.
JazzTeam specialists were given an important task: to create a separate component for the E-Commerce system that would connect it with other parts of the system, regardless of which ERP system was used by the distributor.
Together with JazzTeam, the client embarked on a mission to create an integration component to bridge these gaps. This component would function as an intermediary, bridging the gap between clients of the E-Commerce system and lower-level systems like ERP, CRM, and PIM. Its role involves receiving and transmitting requests, retrieving data from these systems, and orchestrating their collaborative interaction based on predefined scenarios.
- The project involved close collaboration with multiple distributed teams from the customer’s organization and with distributors operating across various countries in Europe and the USA.
- Throughout the integration solution development, the delivery team actively engaged with the developers of a well-known PIM system, fostering effective communication and cooperation.
- Testing was conducted in collaboration with the customer’s testing team, with frequent interaction during End2End testing.
- JazzTeam developers possess certificates validating their professional proficiency in Mule technology.
- The project was completed with several interconnected teams spanning different countries in Europe and the USA.
- Given the ever-evolving requirements, an agile mindset was crucial, and JazzTeam successfully adapted to the rapidly changing project dynamics.
The team actively participated in the entire development life cycle, from requirements formation and system design to project support and handover to the client. Aiming for a productive collaboration, JazzTeam engineers spent a week collaborating closely during a visit to the client’s office, engaging in workshops and training sessions.
Throughout the project, the JazzTeam maintained open communication with the client’s representatives, constantly seeking opportunities for improvement. The engineering team conducted a comprehensive review of the project’s CI/CD state, researched the benefits of Canary release strategy versus Blue/Green, provided suggestions for enhancing access settings, and implemented these improvements. Additionally, the team performed infrastructure configuration and offered valuable advice on organizing work processes in Jira using Scrum methodology.
To ensure smooth transitions and continuity, the team organized weekly preproduction releases. Furthermore, during the knowledge transfer (KT) phase, they diligently shared all processes and procedures with the customer. This KT phase extended over a month, involving video conferences, the development of regulations and instructions, and their utilization in training new teams.
JazzTeam developed a unified access protocol for the e-commerce system, enabling the seamless integration of various distributors’ systems while disregarding their individual peculiarities. This protocol is a standardized interface, allowing for consistent communication and interaction between the E-Commerce system and the diverse range of distributor systems.
Throughout the development process, the delivery team independently organized and conducted thorough testing of the solution. Rigorous MUnit tests were implemented to verify the system’s functionality, reliability, and performance.
The client’s primary objective of automating the entire supply chain workflow by developing a data exchange system utilizing the Mule ESB platform was achieved successfully. By utilizing Mule ESB platform, JazzTeam developed a data exchange system comprising two essential layers:
- System layer, which encompassed the business logic and featured tailored scripts for processing requests within each specific system (ERP, CRM, and PIM)
- Process Layer, which acted as an intermediate layer, efficiently routing requests to the relevant system-level application based on country and brand code considerations.
Previously, the process relied heavily on manual intervention, where managers manually handled orders, searched for products in dealer or manufacturer inventories, and communicated with customers. A new solution introduced real-time automation, enabling customers to access a unified website to find products, view availability, delivery timelines, discounts, additional services, warranties, and place orders.
The newly developed system has the following capabilities:
- Data Format Conversion: The system seamlessly converts data formats for different communication protocols, including JSON for REST APIs, XML for web services, and CSV for file exchange via SFTP. This ensured smooth data exchange between systems with varying communication requirements.
- PIM System Integration: JazzTeam engineered a data migration flow from the Product Information Management (PIM) system to the website. Previously, the PIM system stored comprehensive product information but operated in isolation. Using Mule, JazzTeam synchronized the PIM system with the website, retrieving data from the PIM database, including high-quality images and videos. This data was then structured and pushed to the website, enriching the user experience.
- Real-Time Data Migration: To maintain data accuracy across systems, JazzTeam implemented real-time data migration. Any changes in one system, such as order placements, were instantly reflected across all interconnected systems, following the defined business logic. This ensured consistent and up-to-date information throughout the order lifecycle. Notifications regarding status changes were logged, sent to the CRM, and communicated to the customer. The system leveraged Mule’s VM message queuing connector, ensuring reliable order handling.
The delivery team played an active role in elaborating integration requirements during the project. Additionally, delivery experts thoroughly documented the entire solution and trained the client’s project team according to software delivery best practices. The team successfully navigated the complete development life cycle, from requirement gathering and system design to project support, facilitating the following handover to the customer. The engineers demonstrated their expertise in Mule technology by obtaining relevant certifications.
This successful collaboration exemplifies how MuleESB integration can revolutionize business operations and provide a competitive edge.
- Enhanced Efficiency: The automated purchase process significantly reduced manual interventions and accelerated order processing, resulting in faster turnaround times and improved customer satisfaction.
- Data Consistency: The integrated platform eradicated data discrepancies and improved data accuracy, empowering the company with reliable insights for decision-making.
- Increased Sales: The streamlined process, coupled with personalized quotes and real-time inventory updates, boosted customer engagement and led to increased sales and repeat business.
- Improved Inventory Management: Real-time data synchronization facilitated efficient inventory management, enabling the company to optimize stock levels and prevent stockouts.
- Reduced Order Processing Time: The retailer gained a competitive edge due to implementation of real-time automation, with order processing time swiftly cut from hours to minutes.
Stack: Mule ESB, Apache Maven, REST API, RAML, SFTP, VirtualM, Java 8.
Infrastructure: Git, Anypoint Studio, Jira, Confluence, CloudHub, Slack, Microsoft Azure DevOps.
Test Automation libraries: MUnit + Mockito.
DB: DB2, MSSQL, CassandraDB.