Bifalgorithm post · Computer science one · Error Handling

Why must software handle errors in addition to avoiding bugs?

Why must software handle errors in addition to avoiding bugs? (Computer science one · Error Handling) — "Even if code contains no bugs, it is still susceptible…

Ideas in this flowchart

  • Error handling and resilient software design
  • Bug-free code is still susceptible to errors.
  • A program may connect to a remote database to query and process data.
  • The network connection may be temporarily unavailable.
  • The program then cannot execute properly.
  • Error handling means anticipating error conditions and detecting, preventing, or recovering from them.
  • Code should be robust and resilient in addition to being bug-free.
  • Software engineering practices were pioneered by people such as Margaret Hamilton.
  • Margaret Hamilton was the lead Apollo flight software designer at NASA.
  • During the Apollo 11 Moon landing, an error caused the lander's computer to become overworked with data.
  • The robust architecture detected the situation and prioritized landing tasks over lower-priority tasks.
  • The system's built-in resilience is credited with its success.
Feed/

Why must software handle errors in addition to avoiding bugs?

No cover

Channel

Computer science one

1 page

"Even if code contains no bugs, it is still susceptible to errors. For example, a program could connect to a remote database to query and process data. However, if the network connection is temporarily unavailable, the program will not be able to execute properly. Because of the potential of such errors, it is important to write code that is not only bug free but is also robust and resilient. We must anticipate possible error conditions and write code to detect, prevent, or recover from such errors. Generally, this is referred to as error handling . Much of what we now consider Software Engineering was pioneered by people like Margaret Hamilton who was the lead Apollo flight software designer at NASA. During the Apollo 11 Moon landing (1969), an error in one system caused the lander’s computer to become overworked with data. However, because the system was designed with a robust architecture, it could detect and handle such situations by prioritizing more important tasks (those related to landing) over lower priority tasks. The resilience that was built into the system is credited with its success [11]."

Flowchart preview
👍
0
0 comments0 shares

Sign in to view and post comments.