Enterprise applications upgrades are typically undertaken when an existing system fails to meet the requirements of the business. Upgrading an application is never as simple as just changing or replacing a system. There are many operational changes that take place.
The first thing to ask is whether there is a business need for an applications upgrade. It could be a technological or business reason. Technical reasons could be the need to upgrade the database, a middleware system, the operating system or the hardware.
From the business angle, an enterprise could look at adding features to the existing system. This will also involve training of staff. The operational processes might also require changes. Justification for upgrading applications can be confirmed when it is seen in the light of effort required for upgradation, time invested, and the impact it will have on your existing processes.
Vendor selection: Reference checks are essential to pinpoint problem areas and being prepared for unpredictable occurrences during system deployment. Now, when it comes to choosing between completely shifting from a vendor (cross migration) and an application upgrade from the same product, there is always a weighing scale that comes into play. Going to a new vendor is seemingly very attractive, but is fraught with a lot of problems.
While this consideration is at work, the existing vendor may lose interest. There is the possibility that a project could come to a halt. Having a clear picture of the vendor and his product will help avoid this situation.
Integration: In terms of a long-term application upgrade, there could be problems if the existing software and systems do not get adequate support. The technologies that need to be brought in and the areas of inter-connection need special focus. In many case, using more than one vendor gives rise to such integration issues. Managing the integration process also becomes an issue of involving third parties.
For seamless integration, the simplest solution is to deal with a single vendor who will take care of all the linkages. Plan, test, adapt and transfer to ensure that these stages will be covered.
Testing: Pilot testing is feasible for a completely new system or applications upgrade, while testing can be undertaken for vendor evaluation. During the implementation, testing can be taken on in terms of phase-wise implementation, which works as a trial run for the entire operation. A complete testing is essential, as it is a surrogate for training. Core teams from the user community who are involved in the testing learn and automatically get trained. Then they play a key role in training the rest of the team.
User resistance: Resistance against a new process can be avoided when the overall picture is presented to them. The user is interested in knowing how the overall project, their function, and the business are affected. He will also be interested in knowing how much of the old stuff they need to unlearn. User studies and involvement saves efforts when they are included in the planning stage itself.
Upgrading an application is only one side of the matter. Effectively using it is the key to successful application upgrades. User feedback need not be acquired in a formal way throughout the entire user community, but there could be representatives who will act as points of contact. It will be the responsibility of these to make sure that all the people in that team are covered as part of the applications upgrade process.
Major ground work: The actual process of application upgrading would include detailed planning and detailed migration strategy of whether features could be built on the existing system or a complete revamp is needed. Some processes that function well in the existing system might need to be adapted to the new.
Testing the integrated system, as well as making sure all the linkages are maintained and function adequately is important. The entire organization's functioning has to be simulated during the testing phase for flawless working of the system. The software's scalability depends on customization of the system.
There cannot be a 100% discarding of existing systems. It depends upon how well the project managers have taken into account the entire landscape of the all the products and what they wish to achieve in the future.
About the author: C N Ram is the group president - Chief Information Officer at ESSAR Group. He is also the co-founder and director at Rural Shores Business Services Pvt Ltd and a director at Custommerce.
(As told to Sharon D'souza.)