Sunday, June 7, 2009

Sustainable IT Budget in an Equation

This post is going to be technical, if you are allergic to math formulas, I suggest that you skip this or download my talk (in french) about IT value :)

The topic is the search for a sustainable IT budget, a thought that occured to me during the SITA conference on April 30th. I figured that I could get some characteristic equation of a sustainable state as a fixed point of the IT budget equations. I have spent quite some time (over 10 years) modelling IT costs. Some of it may be found in my last book, it is also a key part of my Polytechnique course. This course is focused on Enterprise Architecture, following the analysis of the CEISAR, but is also heavily oriented towards economic analysis (cf. the previously published bibliography).

Before I dive into the technical analysis, I'd like to stress out that I am not looking for a stable information system. Information systems are living objects, with new parts beeing constantly added and (hopefully) other parts being removed. What I am looking for is homeostasis, that is a property that is verified by the IS considered as an open system, even though the parts are changing constantly. Here, the property that I consider is that the budget grows at the same rate as the turnover of the company.

What I did is to take the cost model that is published in my book, and simplify it to reduce the number of necessary variables. The biggest simplification comes from using acquisition costs as opposed to function points to measure the application portfolio. I won't go into details today, it actually makes sense.

The budget is defined as the sum of the project budget P and the Operation budget O. Project are used either to add new applications or to improve/maintain/renew/update existing ones. The two ratios that are of interest (based on what on hears in IT conference or benchmarking) are:
  1. R = (E / E+O) = the % of the IT budget spent for projects (we also use r = E/O)
  2. n = Pn/P = % of the project budget spent on creating new applications
The model that I use is straightforward:
  • each year, Pn € is spent acquiring/building new applications
  • a given percentage (d) of the application portfolio is removed/destroyed
  • (P - Pn) is spend renewing a fraction of the remaining apps, so that the average life expectency of apps is A (measured in year, or we can say that the renewal rate is 1/A)
  • We suppose that the operation cost for an application that costs 1k€ is w k€ - A typical value is 25% (once again the references may be found here).
  • We also suppose that there is a productivity gain over the years of p%. That is, until the application is renewed (or discarded) its operation cost decreases by p% each year.
The IT budget is considered stable if both P and O grow at the same rate g as the turnover (such that r is also a constant). Looking for a stable state yields three equations:
  1. stability of the application portfolio (dS/S = g)
    we get: w* = g+d / nr (weighted operation cost, smaller than w because of p)
  2. renewal rate of the apps (P - Pn = S/A)
    we get n = 1 - 1/(w* Ar)
  3. stability of the operation expenses (dE/E = g)
    we get a huge formula:
    dE/E = [(1-p)(1-d)(1-1/A) - 1] + (w/w*)(1-d)/A + wnr

The math, although high-school grade, is a little tricky. I implemented an Excel version of this model, in order to get a first hand opinion about the behaviour of this simple model and also to check that my equation algebra was correct !
The good news is that I managed to get it right eventually, that is, the equations may be resolved to express r and n as a function of the other parameters. Here are my two theorems (I will write a paper with the proofs one day):
  • n = [A (g + d) ] / (1 + (g+d) A)
  • r = [g +d +p +(1-d)/A] / [w (1 - d + A(g+d))]
The second formula is approximated (I left aside a few "second-order" subterms) but is still quite accurate when compared with the real value from the simulation. Note that if you suppose that g = 0 (i.e., a stable IT budget for a stable company), the equations become even simpler.

What can be derived from these formulas ?
First, they actually provide useful values. If w = 25%, d = 5%, p = 4%, A = 10, we get R = 42% and n = 33%. For someone who has been a CIO for many years, these values make sense. It is important to realize that if n is, say, 50%, then the IS is unstable and will grow !

Second, they show something that I have claimed for a long time : you cannot compare companies using R as a benchmarking ratio if you do not know A ! I have heard so many hours of bullshit SOA infrastructure presentation, which tell how to increase R without taking the proper parameters into account (this is actually why I decided to write my first book: I was fed up listening to consultants who had no clue what they were talking about). I heard the same mistake made by experts (at the VP level of large US software companie). Hence I am glad to have such a compact counter-argument, something I have been looking for over ten years.

Last, the r formula gives a good summary of what can be done to increase the amount of money that can be spent on projects:
  • clean-up old applications
  • increase productivity for operations

Nothing new here, but it is nice to see that age-old sound advice (often ignored) may actually be proven.

3 comments:

capirossij said...

May I bring to your attention the work done by Michel Volle on the same subject :
http://www.volle.com/travaux/effetregle.htm

Best regards

Jerome Capirossi
http://capirossi.org

Yves Caseau said...

Thanks for pointing this out :)
I have met with Michel Volle a few years ago (and then read Keene's book & model). Volle's model is presented in his book "De l'informatique - Savoir vivre avec l'automate". I explain in the appendix of my last book (p215) why my model is different (although it bears the same structure as Keene's). However, in this "fixed-point" calculus, I make some simplification over my own approach so I think that the set of equations is very close to Keene's. What took me a while to get right is to express stability as an equation between the various parameters.

Yves Caseau said...

By the way, I have placed Keene's book in my short list: http://informationsystemsbiology.blogspot.com/2009/04/selected-bibliography.html
:)

 
Technorati Profile