Saturday, October 3, 2015

Stop focusing on projects.

The information technology industry is obsessed with building things. Projects are our lifeblood (whether “projects” are formalized or not). But projects are not even close to being the most important thing for a business to focus on (unless your core business is executing projects!) Projects are just a source of cost (from which, hopefully, value will materialize). The obsession with projects leads to agile development, rapid development, improved, faster tools, and on… When such methods are used to deliver value more quickly then all is well. But if projects aren’t the most important thing to an organization, what is?
The purpose of a project is to deliver something of value to an organization, such that the costs of the project are offset by the value derived in a realistic timeframe. Projects build products, or changes to products. The life of the project compared to the life of the product should be small to large. However, sometimes things are needed with extreme rapidity. Maybe a regulatory change or an opportunity to innovate creates a need for a new product that must be built rapidly. What does this mean to cost, value and project lifetime?
Initial thinking may say something like “build it as fast as possible and forget long term viability. Having it now is more important than having it later and better (– often with an implied hopefully!”) So in this scenario what we are saying is that it is worth incurring what is fashionably (and accurately) called technical debt for the sake of being able to deliver earlier. I guess the thinking is that the technical debt will be fixed later, or that version 2 will be a rewrite (assuming that the need for which the product was built does not go away). The project mentality wins again.
One thing is more important than a project. The product. One thing is more important than the product. Data. Nothing is more important than the data. And what this says is that you must focus on the longer term. Remember the iron triangle (faster, better, cheaper, pick 2?) Better is needed if you have a product and data mindset. So that means cheaper is not an option. You need to be prepared to pay for the best of the best, or else your product and data are sacrificed. That is not to say that faster and cheaper are never appropriate. Just realize that cheaper may only be cheaper in the short term if less than better is not good enough beyond the short term! Soda cans provide an answer.