IdeaConnection.com 
Access Teams of Expert Solvers led by World-Class Facilitators
Login | Register
Search Solutions:

Unreliability of computer software

Post a Problem
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
Vote UpVote Down

Known Solutions

for Unreliability of computer software



Unit Testing in the Development of Critical Software Applications

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 existing training & literature to learn the best ways to make software more reliable

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 Solutions

for Unreliability of computer software



Computers in Critical Systems

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 ...

Computers in critical systems

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...

Comments

on Unreliability of computer software

Post Comment
"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.
Enter your Email:

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

© 2007-2012 IdeaConnection Ltd. All rights reserved.