Database Neglect and IBM i Inuendo
March 12, 2012 Dan Burger
The future is tied to the past. It’s just not tied too tightly. Understanding that change occurs and better things come as a result is a pretty healthy attitude. Much better than forbidding change or refusing to acknowledge it exists. Change happens. But it’s almost always evolutionary rather than revolutionary. People prefer the level of disruption to be minimal–smooth transitions being far better than unexpected jolts. The row IBM hoed from AS/400 to IBM i is an example of both.
This isn’t a history lesson on the IBM midrange. It’s an example of what can happen when innovative thinking is welcomed rather than shut out. It begins with fundamental weaknesses in the way that data has been designed over the years and how that needs to change as businesses move forward. And it includes the exchange of ideas that open source software and open mindedness cultivates.
These aren’t my ideas. They came from a conversation I had with Chris Burns, a guy who by his own admission bears the scars of application modernization. Burns is part of the team at GEMKO Information Group, a consulting company based in Buffalo, New York, with a track record of helping companies with modernization projects. What Burns has gleaned from his field experiences is that modernization is a process that involves the progressive change of database and business rules without turning the world upside down.
“I’m talking about modernization that begins with the data and then includes the applications,” Burns says. “A lot of time applications are modernized, but the data remains pretty much the same. And then, the data isn’t able to respond to some of the seismic events that can happen in a business.”
Those business quakes occur when decisions are made that require the data residing in the DB2 for i database to be accessible to applications that run on other platforms. It’s that old interoperability seven-headed dragon. And in the experience Burns has acquired, the problem begins with data modeling.
The majority of IBM i-based companies do not have well-documented databases. Typically this goes unnoticed until new business requirements–business intelligence or advanced query efforts–cause this discovery. Poorly defined data is responsible for slow-moving applications, a lack of interoperability with other platforms, and a black mark on the reputation of the IBM i. For IT managers with little or no IBM i experience, this becomes a major frustration that can lead to rip and replace tendencies.
“A rip and replace seldom goes well and it seldom goes without major disruption,” Burns says. “The model we put together [at GEMKO] is very delicate on the existing applications, so it can be transitioned very gently and responsibly as you go. It’s a repeatable process that can be budgeted for year after year. It’s a new culture rather than a new project.”
The data-first model that Burns advocates adheres to the principle that data should mimic the object-oriented architectures that dominates universal application development. His reasoning has a lot to do with increasing programmer efficiency. There’s no doubt that it’s labor intensive to compile programs, slog through data defined structures (DDS), flip through forty-eleven screen views and go the long way home on numerous other details.
“I want to remove non-productive development and make it automatic and more user-driven as opposed to programmer-driven,” Burns says about the many burdens of application development. For those who are doing object-oriented application architecture and not touching the data, Burns says they are gaining relatively little.
He has a name for the tool he is working on. It’s called Inuendo, which seems to relate to the defamation of the IBM i by folks who simply don’t know it. Inuendo provides a look at how data has changed over the years and facilitates the relationship between business objects. The consistent design of the business objects is the key. It helps programmers develop a repeatable cycle that can be used to move the old structured data into a modern data model that eliminates repetitive data and weak data types–two of the primary hindrances when dealing with old data.
“This data part of the retrofit process is in small enough chunks that it is easier to digest and it doesn’t create a lot of waves in the day-to-day operations,” Burns says. “It makes the learning curve manageable. It also allows the application to be understood in ways you didn’t understand it before. And the applications become leaner because the data is a lot stronger and unnecessary things become obsolete. With a repeatable process, you go into an application multiple times over a period of time. Every time it is getting a little leaner. It’s about making the learning curve manageable instead of an all or nothing proposal.”
Burns is confident Inuendo can provide the data model consistency from organization to organization that will prove itself among IBM i shops and for use with other platforms as well. Legacy data modeling is not specific to the IBM i platform, but if Inuendo shows its prowess here, its potential for widespread adoption gets better.
“What Inuendo needs now more than anything else is validation of the idea,” Burns says. “I want it to be open source and I want people play with it and come up with suggestions for it. Then the other piece it needs is a front end.”
Burns acknowledges that his strengths are in database design and backend with RPG and SQL. He hopes to get some open source advocates to delve into this as a project. I’m just thinking out loud when I say the open source-minded YiPs seem like good candidates, or maybe some super students under the tutelage of Jim Buck at Gateway Technical College could lend a hand, or possibly there could be involvement at the local user group level like the PHP project taken on by the Southeast Michigan iSeries User Group.
“The scripts I have written are limited to the construction of the database and the immediate business rules and management rules,” Burns says. “Once I get a front end snapped on, it would be something people could download and play with.”
A future webcast is planned to discuss Inuendo and get some interest in creating the front end. Burns says he’ll let me know when that gets scheduled, and I’ll be sure to let you know about it, too.