{"id":7236,"date":"2013-12-03T10:00:22","date_gmt":"2013-12-03T16:00:22","guid":{"rendered":"http:\/\/www.mrc-productivity.com\/blog\/?p=7236"},"modified":"2022-11-22T10:59:27","modified_gmt":"2022-11-22T16:59:27","slug":"5-ways-to-rejuvenate-your-legacy-applications","status":"publish","type":"post","link":"https:\/\/www.mrc-productivity.com\/blog\/2013\/12\/5-ways-to-rejuvenate-your-legacy-applications\/","title":{"rendered":"5 ways to rejuvenate your legacy applications"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.mrc-productivity.com\/blog\/wp-content\/uploads\/2010\/11\/Education.jpg\" alt=\"Education\" width=\"76\" height=\"100\" class=\"alignleft size-full wp-image-725\" \/>Many companies face the same problem: They\u2019re stuck to their legacy enterprise applications and systems. Sure, they\u2019d love to upgrade their outdated system, or replace those legacy applications, but&#8230;they can\u2019t. <\/p>\n<p>Why not? Maybe their business relies too heavily on their legacy applications. Maybe past customizations have virtually locked them into their legacy apps. Maybe it\u2019s too risky or expensive. Maybe management doesn&#8217;t see the need for modern applications. Whatever the cause, the problem is the same: They\u2019re tied to their legacy applications. <\/p>\n<p>What problems does this cause? Quite a few. While I could explain how it keeps the company from modern features and capabilities and makes them look outdated, those issues are small potatoes compared to the larger business problems caused by legacy applications. For instance, legacy applications:<\/p>\n<p><strong>1. Tie up IT budget<\/strong>: Since legacy applications are more difficult to maintain, they require a good portion of the IT budget. How much? I\u2019ve seen estimations ranging from 70-80%. Think about that. If you\u2019re spending 80% of your budget maintaining the status quo, how can you ever afford modern technology? <\/p>\n<p><strong>2. Keeps IT from innovation<\/strong>: Since legacy applications are more difficult to maintain, they also require much of the IT department\u2019s attention. Of course, if the IT department spends a good chunk of its time maintaining applications, they have little left to spend on business innovation&#8211;which, as we explained in <a onclick=\"_gaq.push(['_trackEvent', 'Blog', 'Inside Link', 'High Performing IT']); \" href=\"https:\/\/www.mrc-productivity.com\/blog\/2013\/09\/6-keys-to-a-high-performing-it-department\/\" target=\"_blank\" rel=\"noopener\"><span style=\"color: red;font-weight: bold\">this article<\/span><\/a>, is becoming more and more important.<\/p>\n<p>So, what can you do? If you\u2019re stuck with legacy applications that you can\u2019t replace, what are your options?<\/p>\n<p>In this article, let\u2019s explore a few ways to breathe new life into your old applications. If you can\u2019t replace your systems or applications entirely, how can you bring modern features and capabilities to your legacy apps? To help you answer those questions, I\u2019ve outlined some methods to do just that, and touched on the pros and cons of each. Without further ado, here are 5 ways to breathe new life into your applications.<br \/>\n<a name=\"20131202\"><\/a><!--more--><\/p>\n<h3>1. Lift and shift<\/h3>\n<figure id=\"attachment_7239\" aria-describedby=\"caption-attachment-7239\" style=\"width: 150px\" class=\"wp-caption alignright\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.mrc-productivity.com\/blog\/wp-content\/uploads\/2013\/12\/small_157552710-150x150.jpg\" alt=\"photo credit: idogcow via photopin cc\" width=\"150\" height=\"150\" class=\"size-thumbnail wp-image-7239\" \/><figcaption id=\"caption-attachment-7239\" class=\"wp-caption-text\">photo credit: <a href=\"http:\/\/www.flickr.com\/photos\/idogcow\/157552710\/\">idogcow<\/a> via <a href=\"http:\/\/photopin.com\">photopin<\/a> <a href=\"http:\/\/creativecommons.org\/licenses\/by\/2.0\/\">cc<\/a><\/figcaption><\/figure>\n<p>Primarily used by those looking to move away from a mainframe environment, the \u201cLift and Shift\u201d approach involves applying minimal changes to a legacy system, and then moving that system to another platform. This typically requires the use of emulation software to support the legacy system on the new environment. <\/p>\n<p>What does this do for you? This approach reduces the costs and effort of maintaining the mainframe. Essentially, it lets you host your applications on a less expensive platform.<\/p>\n<p>However, it doesn\u2019t add anything to your applications, and could cause further complications. According to a quote from Bill Ulrich, President of TSG, Inc. found in this <span style=\"color: red;font-weight: bold\">article<\/span>:  \u201cSimply moving older architectures via lift and shift can be a real dead end because systems leaving the mainframe environment languish under emulation environments.\u201d<\/p>\n<h3>2. Purchase bolt-on solutions or third-party software<\/h3>\n<figure id=\"attachment_7240\" aria-describedby=\"caption-attachment-7240\" style=\"width: 240px\" class=\"wp-caption alignleft\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.mrc-productivity.com\/blog\/wp-content\/uploads\/2013\/12\/small_9516760585-150x150.jpg\" alt=\"photo credit: chefranden via photopin cc\" width=\"240\" height=\"192\" class=\"size-thumbnail wp-image-7240\" \/><figcaption id=\"caption-attachment-7240\" class=\"wp-caption-text\">photo credit: chefranden via <a href=\"http:\/\/photopin.com\">photopin<\/a> <a href=\"http:\/\/creativecommons.org\/licenses\/by\/2.0\/\">cc<\/a><\/figcaption><\/figure>\n<p>With any well-established enterprise system, you\u2019ll find a variety of bolt-on solutions, or third party software that brings additional features and capabilities to legacy applications. Your available options largely depend on the system or applications you\u2019re running.<\/p>\n<p>What does this do for you? Depending on your options, this approach can deliver modern features to your legacy applications. Also, because you\u2019re using a third-party solution, you avoid the burden of coding these features yourself. <\/p>\n<p>However, integrating these bolt-on packages into your existing system comes with a couple of drawbacks:<\/p>\n<p><strong>1. It further ties you into an old system<\/strong><br \/>\nWith this approach, you\u2019re essentially investing even more time and money into your old technology. You\u2019re spending money purchasing the software, and time integrating it with your current applications and systems. Do you really want to pour more of your precious resources into your legacy applications? <\/p>\n<p><strong>2. It complicates vendor support<\/strong><br \/>\nHave you ever tried to resolve an issue that involves two or more companies? It\u2019s a nightmare. They blame the problem on the other company, who in turn blames it on the first company&#8230;until you\u2019re caught in a never-ending game of \u201cpass the buck.\u201d This is a risk of bolt-on software. When problems arise, the application vendor will blame the bolt-on software vendor, who will blame the application vendor, and so on. Resolving issues becomes more and more complicated with every bolt-on package added to your legacy applications.<\/p>\n<h3>3. Manually build new features <\/h3>\n<p>This approach requires that you build the necessary features and capabilities into your legacy applications by hand. Ideally, it should produce a result that\u2019s similar to the bolt-on option, only more customized to your business.<\/p>\n<p>What does this do for you? This approach gives you the features you want, custom-built for your specific needs. <\/p>\n<p>However, while custom-built solutions sound nice on the surface, this approach comes with multiple problems:<\/p>\n<p><strong>1. It\u2019s not always possible<\/strong><br \/>\nDue to limitations found within your legacy applications themselves, certain features cannot possibly be added to some legacy apps. Building modern features into an old foundation isn\u2019t even an option for some companies.<\/p>\n<p><strong>2. It\u2019s expensive<\/strong><br \/>\nThis requires a developer skilled in whatever language your legacy application is built with. Since most companies don\u2019t have the skills or the time to customize their legacy applications, it often requires outside consultants&#8230;which drives the cost up. <\/p>\n<p><strong>3. It further ties you to outdated technology<\/strong><br \/>\nLike the bolt-on option above, this approach increases your overall investment in your legacy applications, and further ties you to old technology. For many businesses, this is seen a step in the wrong direction.<\/p>\n<h3>4. Give your existing applications a new face<\/h3>\n<figure id=\"attachment_6927\" aria-describedby=\"caption-attachment-6927\" style=\"width: 240px\" class=\"wp-caption alignright\"><a href=\"https:\/\/www.mrc-productivity.com\/blog\/wp-content\/uploads\/2013\/09\/small_4661409838.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.mrc-productivity.com\/blog\/wp-content\/uploads\/2013\/09\/small_4661409838.jpg\" alt=\"photo credit: *n3wjack&#039;s world in pixels via photopin cc\" width=\"240\" height=\"180\" class=\"size-full wp-image-6927\" \/><\/a><figcaption id=\"caption-attachment-6927\" class=\"wp-caption-text\">photo credit: <a href=\"http:\/\/www.flickr.com\/photos\/n3wjack\/4661409838\/\">*n3wjack&#8217;s world in pixels<\/a> via <a href=\"http:\/\/photopin.com\">photopin<\/a> <a href=\"http:\/\/creativecommons.org\/licenses\/by-sa\/2.0\/\">cc<\/a><\/figcaption><\/figure>\n<p>Better known as \u201cscreen scraping,\u201d this approach scrapes the information off of your legacy applications, and displays it as a graphical, browser-based interface. It makes old applications look new, without actually replacing the application.<\/p>\n<p>What does this do for you? It gives your users a modern-looking application, and lets you integrate some modern features into the scraped application. Since it doesn\u2019t replace the old application, screen-scraping is relatively quick.<\/p>\n<p>However, while speed and and modern interface sounds enticing, this approach creates a couple of problems:<\/p>\n<p><strong>1. It doesn\u2019t change the underlying application<\/strong><br \/>\nScreen scraping doesn\u2019t free you from the restrictions found in your legacy applications. While adding standard web application features to a screen-scraped application is possible, it requires a fair amount of time and effort. In the end, you\u2019re stuck using a legacy application, that only looks modern.<\/p>\n<p><strong>2. It complicates maintenance<\/strong><br \/>\nIt leaves you maintaining both the legacy and screen-scraped applications, which increases the amount of effort and time required for maintenance. To make matters worse, every change to the underlying legacy application requires re-scraped applications.  <\/p>\n<h3>5. Extend and surround<\/h3>\n<p>This approach involves gradually extending and surrounding your legacy applications with modern web applications. The end result: truly modern applications that still integrate with your existing business logic and rules.<\/p>\n<p>What does this do for you? This combines the best of both worlds. You create a modern web application (built on modern architecture) that integrates with your existing business rules and logic. It lets you call the same code as you were calling with the legacy application, but on modern architecture. This approach lets you slowly extend and surround your legacy applications with modern web apps, eventually replacing them altogether. <\/p>\n<p>I\u2019ll be honest&#8211;in my opinion, this is easily the best option. It lets you breathe new life into existing applications while slowly moving towards your goal of new, modern apps. It lets you work at your own pace, completely eliminating the risk of replacing your legacy apps altogether. <\/p>\n<p>However, the challenge arises when you try to approach the \u201cextend and surround\u201d method manually. Building modern, well-architected applications from scratch (that integrate with your existing business logic) is time consuming without the right skills or tools. <\/p>\n<p>If you\u2019d like to read a little more on the topic of improving your legacy applications, and the options available, here\u2019s a white paper you might want to check out: <a onclick=\"_gaq.push(['_trackEvent', 'PDF Download', 'Modernization', 'Blog']); \" href=\"https:\/\/www.mrc-productivity.com\/research\/whitepapers\/Modernization.pdf\" target=\"_blank\" rel=\"noopener\"><span style=\"color: red;font-weight: bold\">Crash course in modernization<\/span><\/a>. I hope you find it useful.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Many companies face the same problem: They\u2019re stuck to their legacy enterprise applications and systems. Sure, they\u2019d love to upgrade their outdated system, or replace those legacy applications, but&#8230;they can\u2019t. Why not? Maybe their business relies too heavily on their legacy applications. Maybe past customizations have virtually locked them into their legacy apps. Maybe it\u2019s &hellip;<\/p>\n<p class=\"read-more\"> <a class=\"\" href=\"https:\/\/www.mrc-productivity.com\/blog\/2013\/12\/5-ways-to-rejuvenate-your-legacy-applications\/\"> <span class=\"screen-reader-text\">5 ways to rejuvenate your legacy applications<\/span> Read More &raquo;<\/a><\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"default","ast-global-header-display":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","slim_seo":{"title":"5 ways to rejuvenate your legacy applications - mrc&#039;s Cup of Joe Blog","description":"Many companies face the same problem: They\u2019re stuck to their legacy enterprise applications and systems. Sure, they\u2019d love to upgrade their outdated system, or"},"footnotes":""},"categories":[8],"tags":[9],"class_list":["post-7236","post","type-post","status-publish","format-standard","hentry","category-education","tag-modernization"],"_links":{"self":[{"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/posts\/7236","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/comments?post=7236"}],"version-history":[{"count":9,"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/posts\/7236\/revisions"}],"predecessor-version":[{"id":13906,"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/posts\/7236\/revisions\/13906"}],"wp:attachment":[{"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/media?parent=7236"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/categories?post=7236"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/tags?post=7236"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}