Will software development come to resemble hardware development?

by JackH on March 15, 2007

Sometimes it is interesting to ponder the future of programming. And, like most future gazing it is almost always wrong. But, good fun nevertheless :)

One thing I believe is certain is that today’s arty/craft programming methods won’t outlive me (I’m 38 yo). Why? Mainly because they don’t work often enough. One thing business and governments want from IT in general is predictability. They want to have software delivered on time, on budget with the features they asked for.

Software production isn’t predictable. Some programmers/teams perform brilliantly some perform very badly.

If I were to hazard a guess where things will go I would say that software development will come to resemble hardware development in many respects.

Take a look at tools like this. That looks a lot more like hardware development than traditional software development. I’d hazard a guess that artifacts created with the Cogitron tools could be verified for correctness by the software itself.

From my experience working in ISDN, the hardware people seemed a whole lot more predictable than the software people. Their first deliverables were never perfect but they were a lot closer than the software deliverables. They took a lot fewer iterations to reach a shippable deliverable too.

{ 3 comments… read them below or add one }

Steve March 17, 2007 at 9:20 pm

Software development can be very predictable and good deliverables can be produced on time and on budget. The key thing is the process. If you get down on paper the exact requirements of the software along with tests for each requirement you are of to a good start. You then need a good system architecture and and each developer needs to be documenting their work before they start and, where possible, the unit tests NEED TO BE DONE FIRST!

It can work if you get the process nailed and the powers that be give people enough time to get the thing done properly. I see too many projects going to the dogs because management shrink deadlines and still expect a quality product to be delivered.

jhughes March 19, 2007 at 10:55 am

@Steve
In the end, everything comes down to management…far too many managers think software development is somehow akin to magic and can just be conjured out of thin air. It can’t :-)

Rob March 20, 2007 at 4:31 pm

There is no software, only varying states of hardware.

Leave a Comment

Previous post:

Next post: