Tuesday, 29 May 2012

Back to basics: How IT creates value

Understanding how IT creates value lets you deliver smaller, simpler, cheaper and more usable IT.

But there is a problem: we do not understand how IT creates value.

If you read a typical IT project proposal, you would think that IT creates value by implementing technology and changing business processes. But implementing technology does not of itself deliver value. And although IT can help businesses work in different ways, of itself it does not change how businesses work.

Because we do not understand how IT creates value we make IT much harder than it needs to be. We implement more technology than we need to in the vague hope it will be more useful. We also muddle the delivery of IT with other value.

For example, it is important to manage stakeholders in a project. Because we do not understand how IT create value, we try to manage stakeholders by treating everyone's political agenda and wish list as requirements. Many of these requirements can never deliver value as part of an IT system, but because we do not have a way of identifying and communicating this we include them anyway. This adds to implementation and ongoing maintenance costs, increases complexity and undermines usability.

To get closer to minimal IT, we need a different model for how IT creates value.

The model is very simple.

IT delivers value when it gives you information that helps you do something faster, cheaper, more accurately or more reliably, or that helps you do something you could not otherwise do.

However, IT can not create information from nowhere. And an IT system which only shows you information you have just entered would not create value. To create value, IT must add value to information in at least one of three ways, and typically a combination of all three.
  • Store. IT adds value to information by storing it so that it is preserved through time, more accurately than our memories and more conveniently than paper.
  • Calculate. IT adds value to information by transforming and combining information to derive new information.
  • Move. IT adds value by moving information through physical space, giving us information entered by other people or stored or calculated by other IT.
This simple model provides a very clear way of expressing the value of IT. The value of IT is the additional speed, cost reduction, accuracy, reliability or capability that is delivered by storing, calculating or moving information.

You can use this model to assess demands on IT and identify those that create little value.

The big enemy of IT value creation is the IT project. Of course we need to organise work, and co-ordinate IT changes with the business changes they supports. However, projects take on a life of their own, and the requirements of the project itself, which are often political and temporary in nature, become requirements on IT. You can use this model to weed out requirements that are nothing to do with IT, and which need to be managed separately from the IT delivery process. You can use it to identify the 20% of requirements that will deliver 80% of the value, and focus on those to deliver much smaller, simpler, cheaper and more usable IT.

© Copyright 2012 Minimal IT Ltd. See the Minimal IT website for the original newsletter and copyright information.

Tuesday, 22 May 2012

Minimal IT: Back to basics

The best way to improve cost, risk and responsiveness in IT is to reduce the number of systems, the complexity of systems, and the unnecessary demands on the IT organisation.

I started writing these newsletters in 2005 because I was frustrated by waste in IT.

I am not frustrated by how we provide IT. Technology is faster and cheaper, and we have effective methods for creating, developing and operating IT systems.

I am interested in a different part of the cost equation. Costs can be calculated as a cost of supply per unit of IT multiplied by the amount of IT. My frustration is that we are very bad at managing the amount of IT: the number and complexity of systems and the demands put on the IT organisation. We have addressed efficiency, but we have not addressed the multiplier.

You can see evidence of excessive IT everywhere:
  • Systems bloated with little-used features.
  • Multiple systems doing the same thing.
  • Unused CPU, network and storage.
  • Unnecessarily complicated interfaces between systems.
  • Legacy systems that are difficult to maintain.
  • Expensive replacement systems which do little more than the old ones.
  • Politically-motivated projects that deliver little value.
  • Upgrade projects forced by vendor support policies.
All of these are symptoms of excessive size and complexity or excessive demands on the IT organisation. They cost money and take time but deliver little business value.

To make further gains in cost, risk and responsiveness, we need to systematically reduce the amount of IT we have. We need to deliver the same business value from a smaller, simpler footprint of IT systems and activities, or, as I would call it, we need minimal IT.

