In a small organization, it's easy to track and manage the usage of applications. However, over time, more internal departments appear, more people start to communicate with each other, and operations become more interconnected and complex. All that needs more complex solutions, more licenses, and more apps, all of which means more IT management. And it might get to the point where the growth of unused, outdated or over-licensed applications is hard to stop, which leads to production hiccups, bottlenecks and other inefficiencies.
In today’s uncertain economic reality, corporate decision makers cannot afford to waste money on unused licenses or spend on shadow IT practices. In this guide, we will overview the concept of application rationalization and its benefits, and outline a basic framework which will help you to bring sanity to your solution stack.
Application Rationalization Definition
This is the process of aligning the planning, purchase, implementation and management of applications with the strategy of the company. Its aim is to create an efficient workflow to optimize application usage, boost business processes and fit the technology and security needs of the organization.
Areas for Rationalization
First things first, you need to define the scope of application and software rationalization. This will give you an idea of how to create a step-by-step workflow. Here are the most common areas:
- Stock management. You need to track your current apps’ license usage and define the organizational needs on both a short- and long-term basis. Audit your inventory; it might turn out that you have lots of unused or mistakenly bought licenses that you don’t need.
Application lifecycle. Some applications don’t age well, while others need costly updates. You should create a plan for updating and patching your apps in time, and for retiring them once their lifecycle has come to an end. For example, many organizations are still running Windows 7 as their desktop OS, despite the fact that these systems are now not officially supported. Some say that an experienced IT admin will handle any legacy system. However, legacy solutions tend to have easily hacked backdoors, which becomes a potential security issue.
- Application value. Remember the times when an on-premises Microsoft Exchange server was the only reasonable way to build a production emailing system? Well, MS Exchange has not disappeared, but many IT professionals and MSPs will tell you that investing in the on-prem won’t bring you any more value than subscribing to Microsoft Office 365 for Business. Both solutions are current and up-to-date; however, the value of the cloud application is significantly higher for most organizations and use cases.
- Project rationalization. Once a company starts a new project or opens a new branch or a department, you will need to create an optimal application rationalization plan for the usage of apps. Sometimes, you will also need to update your application and software portfolio according to the needs of the new projects.
- Interconnectivity. One business process can typically be split into smaller interconnected parts. You can optimize business processes by defining the usage of apps and software behind each of these parts, finding the bottlenecks and eliminating them.
- Rational standardization. Creating strict standards and not updating them over time can bring as much harm to the processes and the growth of the organization as the chaotic usage of software and shadow IT. For that reason, you should focus on creating rational standards, so as to be able to change outdated processes when required.
The Dangers of Not Rationalizing Application Usage
As we have already mentioned, there are several disadvantages and dangers to not using application rationalization and not complying with rational software usage, including:
- Bottlenecks in business processes. Legacy or non-optimal applications might lead to ineffective business processes, which, in turn, will lead to a reduction in the efficiency of business operations, thus directly affecting profits.
- Rising costs and higher maintenance. The overhead of supporting legacy applications will grow over time. Also, while you are supporting outdated applications and systems, other parts of your infrastructure might get upgraded, so that you have to spend more time creating build-your-own solutions just to connect legacy systems and solutions to the more up-to-date systems.
- Security issues. A single unpatched, outdated or improperly configured system can become the source of a security breach.
Further reading Data Security Checklist
Application Rationalization Framework
A carefully implemented and documented framework offers the key to streamlined operations. Below, we provide an easy-to-follow framework that will help you to implement application rationalization:
- Determine the scope and identify the needs. You might want to rationalize application usage across the whole organization, or for certain teams or departments. That depends on the available resources in terms of time, money, technical capabilities and expertise. You then need to define the end goal of the process and create milestones, so as to be able to track your progress.
- Define the current process. Create a list of applications that are used in the process. Also, define how these applications are used, and by whom, and the interaction patterns. Lastly, add information about license usage to the list – the inventory, dates and renewal prices. After completing that step, you should be able to draw the big picture and define the lifecycle of each application that is used in the given process.
- Define core values. Before you start investigating new solutions and implementing application rationalization, you need to produce a wish list. Create a spreadsheet to compare your proposed applications with the existing ones. Here's a list for comparison to ease your task: feature set, technical requirements (whether or not you’ll need to upgrade any systems in order to use the required application), budget considerations, maintenance plans, complexity, security considerations, scalability.
- Research the possibilities. Now you need to research and create a list of applications that will support the process better.
Implement. Once you have confirmed that there is a better alternative, it's time to start the implementation. First, you need to create a migration plan, in order to avoid downtime. After that, you can start the implementation itself. Don't forget that your end users will need training, so they can get used to the new application.
Research, Implement, Start All Over Again
Don't forget that the process of application rationalization should be iterative. You should keep an eye on market trends and new solutions that will help you to boost your business processes even more. However, here you need to find a balance between innovation, over-usage of new applications and stagnation in your solution stack.