Forensics in computer science is a mixture of knowing not just what 'went wrong' with a technology (as nothing particularly might have been wrong with it) but of the environment in which it was released, the economic and social drivers that were in place when the coding began, and more. It cannot simply be a clinical study into the innards of a system but is rather a kind of sociological study into minds of the stakeholders and developers alike. If done correctly it can be instructive and help avoid future problems on similar projects in the future.
Systems Never Really Die
When people die unexpectedly we want to know why. We study them to figure out the cause of death. Software projects are not people any more than computers are people or corporations are people. In other words, when most people die we have no way (presently) of reviving them. Software systems somehow work differently -- a dead project isn't truly ever dead. Like a corporation some wily and intelligent person might come along and revive the whole thing tomorrow.
So since there is no death we have to revise our definition of 'failure.' Today, for our purposes, we will define failure as the inability to achieve critical mass adoption and to secure sustainable financing for the project. Let's study our model in depth.
Money makes the world go 'round. Why? Because money is a mathematical abstraction that is fluid and dynamic. When we have money we stop talking about 'carts' and 'horses' and 'bushels of wheat' as things and start talking about their worth in trade. Hence money is like the verbs in our sentences -- they make the nouns 'go' somewhere.
So when we look at a project forensically we must first ask about the money. How was it funded and where did the money go? Here is a model for funding that has been known to work in the past. Use it to compare the funding of the project you are analyzing:
- Level I - Feasibility (prototyping) and evidence of production readiness
- Level II -- Mini-production of product, some minimal customers, positive feedback
- Level III -- Securing steady financial interest in growth, typically from advanced investors
Level I should have gotten the smallest amount of funding. Only a fool would pour millions into a product that has not been demonstrated to work or has been shown to meet some kind of present need. Next is the Level II funding where the product goes into small-scale production to a small target market. Here you are looking for positive feedback not in the form of testimonials but feedback in the form of money and reliance. When customers rely upon something the money will follow -- if not right away then in short order. Finally Level III means securing longer-term financing from some sophisticated group. In the Open Source world this means sponsors, generally corporate ones. In the private-sector universe it normally means some form of venture capital firm, probably several of them that come in waves (normally referred to as 'rounds').
If a project looks like a withering plant it may be simply because there was very little planning done regarding obtaining and properly spending the money. Second, when too much money comes in Phase I there is the opportunity to overspend. The project heads may have become overconfident and lost their 'hunger' to produce a leading product. Failure to obtain real, paying customers at Level II may be the reason for failure as well. An individual that gets excited about a product but is unwilling to cut a check for it is not of much value at all. Also, sometimes the product creators have a great deal of interest in it but are unable to 'turn the corner' into monetizing it. Google had this problem before they added the targeted ads.
This article is part of a series on System Forensics. We will delve further into this topic in the next post.Go Back
Citation: System Forensics - Part 1. (2015). Retrieved Thu Mar 23 00:19:32 2017, from http://www.limsexpert.com/cgi-bin/bixchange/bixchange.cgi?pom=limsexpert3;iid=readMore;go=1431869662