Unreliability of computer software |
 |
|
A computer program may consist of millions of lines of computer code, written by hundreds of people who each work on small segments of the program and an error as tiny as a misplaced semicolon can cause a system to malfunction. Corporate computer programmers spend 80% of their time repairing software and updating it to keep it running. Software projects are typically 100% over budget and a year behind schedule. The best programmers can be 25 times as competent as the worst, with many software design supervisors unable to evaluate or even understand their programmers' work. If management changes during the development of a program, the programmers may find that their product is unwanted when it is completed. Confusion also develops in data-processing departments because programmers have written computer code without documenting how they approached the problem; the individual maintaining the program 10 or 20 years later, after the initial programmer has left, is out of luck. Such problems are likely to grow as industry and the military increasingly rely on software to run systems of phenomenal complexity
Examples include: patients given fatal doses by malfunctioning hospital computers, 22 fatal crashes by the fly-by-wire UH-60 helicopter, 104 failures in a day at a single air traffic control location in 1989, and the failure during the 1970s and the 1980s of observation satellites to detect atmospheric ozone depletion (due to a programming error). A specific example of the problems with software is in its use in the Strategic Defence Initiative (SDI). An SDI program must make certain assumptions about target and decoy characteristics; but those characteristics are controlled by the attacker. It must also make assumptions about the structure of the attack. Those assumptions make it easier to overload the system by using an attack strategy that violates those assumptions. Realistic testing of the integrated hardware and software after deployment is impossible, and there will be no opportunity to modify the software during or after its first battle. Bugs have been the cause of death or maiming to individuals, serious financial harm to corporations, and nearly caused the collapse of the US government-securities market
1. Computer systems are inherently flawed and too unreliable for critical or vital tasks. They cannot be designed without the ever-present threat of life-endangering malfunctions because their very complexity makes thorough testing for errors impossible. The way they are built means that they are prone to total catastrophic failure, rather than partial failure. As they become more complex, so the level of the catastrophe increases. For these reasons they are dangerous when used in sensitive areas such as intensive care wards, the nuclear industry, air traffic control and early warning and strike command systems. Checking a typical power station's computer program to ensure it is error free under all conditions would take software testers literally trillions of years
2. If builders built buildings the way programmers write programs, then the first woodpecker to come along would destroy civilization
[JOIN] a group of volunteers working collaboratively on developing innovative solutions to this problem. The team's solution(s) will be published here.
|
5 3
|
Known Solutionsfor Unreliability of computer software |

|
Software programs often consist of millions of lines of code, with each section of code somehow interacting with all of the other sections. In such a complex system, it is an extremely difficult task...
|
|
|
Utilize training programs and literature which teaches engineers how to build reliable software. For example, John D. Musa, considered by some the founder of the field of Software Reliability Engineer...
|
|
Innovative Solutionsfor Unreliability of computer software |

|
The shrinking of electronic devices will inevitably introduce a growing number of defects and even make these devices more sensitive to external influences. It is, therefore, likely that the emerging ...
|
|
|
It is known that in critical systems that need reliability, computer software and hardware are being used that was invented 20 years ago.
Computers in cars for example. The microprocessors that ar...
|
|
Commentson Unreliability of computer software |
 |
"2. If builders built buildings the way programmers write programs, then the first woodpecker to come along would destroy civilization"
That's not entirely fair, since we've been building structure... - Yifei Wu
First off, not all developers write flimsy code. Some of us experts write code that's solid, meaning it runs optimally and indefinitely without failure. Writing solid code is easy, it's just account... - Jim Bruin
[READ ALL COMMENTS]
|
Notify me of New Entries on this Page
Receive an email whenever a new solution or comment is added to this problem. You can unsubscribe at any time.
Become a Problem Solver
Help solve problems for pay or for the Common Good. Use your expertise to help companies solve problems and get paid for every accepted solution. Or volunteer to work on solving problems for the Common Good.
[REGISTER]
Volunteer to be a Moderator
If you are a regular contributor and are passionate about one or more topics, IdeaConnection is interested in talking to you about becoming a moderator. Please [REGISTER] as a member and [EMAIL US] your interest.
Solution Seekers: Risk-Free Problem Solving
IdeaConnection.com has thousands of expert, experienced Problem Solvers who can work collaboratively on new and innovative solutions to this problem. Risk-free: you pay only for satisfactory results. Hire a [TEAM OF EXPERTS]
|
Become a Paid Problem Solver
Sign up for our free weekly Innovation Newsletter
|