This is a meme that will not die. Just because Joe Average, the business analyst, cannot write his own software, we are in a software dark age. I don’t buy it and I think it is an entirely fallacious argument. To me it is like saying medicine is in a dark age because a pharmacist cannot diagnose, manufacture and prescribe their own medication.
Well, strictly speaking, that analogy is flawed. But my point remains. The typically business analyst cannot specify their way out of a paper bag, let alone engineer a product. And I don’t think there is anything wrong with that. Business analysts, such as they are, have a valid domain interacting with human principals. This requires a different and non-overlapping skill set from crafting the instructions, that is software, that drives machines.
The only motivator I can conceive of to eliminate this divide is cost. If a business can pay a business analyst to both interact with customers and deliver products, they have to pay only one resource, not two. And this urge is not new. The same tired arguments were used around the CASE tool craze. And again with the Unified Modeling Language idiots and now the Domain Specific Language numb skulls.
Blaming the state of software engineering for it is nonsensical. It has always been a bad idea, it always will be a bad idea. Even the most disciplined, highly trained programmers cannot write bullet proof code. How is having a less skilled business analyst trained in an entirely different discipline write the code going to improve that?
Oh, and if you cannot see the snake oil aspect of a guy, Simonyi, trying to sell software that lets analysts write code telling people that things are broken because the tools don’t work and allow just that, well, then you deserve whatever product the idiots you hire give you.