At Arjuna, we’ve been believers in the inevitability of ‘Utility Computing’ for many years. I share Nicholas Carr’s views that the case for moving much of an enterprise’s hardware infrastructure, and a considerable amount of its software infrastructure, out of siloed IT Departments and into shared facilities, is economically compelling. Initially, this will occur within the enterprise, or shared between enterprises (which we refer to as ‘Internal Utility’), but ultimately the move will be into an external Utility. The savings to be made by sharing computing load (rather than having to over-provision internally for peak load) are just too significant to be ignored, given that current IT utilisation levels are commonly lower than 25%! Indeed William Fellows (451 Group) wrote late in 2006 that ‘shared, internal utility’ was “today’s hotspot”.
So, whilst the ‘internal utility’ is a concept gaining ground, progress will continue to be gradual. PC applications and data will move into shared servers. Individual IT departments will coalesce into resources capable of being shared across the enterprise. Enterprises closely connected in the supply chain will share facilities, and so on. Enterprises and individuals will also take temporary advantage of third party shared facilities to handle high loads or compensate for failures in their own internal IT.
Therefore, whilst some form of unified ‘Computing Utility’ will eventually appear, once the appropriate technologies and business models have been standardised, there are many years of transition ahead. During that time enterprises will continue to experiment with, and utilise, a wide variety of technologies and business models: all of which will promise some of the benefits of utility computing. In our view the key to managing this process of change, and of being able to exploit emerging opportunities, is the deployment of ‘Agile IT Infrastructure’.
‘Agile IT Infrastructure’ is capable of responding, autonomously, to changing requirements and environments. Clearly, this means that it must be capable of changing (i.e. capable of dynamic reconfiguration). However, it also implies that it is capable of understanding what is meant by change so as to be able to make the right choices.