The Journey From Services To IP?

Made In Indian IT Service IndustryThe Indian IT Services industry has been one of the wonders of the world over the last couple of decades, growing from nothing to $100 Billion in that time. However, today, the industry seems to be caught-up in it’s own success. With the loss of the cost play as a long term strategy, and the movement of the IT landscape towards everything on the cloud (the conclusions in this article by  are a bit drastic, IMHO, but the points are valid), the industry needs to have a long hard look at what the future holds.

A recent event report by Ray Wang that talked about IP motivated me to flesh out my thoughts on this topic. Over the past few years, this has been an oft-repeated discussion with folks at multiple firms (mostly within the BFSI sector) with interesting thought patterns emerging.

There is a large amount of trepidation in these firms with regards to creating intellectual property. The few internally developed products have not provided the returns. Even the ones purchased externally are not hitting headlines. The ROI has just not compared with the returns coming from services making it a low priority in tough times. There is also concern about competing with the customer (the customer would not want to pass knowhow which could end up in the vendors own products). The firms just don’t seem to trust their knowledge levels, execution capability and selling skills enough.

To get around this, the vendors need to think outside the box.

One feature of enterprise software (especially internal software, which is bread and butter for the service industry) is the utter lack of thought put into user experience, and to an extent, sustainable design. Zia Patel has eloquently talked about how India can capitalize on its back room innovation skills to create IP. This niche can then be exploited by the industry to create a differentiation to their services as well as products.

Another thought is to work with the startups in India. I know of several startups which began with product roadmaps. To fund these fruits of passion, they began to do services. Now they are in the “next payroll syndrome” and are unable/unwilling to chase their dreams. With their strong balance sheets, the large companies can create an eco-system of co-dependency that will help both ends of the market. There is a start in this area, but I am still not sure that the needed focus has been brought yet.

In summation, the industry needs to start looking at the future much harder than it is today. Yes, it needs to build up strong expertise across verticals and it needs to ensure that the relationships are created and nurtured. But, that is now a basic requirement, not an objective. As for the individual firms, they tend to follow each other, which reduces the chances of any real innovation happening in the industry.

Its time for the individual firms to stop focusing on each other and start focusing on themselves. What do the 9-to-whatevers think?

Software Quality Improvement: Is Something Afoot?

When I started my career, the attention was still on hardware quality.  Machines with redundant hardware were the rage and VERY expensive.  However, realization soon dawned.  Analysis from the researchers pointed out that the incidents and costs from software failure were higher – turning the paradigm on it’s head.

Little has changed since then – software continues to have quality issues with resulting impacts on productivity, accuracy and even reputation.  What has changed are the issues.

Historically, issues were with stability; software would crash or freeze at the most inopportune times.  Today, thankfully, this is not the case.  Even a version 1.0 software rarely shows this kind of behaviour [barring cases where the client or end-user is being used as a beta tester!]  This is true of consumer, third party and internal software.

Issues today are different.  They tend to do with functionality, usability, resource usage [specially on mobile platforms] and, IMHO, the biggest humbug today – security. 

Functionality and usability are two issues which can be solved by getting closer to the end-client.  What do they really want, and how do they use the software?  However, this is not something that seems to be coming easy to our teams; specially for internal software though commercial software is not averse to showing this trend.  In addition, reliability in the functionality is also suspect.  These issues are, often, caused by bad coding, which is avoidable.  The vision of IV&V [Independant Validation & Verification] has not really achieved everything it set out to do – practitioners still need to work out the chinks. 

The security issue seems to be a whole different ballgame.  While this may also be caused by bad coding, work done at design time does not seem to be enough to ensure security.  Given enough time, it seems, hackers can figure out a way to identify and exploit weaknesses given the multiple tools at their disposal.  The only way to stop this from happening seems to be at run-time.

This is not a new solution.  Academia has been conducting research in the fields of self-healing and self-defending software for some time.  However, there has been no framework or usable toolset coming out of this research which seems to have been running for longer than a decade.  In trying to find data among recent articles, I was only able to find two.  A partial implementation by IBM Israel and an April fool’s joke.

To me, this is a sad state of affairs given the potentially beneficial implications.  This is not an easy problem to solve, but neither were the problems this industry has solved over the past decade.  With the resources available and the potential for this market, the lack of visible effort in this area is surprising.  The question I want to ask is “whereforth art thou open source…”

If there is work that is ongoing that I have not been able to find, please do enlighten me!