Wednesday, September 20, 2017

Techzone

APPsolutely safe

NAGARAJA GUNDAPPA offers his perspective on the question whether the Indian IT industry will be able to survive through the smart app explosion

Whenever something new looms over the technology or industry horizon, experts are quick to make forecasts. One such forecast that is doing rounds is that with the explosive growth of customisable third-party apps, business users with little programming skills can assemble applications by themselves and don’t have to depend on their IT departments. It is being said that IT departments in turn will not have any work to outsource to their Indian vendors and that Indian IT industry is doomed unless it reinvent itself. This article dissects this doom forecast by taking a closer look at the role of IT departments, the dependence of business on IT departments, and skills needed for assembling larger business applications using smart apps. Vivek Wadhwa, Fellow, Arthur & Toni Rembe Rock Center for Corporate Governance, Stanford University, observes, in his blog titled ‘Why I have become pessimistic about Indian IT’: “With the advent of tablets, apps, and cloud computing, users have direct access to better technology than their IT departments can provide them. They can download cheap, elegant, and powerful apps on their IPads that make their corporate systems look primitive. These modern-day apps don’t require internal teams of people doing software development and maintenance—they are user-customizable and can be built by anyone with basic programming skills.”

Does this generalisation hold water? Can the explosive growth of apps render software developers redundant? I am afraid not. There are 3 main reasons as to why users will not be able to do it by themselves and replace IT departments.Rich availability of apps can make programming easier, but IT is lot more than programming: Information Technology is not just programming which is made easy using reusable apps. Identifying the information flowing through a system, breaking them into logical chunks, relating the chunks into a model, identifying the business rules to process information flow and envisaging the whole model as a set of input-process-output is essentially what Information Technology is all about. In other words, any non-trivial application development goes through a software development life cycle that consists of requirements specification, analysis, design, coding and testing. All life cycle models including agile models have these phases, but different life cycle models vary in the extent to which and the sequence in which the life cycle phases are pursued. In this life cycle model coding and unit testing constitutes roughly 30- 40 per cent of the effort and availability of smart, easy-to-use apps can only reduce the effort involved in programming and unit testing to some extent and not the effort for other phases. Effort needed to be spent on other phases will not be reduced significantly as shown in the diagram below.

The diagram illustrates that for an application that requires 100 units of effort, the effort required for coding and unit testing reduces from 35 units to 10 units, but effort for other phases remain as-is. It should be noted that the numbers are approximations based on industry averages and there can be variations in specific instances. The critical-to-success skills of IT lies in these non-programming phases, that is, analyzing and modeling customer requirements and designing the software. These non-programming part of IT development skills continue to be necessary both in quantity and quality, and can only be provided by professionals who work full time. It is not that non-IT professionals cannot do it. But, they have to invest full time efforts into learning and performing this activity and if they invest that much of time and effort, they in turn become IT professionals whose place is in IT departments.

Skills needed for assembling apps with programming the glue code is non-trivial: While I have dealt with large enterprise applications having many million lines of code, I have also dealt with small software houses developing applications for small businesses with few thousand lines of code. Building dynamic websites for small businesses using customisable frameworks such as Joomla or Wordpress has become easier. And yet, believe me, learning Joomla and Wordpress is non-trivial to say the least. And it is not a one-time job. One has to spend months of effort to learn not only the framework, but also the innumerable plugins and at least one programming language to write additional code to become competent. And one has to then, continue to keep updating himself or herself by learning features of new releases and latest plugins. It takes months to master these skills and a business user working in some other area of core competency such as an insurance, real estate, inventory or shop floor simply cannot afford this learning curve as an add-on. It requires a full-time effort investment to learn these skills, become proficient and stay updated. Therefore, ‘do-it-yourself’ software gadgets may lower the entry bar for a non IT-professional to become an IT Professional; but will not render IT professionals redundant.

App explosion could lead to increasing the size of the pie rather than taking away from it: Let’s take an example of content management systems. Customising Enterprise Content Management Systems such as OpenText or EMC to specific business requirements demand thorough software development skills whereas customising small business CMS solutions such as Wordpress or Joomla demand relatively less skill. This does not mean that the lower skill level requirement has resulted in Wordpress /Joomla eating into the market share of Enterprise CMS products thus rendering the software professionals in ECMS jobless. Rather, they have created a new market in the small business segment and are growing independently. According to a report, ECM market is expected to grow from $ 5.1 billion in 2013 to $ 9.3 billion in 2017. Attributes of ‘ease’ and ‘economy’ associated with open-source apps actually help creating new markets rather than replacing existing ones.

 

 

 

 

In summary, how the Indian IT industry will grow in the next couple of decades depends on a number of factors. But, explosion of easy-to-use-and-customise apps doesn’t necessarily pose a threat of IT departments being displaced and replaced by business users turning into part-time developers. And in that sense, Indian IT industry doesn’t face a significant business threat from explosion of open source apps.

 

The author is a reputed IT Project management consultant and trainer based out of Bengaluru. He is also Chief Consultant at ACE.

 

 




Leave a Comment

Name  
Email Address
(will not be published)    
Website
Comment