How important is this? If we had no more IT than we absolutely needed to support our businesses, and if the IT organisation only took on the minimum of work required to keep IT aligned to business needs, how much simpler and cheaper would IT be? My personal guess, for which I offer no explanation or evidence, is that there is a theoretical minimum of IT which is about one percent of what we typically have. It is very hard to get to the theoretical minimum, but I think it is reasonable to aim at delivering the same business value on about ten percent of the current amount of IT. That's a ninety percent saving on total IT costs.

To make these savings, we need to look in places that we currently ignore, and we need to challenge many widely-held beliefs. We won't get close to minimal IT by repeating well-worn platitudes; we need radical new ways of thinking.

I write these newsletters to force myself to keep thinking about minimal IT. Over the years I have covered six major themes:
  • Understanding how IT creates value.
  • Structuring IT systems effectively.
  • Managing IT proactively.
  • Following effective development practices.
  • Adopting open standards and open source.
  • Exploiting generic applications.
Over the next few weeks I will summarise each of these to build a more complete picture of how we can get closer to minimal IT.

© Copyright 2012 Minimal IT Ltd. See the Minimal IT website for the original newsletter and copyright information.

Tuesday, 15 May 2012

How far can reuse go?

The more we reuse software, the more productive we are and the higher the return on the development effort. How far can this go?

We can arrange reuse into a hierarchy which reflects the size and complexity of what is being reused. At the bottom of the hierarchy are documentation, patterns and code samples. These give a good starting point for detailed coding tasks.

Libraries are the next level in the hierarchy. In these, functionality has been encapsulated behind an application programming interface (API). We can reuse functionality by including the libraries in our system and calling the API.

Services are next. Logically these act like libraries, but are physically different because the functionality is implemented on another system. So we are not just reusing code functionality, we are also reusing the implementation and operation of another running system.

Package software is next in the hierarchy because all the functionality is reused every time the system is implemented. The highest level is where the software is made available as a service. You don't need to code or install anything; you just use the already running system.

As well as the size and complexity dimension, there is a dimension for how well the reused functionality deals with different situations, or how generic it is.

At the bottom of this dimension is code that deals with only one set of requirements. Going up a level, the libraries, objects or services behind an API might be able to do multiple things, and you specify what they should do by passing parameters in the code.

The next level does away with the code. Your data is held in or presented through an engine, and metadata associated with the data dictates which code to call and how to parameterise it. The engine provides a truly generic application, and you only need to describe your data to the engine for the engine to process it.

Looking critically at our Metrici Advisor software, we attempt to achieve high levels of reuse in both dimensions. It is an already running system. It is metadata-driven, and can be configured for any purpose. However, I do see some limitations. Although it is very productive and versatile, more complicated uses inevitably require significant configuration. Are we missing a further level of reuse?

It is certainly possible to imagine another level of reuse, which does away with defining metadata, and replaces it with an automatic analysis of the data itself, applying rules to work out how to perform basic processing, and where necessary asking and learning from user preferences.

This is an intriguing possibility. It is one in which, instead of analysing requirements and designing systems up front, we encapsulate analysis and design rules in the system itself, which can then automatically configure itself from the data that is presented to it. Although it may not seem it, a highly-reused, data-driven system like this would get close to the all-capable, self-programming computer of science fiction.

The more I think about it, the more I think it is possible.

© Copyright 2012 Minimal IT Ltd. See the Minimal IT website for the original newsletter and copyright information.

Tuesday, 8 May 2012

Microsoft - pay now, pay later

Why do organisations consider that Microsoft is a safe choice?

My company provides tools for businesses to assess their IT systems. As part of the assessment process we work with clients to check that they have answered questions properly, and also for us to check that our materials are well worded.

One of our questions is consistently misunderstood. The question asks whether a system is based on standard technology that can be swapped with technology from a different supplier, or whether the system is based on proprietary technology. Clients consistently declare that they are using a Microsoft technology stack and that this is non-proprietary.

Some of this misunderstanding is because the question is not well worded. But I think there is a deeper issue. Many organisations have adopted proprietary Microsoft technology as a standard but are hardly aware that they have done so.

This did not use to be the case. Years ago typical organisations had a mix of technologies, such as mainframes and midrange systems based on Unix, AS/400s and VMS. But now, particularly in the UK public sector, I come across organisations with wall-to-wall Microsoft.

