Legacy Applications Modernization

Appnovation can help organizations using legacy applications adopt Mule as an Enterprise Service Bus (ESB) solution, streamline the applications integrations and adopt a scalable architecture. 

Many organizations still manage their businesses using legacy applications; applications that are highly customized and contain critical failure points. Replacing legacy applications is not an easy task as this may involve several years and as such it is not a rewarding process for the organizations in terms of the unwanted upfront costs that this may generate.

In fact, as a business grows through partnership, new clients, new opportunities and acquisitions, these organizations face the challenge of integrating multiple legacy applications running different complex business processes with other open enterprise applications, and connecting with partners and clients businesses seamlessly. Appnovation can use MuleSoft to help customers with modernization of existing legacy systems so as to unlock data and businesses processes, helping to free the way for expected business growth.

Use Cases

Appnovation can help organizations using legacy applications adopt Mule as an Enterprise Service Bus (ESB) solution, streamline the applications integrations, adopt a scalable architecture and complete the work in a reasonable timeframe.

Integration use cases

The requirements expressed by the client for this integration led to the following main use cases:

  • Data entry legacy applications in IBM/AS400 need to send requests to services running in JBOSS AS
  • Data entry legacy applications in IBM/AS400 need to consume Web Services provided by partners
  • Services running under JBOSS AS must be exposed to partners
  • Clients need to send Electronic Document Interchange (EDI) data that must be parsed and persisted into the backend database
  • Enterprise J2EE application managing clients data needs to consume partners web services

With the requirement to connect legacy applications running under IBM/AS400, the only existing interface available was a iSeries Websphere MQ messaging system. In contrast, modern applications use well defined APIs, SOAP or RESTFul web services. How should we connect these legacy applications using the messaging interface, assuming a loosely coupled architecture promoting reuse and involving less development effort?

Service Oriented Architecture (SOA) started to be widely adopted around 2000. It facilitated the conversion of existing components to services using web services as a foundation technology. Though SOA solved applications communication challenges, it did not address the need for a service mediation layer to present more versatile transport protocols and reusable components. Components and protocols that may be needed for different integrations scenarios.

Today, the SOA paradigm has been evolved and extended with advent of ESB platforms. These platforms provide a service bus as a mediation layer containing a collection of protocol transports. This simplifies applications connections and makes the integrations easier, ensuring the expected interoperability happens seamlessly without the need for point-to-point connection.

Mule ESB is a lightweight, open source service bus platform that allows services design and orchestration in a loosely coupled manner. It allows developers to customise and extend platform components and transformers on top of the available runtime services.

Key Benefits of MuleSoft

Appnovation can help organizations using legacy applications adopt Mule as an Enterprise Service Bus (ESB) solution, streamline the applications integrations, adopt a scalable architecture and complete the work in a reasonable time-frame.

MuleSoft provides a service bus that provides commonly used transport protocols to connect applications with each other, such as http/https, jms, ftp, file, smtp, jdbc and more, thus achieving the desired interoperability. With Mule ESB the challenge of introducing SOA is simplified and point-to-point integrations problems are solved. Mule ESB acts as the mediation layer system via its bus

  • Additionally, using Mule ESB as the integration system reduces development effort, as the necessary infrastructure is already provided by mule. Developers need only extend that framework when there is a need to implement the defined integration
  • In our example of connecting legacy applications to services running under JBOSS application server, request messages are first sent to a queue in the iSeries MQ. The Mule instance JMS connector monitors this queue. As soon as the message is consumed, transformers (either built-in or custom) are applied to the message, which is then sent to the service in JBOSS application server. The same implemented scenario with a traditional custom integration adapter require significant custom development with low level JMS API in order to adapt to both the legacy applications and the services for queue message exchange
  • Consuming providers’ web services, and implementing client artifacts in an AS400 legacy application is a painstaking task. With Mule ESB and its messaging feature, legacy applications are able to connect to web services seamlessly with a minimum of extra code using the messaging interface iSeries MQ
  • Existing services specifically running under JBOSS can be exposed to partners quickly and easily using Web Services technology
  • Clients can send Electronic Document Interchange (EDI) data via FTP or JMS. Additionally, Mule ESB provides component extensions to parse the data, transform and use the JDBC connector for database persistence
  • This kind of integration enables an organization to share and send data to their business partners, for invoicing, accounting, importation duties, taxes payments and other business processes.
  • The Web Services integration allows consumption of existing and published services, along with the (Web Service Description Language) WSDL and making them available to client. The process takes into account the particular functions of the Web Service and the data model that is implemented and maintained by a maintenance partner
  • Existing services specifically running under JBOSS can be exposed to partners quickly and easily using Web Services technology
  • Clients can send Electronic Document Interchange (EDI) data via FTP or JMS. Additionally, Mule ESB provides component extensions to parse the data, transform and use the JDBC connector for database persistence
  • This kind of integration enables an organization to share and send data to their business partners, for invoicing, accounting, importation duties, taxes payments and other business processes.
  • The Web Services integration allows consumption of existing and published services, along with the (Web Service Description Language) WSDL and making them available to client. The process takes into account the particular functions of the Web Service and the data model that is implemented and maintained by a maintenance partner
