Downplaying Upgrades and Other Mistakes of the 21st Century
Our interconnected world forces application users to face reality: It's time to upgrade.
Before we begin, a confession is in order. By the time you read this column, I will have finally upgraded my almost five-year old PC, a workhorse Compaq Presario still running, albeit in fits and starts, Windows 98, Office 97, and Netscape 4.7, among a host of applications that literally hail from the last century. And I will have done this only under duress: Although I've been rebooting my PC at least once a day and am increasingly unable to install and use a host of new applications and technology that would otherwise be easy on a Windows XP machine, there's a lot of comfort in dealing with the devil I know so well.
So it's with no small sense of irony that I'm now writing a column about why enterprise software users should be upgrading early and often — despite the potential cost in time, effort, lost productivity, missed opportunities, corporate good will, and general sanity. While your reasons for not upgrading are probably as good if not better than mine have been for the past five years, most of them have been based on internal issues. Therein lies the problem: The real justifications for an upgrade are no longer found inside the four walls of your company, my company, or anyone else's company. Upgrades are more and more about what the rest of the world is doing, and what you're going to do to keep up. You may be like me, happy to keep herding dinosaurs for a couple more years, but the rest of the world is determined to make us keep up the pace of innovation or pay the price. And pay we will.
Paying the Price
The reason we'll pay is that the core systems we've come to rely on are more and more dependent on connecting to an outside world of customers, partners, suppliers, services, applications, systems, and technologies. That ever-changing outside world is extending its interconnections in a vast, global web that's physically linked by the Internet and spiritually linked by globalization and the quest for increased productivity, customization, and localization, all powered by increasing economies of scale. Living up to those expectations means more and more that what goes on outside the firewall determines what has to happen inside. And that means technology standards are no longer something we can control and set but are now something to monitor and keep up with. Or else.
This is true whether we're talking about my PC, which last week couldn't read the changes in a presentation sent over by a client running the latest version of PowerPoint, or your ERP system, which may not be able to easily support your customers' vendor-managed inventory requirements or their requirements for a personalized e-commerce experience. However much we may want to live in the past, the outside world isn't too interested in supporting our comfortable nostalgia. It's not a question of whether any of us can resist, just for how long.
What the outside world wants from us is increasing in importance as technology requirements increase in scope. When Wal-Mart mandates RFID, HIPPAA mandates patient privacy controls, the SEC mandates new compliance rules, or some new technology standard becomes mandatory, it's increasingly hard to tough it out with a kludged-together, duct-tape and bailing wire solution. The cost of all those kludges — such as the one I have for getting my printer server to boot up (something it stopped doing automatically when I installed some new software last year) — becomes a gnawing little hole in everyone's budget. IT gets to maintain the mess, and the rest of the enterprise gets to live in the slower, less productive, less efficient pace that a proliferation of kludges and workarounds almost guarantees.
What's almost incredible is what we'll put up with, despite costs that are very easy to calculate and very hard to live by once they are well understood. My daily routine of two reboots a day (Did I say once a day? Do users ever tell the truth when it comes to system performance?) must cost me five minutes per day at least. Annualize that figure and suddenly I'm wasting enough to more than justify the cost of a new PC and new software, with a day left over to set up the new system as well.
This scenario is repeated at every company that doesn't have single sign-on or the latest in inventory tracking, or is relying on batch updates, faxed customer orders, sneaker-net, and all the other indications that core systems aren't as up to snuff as they could be. Making do is a time-honored tradition, despite the fact that all those little wasted efforts add up to a whole lot of waste.
Proceed With Caution
There are, of course, some good reasons why every upgrade that the vendors try to foist on us should be very carefully considered. Microsoft's recent problems with Windows XP upgrades that made well-running applications crash and burn is a good case in point. And nobody should lose sight of the fact that upgrades may look like they come under annual maintenance — and are therefore "cheap" - but by the time you've added that must-have new functionality and paid for licenses for your new users, you're no longer in maintenance territory. Now you're paying new license fees, new training fees, and, by the way, with all those new costs your maintenance fee just went up, too. If there's any mystery to why this is happening just look at enterprise software vendor revenues: upgrades and upsells are the lifeblood of the industry today, with maintenance an increasingly important slice of the pie.
But in the end, the march of progress is so pervasive and overwhelming that fixing the individual problems — through a stopgap application here and some kludgeware there — can't possibly be a long-term solution. At some point you'll have to upgrade the core functionality on which everything else depends: those outdated financial, human resources, order management, customer relationship, and other key functions will have to see the light of the 21st century in order for any of the really new functionality to take hold cheaply and efficiently. Then comes a Catch-22: Many of these stopgap and kludgeware solutions end up adding further complications when the inevitable upgrade occurs. A stopgap that costs you $400,000 to implement may cost you as much or more when it comes time to migrate those functions, users, and data over to the new system. Don't get me wrong, in many cases the savings and new opportunities enabled by these applications often make them worth all the trouble. But someday, somehow, if a systemwide upgrade comes, these applications will at a minimum need an upgrade, too. Who said anything in IT should be free and easy?
The bottom line is that upgrades are about keeping up with everyone but ourselves. Just maintaining your existing processes and functions in a state of relative efficiency isn't enough. You need to be keeping up with an interconnected world that by definition needs to embrace new technology and new standards to keep up with itself. So don't ask what your next upgrade can do for you, ask what it can do for the world outside your four walls. And then get going before it's too late.
Joshua Greenbaum is a principal at Enterprise Applications Consulting. He researches enterprise apps and e-business.
The Agile ArchiveWhen it comes to managing data, donít look at backup and archiving systems as burdens and cost centers. A well-designed archive can enhance data protection and restores, ease search and e-discovery efforts, and save money by intelligently moving data from expensive primary storage systems.
2014 Analytics, BI, and Information Management SurveyITís tried for years to simplify data analytics and business intelligence efforts. Have visual analysis tools and Hadoop and NoSQL databases helped? Respondents to our 2014 InformationWeek Analytics, Business Intelligence, and Information Management Survey have a mixed outlook.
Join us for a roundup of the top stories on InformationWeek.com for the week of December 14, 2014. Be here for the show and for the incredible Friday Afternoon Conversation that runs beside the program.