I am not criticising Microsoft. They provide some very good technology. What worries me is that many organisations do not understand the implications of their choice.

This matters for two reasons.

The first reason is that Microsoft costs money. But one way or another, everything costs money. Some organisations could save money by adopting free software, but this is not the major issue.

The second reason is more important. Adopting proprietary technology as a standard, however good that technology, means that you have to follow the lead of the vendor. You have to accept the need to upgrade, you have to accept version incompatibilities, and you have to accept upgrade costs.

Many organisations choose Microsoft because it is familiar, and because alternatives would require them to acquire different skills. Open source such as Linux would make them feel vulnerable because they would not have a vendor to take responsibility.

In the short term this is rational. But these are the same organisations that I see reluctantly upgrading to new versions of SQL Server, or Office, or Internet Explorer, or Windows. In the long run, the "safe choice" of standardising on proprietary technology means that you have to follow the vendor wherever they want to take you.

Many organisations seem to accept difficult upgrades as inevitable, but they are not. In my experience, other vendors, particularly IBM, are much better at preserving backward compatibility. Working to standards used by multiple vendors gives you many more options. And with free and open source software there is no vendor to force you to upgrade, you are free to use old versions, and there is no commercial pressure for the products to move to incompatible new versions.

I am not against using Microsoft technology, but if you are going to use it you have to accept all that it involves. You have to accept that you will need to upgrade to Microsoft's timetable, which is driven by their commercial needs rather than your needs. Microsoft can be a good choice, but in the long run it is not a safe choice.

© Copyright 2012 Minimal IT Ltd. See the Minimal IT website for the original newsletter and copyright information.

Tuesday, 1 May 2012

How PC buying has changed

Buying a PC is now much more about personal preference and getting good value than it is about technology.


If you work in IT you've probably been asked by a friend or family member about what PC they should buy.

It was certainly true in the past that it was useful to have a bit of background knowledge, to interpret the different specifications and to protect friends and family from purchasing already obsolete equipment.

The definition of obsolete has changed through time. Take memory for example. I remember advising that Windows 3.1 ran much better with 4MB than 2MB, but more recently that 512MB, 1GB and then 2GB was the absolute minimum they should have. I remember advising how much better the 80386 chip was than the 80286 because of its support for 32 bit processing. And how much faster USB version 2 is than version 1. And more recently how a "g" WiFi connection is better than "a/b", and now how "n" is better than "g".

But after years of giving this sort of advice, most of the issues have gone away. For most people, nearly any current PC will do. The only real issue is if you want a gaming PC, in which case you're probably better off buying a dedicated games console.

Nowadays you can have so much of everything. Processors are fast. Memory and disk are plentiful. Displays are cheap, so laptops (or tablets) are the default choice. Second screens are cheap. Printers are ridiculously cheap - though manufacturers recoup their profit in exorbitant ink costs.

Now when friends and family members ask for advice, the advice is much less technical. It is much more about interpreting preferences and how to buy.

To start, rather than going into any technical detail, I suggest people go to the local computer store and see which keyboard they like the feel of and which screens suit them best.

And I suggest how best to buy things. The market for computers, printers and monitors is very competitive, and the price difference between buying online and in the store is usually not that great. So you might as well pick up your computer, printer and monitor from the local store, if they have what you want. However, the market for accessories like cables and ink is hugely uncompetitive, and it really pays to shop around.

And there are the special offers to avoid. Like the special offers on anti virus software - where most people will do perfectly well with the free Microsoft Security Essentials. And the special offers for a single user license for Microsoft Office, where the three user license is only marginally more expensive, and saves money if you have more than one PC in the household. And many people will be happy with the starter editions that are bundled with Windows 7 or with the free Libre Office suite.

These changes show how much technology has grown up. For the first 25-30 years of the PC, technology has been the limiting factor. But now, like so many other areas of IT, technology is no longer the issue. Now the issue is helping people pick a PC that suits them and getting value for money.

© Copyright 2012 Minimal IT Ltd. See the Minimal IT website for the original newsletter and copyright information.