Friday, July 31, 2009

Is this a dirty secret in computer programming ?

"His day-to-day job involved fixing bugs within The Behemoth that were caused by other bug fixes designed to fix bugs from previous bug fixes, ad infinitum."





found by searching google for ** holy crap new bugs software **





Bruce Springsteen lyrics "you spend half your life covering up".

Is this a dirty secret in computer programming ?
It's not dirty and it's not a secret.





What you describe is how any complex system works and software programs are the most complex engineering feat humans have ever delivered.





Quality is achieved in an upwards conical spiral. It's the same with everything worth doing. No straight lines or silver bullets in the 'real world'.





///
Reply:Who said it was a secret? :-)





Seriously, most software eventually gets rewritten from scratch sooner or later. The more bugs it has, the more likely it is to be a candidate for a rewrite. There is a lot of software out there which has been chugging along for years with no problems.
Reply:no
Reply:I have only done 4th language programming (SQL) and it does not work like that. However, from the outside looking in at Microsoft (Behemoth double entendre) it looks 2 me like that is what goes on.
Reply:It isn't that easy...





Bugs in sftware are a relative thing. When one writes a behemoth application (which I have designed and led), there are a number of bugs that creep into the system. Initially, they are poor design or poor code writing.The secret to capturing each is to design the code in much smaller subssytems and have those writted and tested as independent groups, then bring the bigger pieces together as a system test.





In general, the systems are envisioned, designed, coded, unit (code)tested, system tested and put into "production". It is moe complicatd than this, but bugs are found and introduced until the system is started. That is the point when the system is "good enough".





If you want to see an example of bugs in a system, consider the space shuttle. It has sofware systems and hardware systems. The bugs in the hardware (o Rings, and missing tiles) are disasterous and were brought on by conditions that were not expected, or not reacted to when discovered. Yet the thing flew hundreds of times before failing.





Software is similar.


No comments:

Post a Comment