Sunday, September 26, 2010

Technical Debt: Your Vendor Owes You

Gartner recently set off a new industry debate when it released its piece Measure and Manage Your IT Debt.

Vinnie Mirchandani (@dealarchitect) has a typically pointed, incisive, insightful response, called Gartner's "IT Debt" Scare (I guess you can tell from the title where this piece is going ;-) ).

Both Gartner and Vinnie make excellent points, but I have a somewhat different point of view.

First, Gartner was very creative to once again bring a new perspective to an emerging problem. However, there can be more than one perspective on this issue, as Vinnie's piece points out.

What is Technical Debt?

Technical debt is a term apparently
coined by Ward Cunningham in 1992 to describe the shortcuts, compromises, and mistakes made in developing software. For example, many times a software project is on a deadline, and a "good" approach would take too much time or cost too much in resources, so project members take note of the problem and use a quick hack to just get by for now. The quick hack introduces costs later in the project that build up over time if the "technical debt" is not paid off. For some great overviews of technical debt, see here and here, plus the infographic here.


Technical debt is commonly used to describe architectural shortcuts made in software product development in start-ups, but can be applied as a concept (as Gartner has done) to many other related areas - for example, IT lapsed maintenance, deferred maintenance on a home or public utilities, or failure to invest in areas that give a long-term payoff.


Technical debt - TO or BY the software vendors?

Some technical debt has little or nothing to do with enterprise software vendors; it's the same kind of technical debt accrued by large and small software vendors where shortcuts are taken during IT projects.

However, as Gartner positioned this problem (according to other reporters such as Vinnie and Larry Dignan, as I have not read Gartner's article on this topic), at least part of this debt is a debt to enterprise software vendors - forgone upgrades, or even going off maintenance. The theory is that firms will skip an upgrade from time to time (or, worse, a patch), or go off maintenance on enterprise software, creating some amount of technical debt; after all, upgrades get progressively harder to apply as more upgrades are skipped over, and going off maintenance can lead to missed security patches as well as costly "relicensing" fees in the future. One way to look at this technical debt is that it is a technical debt owed to enterprise software vendors.

However, another way to look at this is as technical debt owed BY enterprise software vendors to their customers. After all, if these updates, upgrades, and patches had enough value in them, and cost little enough to apply, then the ROI (benefit/cost ratio) would be sufficient to justify keeping up with the vendor's software releases. The gap between the ROI needed and the actual ROI for each release is a form of technical debt - but its a debt owed by software vendors to their customers.

There are two ways vendors can increase the ROI of these releases - by increasing the numerator (return or benefit) or decreasing the denominator (investment or cost). Simple, right? Increasing the benefit can be accomplished by planning periodic usability or functional updates that can go along with emergency fixes when needed, or by reducing the frequency of patch releases. The cost can be reduced by reducing the frequency of patch releases, creating tools that determine whether a particular release is needed by the customer, by handling the updates on the customer's behalf, by avoiding schema changes, and thoroughly testing every upgrade.

SaaS versus on-premise

Any enterprise software discussion these days has to include a discussion of SaaS (or cloud) versus on-premise deployments. What does the cloud have to with this topic? SaaS-delivered applications change the economics of software in many ways, and technology debt is yet another case of this. SaaS-based applications may not automatically result in greater benefits related to new releases, but they do offer the opportunity to reduce the costs of upgrades - because most of the infrastructure upgrade costs are borne by the
vendor, so SaaS vendors have developed techniques and a body of knowledge that minimizes those costs.

Often, this is not the case with on-premise software. Customers have a very diverse landscape of systems, integration points, operating system versions, and set of applied patches; as a result, it just isn't possible for vendors to sufficiently test upgrades for all these permutations. Of course, customers are also responsible for the costs and efforts of each upgrade, not benefiting from the economies of scale when many customers are on identical environments simultaneously upgraded - as in a SaaS deployment.

On-premise software vendors generally do not optimize for low cost of upgrades, at least not to the same extent as SaaS vendors. By definition, on-premise software vendors cannot test every customer's upgrade with every release; in the SaaS world, such testing is standard operating procedure. These days, SaaS vendors even give customers some time to test upgrades before switching over to a new release, allowing customers time to test any custom extensions or integration points, as well as to test new features and develop new work processes to benefit from the new functionality of each release.

Many times, software upgrades go along with infrastructure upgrades - the new version may not be available for a particular brand of previously-supported hardware, a previously-supported operating system, or perhaps an outdated database. When this is the case with on-premise software, the customer has to bear the cost of upgrading to new infrastructure, testing other related systems on the new infrastructure, and training employees who manage the infrastructure and the new software. These costs are, again, not borne by the customer in a SaaS environment; the SaaS vendor takes on this burden. Incidentally, this burden is lower for the vendor in the SaaS world, since only one (or two, when multiple versions of applications are supported simultaneously for customers) configuration needs to be supported and tested, and because the SaaS vendor controls the upgrade cycle to minimize costs and disruption.

Do SaaS applications completely eliminate technical debt?

No. But SaaS applications significantly reduce technical debt, primarily by eliminating a backlog of unapplied patches and upgrades, eliminating costly infrastructure upgrades, and eliminating the "death matrix" of supported platforms and infrastructure.


(c) Oracle Corp.

Maybe I'll cover virtualization in a future blog, as virtualization holds some promise as a way for on-premise software vendors to come to grips with some of these problems and alter the economics of upgrades once again. Feel free to share your thoughts in the comments section below.

Links:

Saturday, September 25, 2010

Bill McDermott and Tom Bergeron: Separated at Birth?

This struck me last night while watching re-runs of "America's Funniest Home Videos" - the host, Tom Bergeron, looks an awful lot like SAP's co-CEO Bill McDermott.















McDermott and Bergeron: separated at birth? You be the judge ... ;-)