Integration Details

Integration Details

 The illustrated above documents the integration architecture using Mule ESB. The main flow processes implemented include:

  • Client sends files using FILE, FTP or JMS connectors
  • Data entry users using IBM/AS400 legacy apps send requests to external services using iSeries MQ, JMS connectors and Web Services technology (via HTTP/HTTPS connectors)
  • Web application users seamlessly call services via Mule ESB
  • Enterprise application services running in JBOSS AS are exposed to clients/partners using Mule ESB

This kind of integration may involve using a common connections configuration. These have been designed in a common mule integration project (mule-common). In this project, we find the following global Mule elements:

  • Mail transport/SMTP: Send emails with SMTP
  • DB2/JDBC: Read and write to relational databases with JDBC
  • iSeries MQ/JMS: Dispatch and receive JMS messages on queues and topics

The Mule integration applications reference the common mule integration application: mule-common as a library, added as a dependency with maven.

Connectors that have been used in the application mule flows include:

  • HTTP/HTTPS: Send and receive HTTP requests; expose and consume web services
  • JMS: Dispatch and receive JMS messages on inbound/outbound queues and topics
  • FTP: Poll and send files to an FTP server
  • SMTP: Send emails with SMTP
  • JDBC: Read and write to relational databases with JDBC
  • VM: Use the virtual memory transport

As a development best practice, maven has been used to manage the libraries dependencies and the packaging process on the deployment environments: Development, Testing and Production. Maven is a popular tool that facilitates application packaging managemtain all the necessary artifacts that have been inherited by each integration project. This allows for efficient dependencies management and redundancy elimination, greatly easing maintenance.

In the integration applications, the JMS connector has been used asynchronously as it normally would be. However, with Mule ESB this may also be used to perform synchronous operations on endpoints. When requests are sent asynchronously to a JMS queue, responses are matched to corresponding requests using the correlation id attribute.

One of the integration challenges was for a partner Web Service with a maximum 400 allowed requests; integrating with a legacy application that might send more than 1000 requests. This was solved with a split collection router pattern. allowing split requests and processing them concurrently, then aggregating responses using correlation ids at the end of the process.

MuleStudio and the Eclipse Mulesoft plugin are excellent Integrated Development (IDE) Tools for the development process. Integration applications can be created easily with MuleStudio and use the mavenize feature to make them maven compliant.

Working with Appnovation
Competitive Rates & Project Quotes
Competitive Rates & Project Quotes
Shopping quotes for your next MuleSoft integration project? Get a quote from us! Offering competitive rates for experienced, expert Mule ESB professionals.
Proven & Trusted Delivery Methods
Proven Delivery Methods
Using agile for development, always keeping you in the loop. Delivery is streamlined and cost effective, designed to match your goals, timeline and budget.
MuleSoft Integration Experts
MuleSoft Integration Experts
Our MuleSoft experts help organizations strategize, create, configure, deploy and test custom Mule ESB solutions. Appnovation is also a certified MuleSoft Consulting Partner.
Transparent, Collaborative, Communicative
Transparent, Collaborative, & Communicative
Complete project visibility and multiple open lines of communication from day one. We are available when you need us and continually updating you on your project’s status.
Customer Satisfaction
Customer Satisfaction, Our Top Priority
We are constantly engaging with you during the project and at the end we survey you to ask you how we did, the results of which go directly to our CEO.
Why Customers Choose Us For MuleSoft Integrations
Ability to use MuleSoft to integrate a plethora of systems
Agile engagement and project methodology
Collaborative, communicative and client-focused approach
Competitive rates for MuleSoft architects, developers and consultants
Cross-functional team of 250+ experts based in North America, Europe & Asia
Deep open technology systems and applications expertise and experience
Fast, professional, cost-effective engagement model for middleware services
In-house, front-end experts: Business Analysts, UX/UI Specialists & Designers
MuleSoft Consulting Partner & Certified Developers
Proven track record of successful project delivery
Rigorous quality assurance testing before “Go-Live”
Brands that Trust Us
Featured Integration Project
Multi-Service MuleSoft Integration
TriNet
TriNet provides small to mid-sized businesses with an HR solution so they can free themselves from the complexities of HR and focus on their goals. They offer bundled HR products, along with additiona...
Get In Touch & Get Started Today.

Are you interested in modernizing Legacy Applications and using MuleSoft to do it? We have the experts on staff who can make that happen. Our MuleSoft integration experts are ready to create a custom and innovative solution using MuleSoft that will meet your company's needs. Our MuleSoft solutions include implementationdevelopment and consulting. Get started by contacting us today.