HomeServicesSystems IntegrationLegacy Systems Integration

Legacy Systems Integration

Legacy Systems Integration

"Legacy Systems" generally refers to the existing IT assets deployed in the IT infrastructure. In most cases, this represents a significant amount of both cost and competitive value for businesses to leverage, aside from the fact that investment for completely new or replacement solutions can be extremely expensive.

On their own, neither the old or new technologies may result in a complete, cost-effective, or flexible enough solution to deliver the qualities of service required to satisfy customer needs. Businesses also need to respond rapidly to market opportunities with reliable, scalable, extensible, and secure production applications. These are the situations in which Legacy Systems Integration provides efficient value by incrementally extending the functionality of existing assets while delivering the advantages of new applications and technologies.

At Guidelight, we focus tirelessly on strategic planning as a main cog in delivering best-in-class, best-suited products. This process includes:

1. Legacy Systems Integration - Identifying Interactions

There are five possibilities when trying to identify interactions your system may have with other systems. These possibilities include:

  1. External data source reads - Your system may read from external data sources and it's essential to understand both the semantics and structure of the data.
  2. External data source updates - Your system may make updates or increase traffic to other systems which could affect their performance and/or create a systems dependency.
  3. External systems interface - Your system may interact with other systems through external interfaces including web services or application program interfaces (APIs). Your system might also request or invoke other behaviors such as cron or batch jobs, or even task schedulers, to make either systems or database updates.
  4. Internal system interface - Your system may provide web or API interfaces for other systems to interact with or gain access to your data sources.
  5. Data source ownership - Other systems reading or writing to data sources “owned” by your system depend on that data, or at least portions of that data.

There are several ways to identify your system interactions including checking your systems documentation, checking with enterprise architects, administrators, and operations staff, and of course analyzing the code itself.

2. Legacy Systems Integration - Identifying Legacy Assets

After identifying a potential interface for which your system has involvement, you need to identify the other systems and/or assets that are related to that involvement. One key thing to acknowledge here is that your system falls within the interaction involvement of each of the external legacy systems, so you must also look for the same sort of interactions you would expect to see from the other systems point of view. This step in the process isn’t normally a difficult task, but it can definitely be time consuming.

3. Legacy Systems Integration - Analyzing the Interaction

Beyond knowing which external systems are interacting with yours, you need to understand how they're actually interacting. Issues to look for during this analysis include:

  • Direction of the interaction
  • Information being exchanged
  • Functionality being requested or invoked
  • Frequency and volume of the interaction

This part of the process is not always as easy and straight forward as it likely appears. Generally, it's easiest to identify systems that feed data directly into your system, but other interactions are more subtle and can often be much more difficult to identify.

These interactions might include systems or users that occasionally extract data from your system, perhaps for a quarterly report. Other instances might be systems that send data infrequently or invoke functionality to or from your system. These interactions also include all instances of links to the system, even if they're simply generated by a web page URL.

4. Legacy Systems Integration - Analyzing Legacy Data Sources

Analyzing Legacy Data Sources is normally the most difficult part of analyzing your systems interaction. This is generally the case due to systems differences including:

  • Systems will often have different data structures
  • The database platforms will often vary, sometimes greatly
  • Different types of data sources (XML Files or IMS as opposed to databases)
  • Informational semantics often differ between systems

Additional possible issues related to data source analysis:

  • Data quality issues - columns or tables being used for multiple purposes, data inconsistent or missing, data incorrectly formatted, same data in multiple places, data value strays from field description or business rules, similar columns containing different data types, and varying default values
  • Data Design issues - poorly encapsulated data access or encapsulation strategies that are difficult to use
  • Data Architecture issues - commonly data-driven problems including data (as opposed to database) cleansing applications or varying timeliness of data

5. Legacy Systems Integration - Analyzing Legacy Code

Code analysis is also a significant challenge, as legacy assets may include:

  • Code quality problems
    • Inconsistent or missing internal documentation
    • Difficult to read, understand or follow
    • Inconsistent coding standards, naming conventions, operation semantics and/or signatures
    • Built on source code or a platform you are unable to update
  • Design problems
    • Written in programming languages your team isn't familiar with
    • Applications may be poorly layered
    • Original design may be at odds with current goals (for instance, batch system vs real-time access)
  • Architecture problems
    • Incompatible or difficult to integrate systems (often proprietary)
    • Redundant and/or fragmented data sources
    • Lack of event notification
    • Insufficient security

Guidelight provides best-in-class Legacy Systems Integration through legacy asset analysis, systems interaction analysis, data source analysis, along with source code analysis and software modeling. Our process focusses on working collaboratively and cooperatively with the legacy system owners so the project has the best visibility possible, and at the same time, we Work incrementally and in an evolutionary manner to ensure final products best meet project requirements.

For more information about our Legacy Systems Integration services, or to simply get a quote for your Legacy Systems Integration project, please contact us.