This article is part of an Essential Guide, our editor-selected collection of our best articles, videos and other content on this topic. Explore more in this guide:
1. - Approaches and tools for modernizing old apps: Read more in this section
- Top considerations before upgrading old apps
- Using a services approach to modernizing legacy apps
- Mobile computing's impact on application modernization
Explore other sections in this guide:
- 2. - Utilizing the cloud for app modernization
- 3. - Getting mainframes and databases up to speed
- 4. - App modernization and cloud: Must-know terms
Relying on poor documentation and glitzy tools, rather than the most appropriate, are just a couple of missteps that can send an application modernizationproject on a detour. Carefully analyzing the situation by talking to users, and being mindful of things like data migration, can help reduce the number of snags endured when modernizing legacy apps.
Communicate openly and often
Collecting user feedback is a first step in application modernization project planning, and helps architects to elicit requirements and improve legacy documentation, according to Ovum senior analyst Alan Rodger. "There can be a lack of understanding of the source system because documentation is often very poor for all the systems," he said. "If relying on [poor] documentation, there are other things likely to come out of the woodwork when they [architects] start working with the code."
By speaking with users, Rodger said it's possible to gain insight into how a system operates that wouldn't be obtained otherwise. In fact, he said, because off overturns in IT staff, experienced users might have more information than those in the IT department."
To pave a smooth path for modernizing legacy apps, all parties involved must share the same mindset. With everyone on the same page, team members can be held accountable for their designated role.
Jaromir Hamala, senior consultant at C2B2 Consulting Limited, said keeping all parties informed is important because architects will be closely watched to ensure they are prioritizing and promptly releasing new features. "The owner should not only understand and support the team in the modernization activities," he said. "He or she should be the one driving it and protecting the team from any pressure from the business."
To help get mentally prepared for taking on an application modernization project, Hamala recommends architects seriously look at the most "painful" part of the application, and ask themselves several questions:
- Will the value of the application increase if modernized?
- What and how much effort will be needed?
- Are there potential risks?
- Are there areas that will generate more value than others if modernized?
Examine what is really needed
If an organization is going to modernize legacy apps, developers have to determine what the code quality is like. Rodger said it's important to look at the code and determine if all of it is being used. It's not uncommon for legacy apps, he said, to be built off redundant code.
One of the simplest ways to overcome the challenge of data migration is to come up with a plan.
The project management team might need to test applicationefficiency, but not have the in-house diagnostic tools or expertise to do those tests. Staff with dated skills will have to be trained in the new technology and language used in the new system, which according to Rodger, could introduce more time delays and risk.
Turning to an outside provider that specializes in assessing code can result in lower costs and greater efficiency. "I've seen outsources [outside consultants] be able to come in and have a fast conversation about doing modernization job, produce that kind of analysis," Rodger said.
Keep your hype shields on high when choosing tools. For example, Hamala said, an architect might think, "'We need to cope with big data, therefore the new architecture must be based on Hadoop!'" Instead of gravitating towards the latest "it" product, he said, it's best to choose a tool based on the specific situation and desired outcome.
Moving data and the information that lives with it is another step that architects need to be mindful of. That is because an application can start off looking one way and end up being entirely different upon completion. "Data migration is a huge issue," Rodger said. "It is almost as big of an exercise as migrating an application. Don't get that wrong!"
Data migration checklist
One of the simplest ways to overcome the challenge of data migration is to come up with a plan, advised Rodger. Planning often starts with nailing down how data is represented on the old system; Rodger said architects will have an idea of how to correctly document in the new system.
Rodger has four pieces of advice to help smoothly move information:
- Take time to completely understand existing data and the information it represents.
- Cull information obtained from system users.
- Look into all modifications made to updated applications.
- Test the migration of trail batches of data to see how they look in the new application.
While the decision to update legacy apps may always be one of contention in some organizations, having an action plan in place, and adhering to it, will help make it easier to see the project though completion.
About the author:
Maxine Giza is associate site editor for SearchSOA.com. She can be reached at firstname.lastname@example.org.