by Bob Lewis

Keeping Current

Opinion
Jul 20, 20114 mins
Enterprise ApplicationsEnterprise ArchitectureRisk Management

Do you upgrade on a case-by-case basis because "it's a business decision, not an engineering decision"? If so, you aren't being businesslike at all.

Why keep up with current events?

Not as in reading the newspaper and knowing what’s going on, although that’s important if you want to be a responsible citizen.

No, the current events I’m talking about are software upgrades. They are events, and staying current with them is vitally important. It’s a fact of life in the world of information technology, but is more often treated as an option.

Definitions first, so we don’t talk at cross purposes: “Keeping current” doesn’t necessarily mean always putting every vendor’s releases into production as soon as they’re available. It means never allowing yourself to rely on a release that’s no longer supported, and thinking very, very, carefully before allowing yourself to rely on something sold by a vendor that is either in a financially marginal position, or that is likely to withdraw it from the marketplace.

“But,” a chorus of voices generally sings in barbershop-like harmony right about now, “upgrading should be a business decision, not an engineering decision.”

Welcome, once again, to the world of false dichotomies. This statement is about as sensible as saying, “Selling an underperforming equity in our mutual fund portfolio should be a  business decision, not a financial decision.”

Or, “Investing in search engine optimization should be a business decision, not a marketing decision.”

Let’s put this to bed once and for all: Every engineering decision is a business decision. When the subject is staying current, the business decision is actually quite simple: Pay it now or pay it later, only that isn’t quite accurate enough. It’s better phrased, “Pay a modest amount now or pay a much, much bigger amount later.”

It’s something engineers know: Eventually, if you don’t stay current, a technology you rely on will stop working, sometimes in a dramatic way, sometimes for thoroughly annoying but still unavoidable reasons.

Dramatic: We once had a client that relied on a particular DBMS. From a features-and-functionality perspective it saw no value in several successive releases, so it skipped them. In doing so, it skipped a change from 32-bit addressing to 64-bit addressing.

Then it ran out of keys, and had no choice but to upgrade, skipping over several releases and having to track down all of the assorted minor software glitches each new release inflicted on its application software, all at once.

In two weeks.

Annoying: You liked XP better than Vista. Then you discovered that while Microsoft provided an automated upgrade from XP to Vista, it doesn’t provide one from XP to Windows 7, making that transition much more expensive and time-consuming. So you’ve put off that upgrade too.

Now, the company that manufactures your printers replaces the model you’ve been buying with a new one that … that’s right … has no driver for Windows XP.

Annoying.

And isn’t always engineering that gets in the way. For example …

Staffing: You rely on a product that works just fine. The software vendor operates in the black. You’ve stayed current. But (there’s a “but” so often in these situations) the marketplace has lost interest in the product for reasons that really don’t matter at all, because that’s the way it is.

And one day you find you can’t fill open positions anymore, because the only applicants you get anymore are people who are coasting. They have the skills, but not the other attributes you look for when deciding who is worth investing in as an employee.

There’s no point in pretending. You’d better start your conversion now, because running an IT department with developers who are coasting is much more expensive than running it with the best available.

Mergers and Acquisitions: Just in case you hadn’t noticed, companies buy other companies. They merge. They spin off under-performing divisions to get some cash and get rid of a business liability. They spin off high-performance divisions to get some cash to subsidize underperforming businesses (I’m sure it makes sense at the time …).

Meanwhile, some software vendors include material change of control clauses in their license agreements (although calling them “agreements” is something of a euphemism), which means that the licenses become invalid with a change of business ownership.

And as the company that’s changing hands hasn’t upgraded for a few releases, the acquiring company can’t even buy the version on which the acquisition target’s software depends.

The view from here: Staying current isn’t really a business decision after all. It’s better than that.

It’s the businesslike way to operate.

————————————————————————————————————– For this week’s ManagementSpeak, click here.