Thoroughly Modern: How X-Analysis Transforms IBM i Challenges Into Solutions
November 6, 2023 Ray Everhart
All the modernization conversations I have had over the years with IBM i clients seem to have one common theme: velocity. Or the lack of it, to be specific. Over 70 percent of them reportedly have a tough time managing their systems while embracing modernization, driven by valid reasons like a rapidly evolving business landscape, the need to become more agile and efficient as they expand their business, and a considerable number of IBM i staff retiring.
But the fact remains that they can’t get the changes they need in place fast enough. How do we address this problem in a way that makes sense to the business? The answer is usually not more people – I could have twenty people working on the same problem, but that’s not necessarily going to get it done more quickly.
I’ve seen many different situations where the business needs to respond to a change – to comply with regulations, they might be planning an acquisition, or even because they’ve run out of space in their customer number and need to add new customers – the size of the project is unknown, and nobody knows how to go about even delivering that project in an agile way.
The Smart Thing Is To Look Beyond Manual Effort Towards Automation
Automation can improve your velocity in a lot of areas: impact analysis, testing, even understanding your application in general. Let’s look at onboarding: When you automate the process of gaining application understanding, you gain velocity. Having several people sitting behind a keyboard isn’t productive if they don’t understand the application enough to assess and test the impact of any changes the business needs in a timeframe that’s quick enough.
So how do you automate it and let one person build on the understanding of another? A system like X-Analysis allows you to collect information and assess how everything is related to each other automatically. A programmer is no longer looking at code line by line, trying to figure out what this program does and what the dependencies are. He has all the information ready for him to assess and make decisions.
For instance, if I need to create a test plan, how do I understand:
- The entire call stack of programs being used,
- All the tables I need to set up in my test environment, and
- If the data in the test files even represents the business rules I’m about to execute against
Manually, it would take months to find all those answers to properly understand and address the problem or make changes. Automating the info collection and application understanding will help you figure out how you’re going to implement this faster.
For example: Customers we’ve worked with have multiple projects queued up, and as we evaluated the overlap on those projects and the testing burden that was going to be involved for each of them, we found that the velocity was far better if we worked on three projects simultaneously and combine the testing.
All that information is available when you have a tool like X-Analysis because it sees the relationships between projects, between objects, and gives you a level of understanding that lets you go beyond just changing your program, but to actually manage your application.
Application testing is also a common concern – it takes time to understand everything that’s affected when there’s a change, slowing you down. Leveraging the information collection through automated application understanding should help you create test cases and a test plan, thereby speeding up the whole project delivery and giving you the velocity you need to be agile.
This is important because, at the end of the day, if you don’t have the velocity that the business requires, they’re going to find another solution to the problem.
X-Analysis And The Path To Agile Application Management
When we are called in for a discovery service, typically we have never seen their system before and don’t have six months to get up to speed on everything. Since manually collecting the information is out of the question, we leverage X-Analysis – it gives us the information, the insights, and the application understanding we need to make recommendations and provide solutions, a strategy much faster.
I’d also like to point out what X-Analysis offers is way beyond just impact analysis – I’ll also know when I don’t need to modernize something. During these discovery engagements, as a practice, we put everything that hasn’t been used in a while into an application area and filter based on its contents. I can exclude a lot of things from the analysis just because I know they’re no longer used.
This speeds things up significantly because the level of effort it takes to do something is directly proportional to the number of objects that I have to handle – the fewer objects I have, the less time it’s going to take and the faster we complete this project.
These aren’t low stakes projects. When you’re looking at analyzing and transforming millions of lines of code, not much is trivial.
Very often, we go into a Discovery session with customers and uncover something, mostly problems, that they had no idea even existed in their own systems. Especially in automated transformation projects, they might be real issues in certain places, like libraries that are hardcoded into program calls that you need to know about before you even begin. Maybe it is a specific technique that cannot be transformed into another language, or a programming pattern that doesn’t have a corresponding way to be represented, it must be totally rewritten.
X-Analysis can help you understand not only what needs to be done before you even start the project, but also what roadblocks exist that might get in the way, making for much more accurate effort estimations & eliminating the scope for nasty surprises when you’re in the thick of things.
Not leveraging projects like these has far-reaching consequences for IBM i shops.
The most obvious and common consequence is budget overruns, both money and time. If you don’t have complete application understanding, then your estimates aren’t going to be good.
The other consequence, which is an even bigger risk, is that you might miss something. If you miss a change that needs to be made, there could be an outage in your production system. Usually, IBM i developers are incredibly careful about not letting that happen, people compensate for the lack of application understanding by doing much more manual investigation. Bringing us back to the inability of many shops to be more agile and respond to changes quicker, more efficiently.
For instance, JF Fabrics, a major Canadian wholesaler, was experiencing rapid business growth, compounded by the need to replace retiring IT staff. They were finding it challenging to maintain and expand their systems. Fresche’s Discovery service, powered by X-Analysis, helped the team quickly understand & document their IBM i applications and business rules. This seamless integration, along with a range of support services, significantly reducing their backlog and onboarding new resources 60 percent faster. Automating the documentation facilitated 100% of the application knowledge transfer, resulting in a 30 percent reduction in IT labor costs, ultimately ensuring business continuity for JF Fabrics.
Similarly, United Heritage, an insurance company, were modernizing their systems and had decades of code written on IBM i systems, which posed problems as they sought agility and needed to onboard new IT staff. X-Analysis was able to provide high-level views, allowing them to visualize object usage, data flows, and field usage across their system. It gave young programmers a method to understand their system in a way that was meaningful to them. This helped United Heritage map out a clear path forward by significantly accelerating their modernization efforts, cutting onboarding times for new developers by 50 percent, and providing clear impact analysis capabilities.
X-Analysis Advisor, an essential power tool for every company that runs IBM i, is making it simpler to bring industry leading application insights and understanding to your organization in a flexible, affordable manner. If you’re interested in learning more or have any questions, I’m hosting an information session on November 15th to show how you can leverage X-Analysis Advisor to transform application information into actionable insights. You can register here.
Ray Everhart is senior product manager of X-Analysis at Fresche Solutions. Everhart has spent years helping IBM i companies by assessing their RPG, COBOL, and CA 2E (Synon) applications and processes to improve business outcomes. He works closely with IBM i customers to understand their business goals and technical needs to drive innovation within the product suite.
This content is sponsored by Fresche Solutions.