What news from AWS re:Invent last week will have the most impact on you?
Amazon Q, an AI chatbot for explaining how AWS works.
Super-fast S3 Express storage.
New Graviton 4 processor instances.
Emily Freeman leaving AWS.
I don't use AWS, so none of this will affect me.
DevOps / Microservices

How to Bring Legacy Systems to DevOps Speed

Apr 18th, 2019 3:00pm by
Featued image for: How to Bring Legacy Systems to DevOps Speed

Find a platform that gives you both a solid workhorse and speedy thoroughbred.

The promise of DevOps — faster delivery of core functionalities online, better teamwork, speedier resolution of issues — is real. The only caveat: DevOps must be applied systematically, so its delivery is not slowed down by legacy applications that were not designed for — nor support — agile and DevOps methodologies.

The key to organizational success in every vertical today is to access legacy or backend systems — the workhorse — without creating more code and holding up agile and DevOps — the thoroughbreds that accelerate digital transformation.

Stable vs. Agile

Zeev Avidan
As Chief Product Officer and Head of Marketing, Zeev defines the roadmap of OpenLegacy’s Microservice-based API Integration & Management Software, aligns software features to the market and brings the software to the market. Zeev ensures that OpenLegacy product delivers the right features to meet customers’ growing needs. During his more than 15 years of experience, Zeev has held leadership positions, delivering information technology solutions within enterprise IT departments and in companies that provide consulting services — most recently at the leading credit card company Isracard and Hilan Tech. He also served as a senior consultant in the Israel Defense Force, dealing with advanced computing systems.

While legacy systems are stable, these large monolithic structures tend to have many interconnected pieces, with one application impacting several other systems. Thus, DevOps faces the hurdle of having to validate changes across all of these affected systems. The complex 10- or 20-year-old architectures that make these systems valuable are the very obstacles that thwart the ability to deliver changes at the pace expected — demanded, actually — by today’s businesses.

On the other hand, agile development and DevOps methodology both aim to deliver software to the business at a faster pace: agile, by targeting shorter goals to allow developers to focus on one problem at a time and see test results quickly after they check in their code; and DevOps, by increasing cross-functional communication and automating everything from build through deployment, thus accelerating delivery of changes to users.

Applications that are completely wrapped in agile and DevOps, with rapid iterations offering many incremental changes to the application over time, fit the Silicon Valley mantra of “fail fast”: implement it, find the problems, resolve them. This is, of course, the opposite of the view that has forever guarded legacy systems and kept them stable and reliable — controlled change coupled with thorough test environments.

Can You Get the Best of Both Worlds?

How can you play to both strengths? Replacing legacy systems is a long, expensive process and is generally not an option. To improve productivity and delivery timelines without making things worse, you need a platform that grants access to the wealth of data stored in legacy systems without requiring a massive amount of new development on those systems — a framework to give DevOps the business logic that applications need, one that is flexible enough to serve that information wherever DevOps teams need it.

The Magic of Microservices

Microservices, or microservices architecture, is an approach to application development in which a large application is built as a suite of modular components or services. For example, an approach that builds APIs on top of microservices composed of standard Java stacks means that Java developers can get to the data they need without having to wait for the legacy team to develop more code. DevOps can continue to “fail fast” and “fail small” since the microservices architecture limits changes required on legacy systems. In this environment, changes are made at the microservice or by combining microservices, just like any other API that can be enhanced or combined. No changes need to occur on the legacy backend.

While the legacy systems continue to store and protect mission-critical data, you can extend those core systems for access by agile teams. Monolithic legacy applications can serve data where and when it is needed with a platform that uses a microservices architecture with APIs that are both easily generated and customizable by Java developers. This platform:

  • Uses connectors to tie backend systems into the microservice and API generation to generate the frontend API. This eliminates the need to develop access code in the most common access scenarios — even in a highly flexible environment requiring support for cloud and mobile.
  • Helps teams adapt backend access with microservices and DevOps outside the monolith, thanks to integration with modern development and DevOps tools. Developers will find existing skill sets extend to legacy applications and data, and DevOps teams gain the benefits of stable, secure datasets and procedures while making application delivery faster.
  • Generates APIs that can be called from any language that supports SOAP or REST API calls. That means developers and teams can use the toolset that best fits the goals of agile and DevOps, taking advantage of the languages they are already familiar with but gaining access to legacy systems and data that power the enterprise.

Remember that most new developers entering the workforce — trained in modern languages like Java, Node.js and Python — are not equipped to handle the environments in which legacy applications were developed and are maintained.

Who Says You Have to Have One or the Other?

The microservices approach lets agile developers generate the APIs, make changes required, and keep their projects moving forward. With the development shifted to agile teams and platforms integrated into the DevOps life cycle, the need for legacy changes is reduced or eliminated, allowing projects to use the data and subsystems that have worked for years, while getting the benefits of agile and DevOps development speeds. Kind of like having your cake and eating it, too.

Feature image via Pixabay.

Group Created with Sketch.
THE NEW STACK UPDATE A newsletter digest of the week’s most important stories & analyses.