by Martin Eliasson
2007-04-02 11:38:26
public

Suboptimizing by centralizing IT

Have you ever had the feeling that centralized IT department in companies tend to inhibit quality, progress and efficency but never been able to pinpoint why? Here´s my analysis.

The reason for centralized IT

Many companies have experienced and are experiencing the pain of different departments or partners solving the basic IT problems again and again in different ways creating hugh problems with systems which usually cannot cooperate and so the company has multiple unsynced storages of data.

The solution: coordinate, standardize and centralize.

The down side of this solution is that it brings new problems:

  1. The further away the service guy is, the longer it takes for him to address a problem. Hence, the speed of the organization is sacrificed for maximum efficiency. Read Tom DeMarco's Slack for a good discussion on efficiency vs. speed.
  2. Centralized IT-staff is far away from the users so the produce products not really asked for by the staff. You want subversion and Trac for a project but are forced to use SourceSafe. You want to use OpenOffice for technical documentation but is forced to use Office. If you can, you install cygwin or Ubuntu in a VMWare server and use free tools anyway. (This is one big reason open source is used heavilly in todays enterprises). All this has a name: overproduction. Pushing out tools and solutions on people not really addressing the true problems.
  3. Removing IT-knowledgable staff from most departments will effectively disable them from ever writing a requirement specification with quality. This is because learning to write good requirements is based on a deep understanding of software systems and development, something you usually learn by software development. But if the difficult craft of finding and expressing requirements is lost due to development being 'outsourced' then the centralized IT department will never have a good idéa of what the different departments really need and so the most basic principle of engineering in quality just what we need, just in time is effectively socially engineered out of the system.

Why proprietary software pushes for centralized IT

Since many classic proprietary software vendors use technology lock-in in order to generate long-term profit, most users are used to the idéa that IT is about tools operating on data that only fits the tool. This idéa is based upon the observation that in order to sell a tool that locks-in the customer, it has to make data incompatible with any other tool. Therefore: interoperabillity of data for most companies using proprietary solutions requires one and the same set of tools for everyone.

The other possible way would be for centralized IT to manage and standardize data rather than tools. This would however exclude most of the tools you are used to today, but on the other hand, if everyone in an organization could agree on how to standardize, synchronize and communicate data, the tools used could be develoloped at different departments without the usually drawback, revitalizing core IT knowledge where it is needed.

Comments