Thursday, September 9, 2010

Who will Oracle acquire next? (The answers)

After about a week of voting, readers of this blog have identified the companies they believe Oracle will acquire next. I'll leave the survey open for a while longer, but about 250 people have voted and the results are pretty clear.

Informatica

Overwhelmingly, respondents to this survey believe that Informatica is the company Oracle is most likely to acquire soon. Informatica describes itself this way:
Informatica enables organizations to gain a competitive advantage in today’s global information economy by empowering them to access, integrate and trust all their information assets.
That is to say, Informatica helps companies consolidate and make sense of their data. Informatica is well-known for its Extraction, Transformation, and Loading (ETL) tools, but they've expanded their product portfolio and grown their business over the past several years under the remarkable leadership of Oracle alum Sohaib Abbasi. Plenty of Informatica's senior executives and employees have worked at Oracle in the past, and the company's headquarters are even located very close to Oracle in Redwood City.

An acquisition of Informatica could fill a very important hole in Oracle's product line, enabling Oracle to consolidate its position in data warehousing and analytics, one of the hottest growth areas in the database market today. Of course, such a deal would have to pass regulatory approval, and there could certainly be antitrust concerns, but I suspect this deal would get some scrutiny before a quick approval.

Salesforce.com

Salesforce.com, the leading independent CRM company and a leading Cloud platform, is our respondents' second choice for a company Oracle is likely to acquire soon. Salesforce.com is also led by an Oracle alum with a great track record: the inimitable and charismatic Marc Benioff. Marc and his team have played a key role in promoting a major architectural shift, and business model shift, in the IT industry, from "on prem" to SaaS and Cloud. Marc, and many of his team are also Oracle alums, which could help with the integration in a merger with Oracle.

Unfortunately, I think this acquisition is not likely to occur. Salesforce.com is currently valued at about $15 billion, and an acquisition would likely drive this price up to at least $18 billion. It's hard to see how Oracle could make the financials of this deal work. This deal would also likely generate more regulatory scrutiny than an deal for Informatica, but I think this would also get approved under the same theory that led to approval of the acquisitions of Siebel and Peoplesoft.

The Top 10

Of the companies our survey respondents think Oracle will acquire next, most are platform technology companies:

Company Responses
Informatica 66
Salesforce.com 36
VMware 30
TIBCO 27
Red Hat 26
Teradata 26
NetSuite 25
SuccessFactors 19
Taleo 19
Computer Associates 17

Salesforce.com, NetSuite, SuccessFactors, and Taleo are the applications companies that made the "Top 10" list. What do they have in common? Each is a SaaS application. Salesforce.com is a SaaS CRM company (with a growing Cloud platform (PaaS) business); NetSuite is a SaaS ERP suite (with a growing PaaS business); SuccessFactors and Taleo are SaaS human resources businesses. Acquiring any of these companies is likely to help accelerate Oracle's entry into the SaaS business.

The Write-Ins

In addition to the votes for companies named in the survey, respondents were given the option to write in a choice of their own. 18 responses were written in, a fairly high rate (almost 10% of respondents wrote in another choice).

5 of the write-in "ballots" were for Cloudera, the Hadoop company. Hadoop is a leading technology in the area of "Big Data," a topic that has to be on Oracle's mind as it considers opportunities and threats in the future.

There were a couple of write-in votes each for Vertica and Jive Software. Vertica is the latest start-up from database legend Michael Stonebraker, creator of Ingres, Postgres, and other technically interesting database companies. Vertica's main product is its columnar database, a technology that could be interesting for certain data management problems (like data warehousing). Jive Software is social software for the enterprise, which could help Oracle build next-generation applications.

Best Answer

The best write-in answer was provided by an anonymous survey respondent whose answer to "Who will Oracle acquire next?" was both funny and prescient. The response, given the day before the official announcement: Mark Hurd.

Oracle Alums

I ran the same survey among a group of relative insiders, the OracAlumni Network. This is a group of 500o+ former Oracle employees, many of whom remain in close contact with Oracle and its market, and who believe that Oracle will acquire next:

Informatica
Salesforce.com
VMware
NetSuite
Red Hat
TIBCO
SuccessFactors
EMC
Symantec
Teradata

Very similar list, particularly at the top end.

Summary

If our survey respondents are any indication, Oracle will continue acquiring companies, and Informatica should be at the top of its shopping list. If you'd like to chime in with your thoughts, visit our continuing survey at http://polldaddy.com/poll/3714778/.

Links

Friday, September 3, 2010

Who will Oracle acquire next?

Oracle has been very acquisitive in past years. In a recent analysis of Oracle's acquisitions, Stephen Jannise of http://www.softwareadvice.com/ prepared this excellent infographic of Oracle's acquisitions timeline, categories, and size:



I would have put Industry Solutions at the left, to show a real spectrum from industry to application to middleware to database to hardware, but this graphic reveals real insight into Oracle's strategy and focus on acquisitions over the past 5 years.
The article also points out some interesting analysis of what characterizes a good deal for Oracle. According to Stephen:

At the highest level, the motivations behind Oracle’s largest acquisitions appear to be the following:

  • Grow market share leadership in key enterprise markets;
  • Expand profitability by consolidating high-margin support revenue; and,
  • Increase strategic relevance by offering a complete technology stack.

This last bullet is something that has played a larger role in really only two of Oracle's acquisitions, both recent, but does two points define a trend? It certainly makes sense and is consistent with speaking points from the company's senior executives.

So, who do you think Oracle will acquire next? Vote in this poll to share your opinion.

After the poll closes, I'll post an analysis of the results here.

Links: