Safety and Software

What does it mean to be safe? Safety does not mean no risk. You accept the risks. Insurance companies will insure you only if you accept the mitigations. E.g. Cannot fly an aircraft unless you are insured.

Consider this scenario: Assume you are working at a company that develops software that is not safety critical. Do you think that the development team should still be striving to eliminate all defects in the software product?

There are a number of things to consider when trying to answer this question. On one hand, it is a developer’s professional responsibility to their employer, and to the users of their systems, to produce quality software. A developer’s employer may be risking their reputation and their brand on the quality of their products.

On the other hand, the employer and their customers are probably cost conscious.

There are tradeoffs between improving software quality versus completing the product or release on time and within budget.

Thus, the development team needs to weigh the benefits of fixing additional bugs against the potential costs to the release time or the development budget.

At the very least, the employer will want to eliminate enough defects to avoid litigation due to quality problems. Successfully suing a software developer or company for a single software error doesn’t occur often, but there are grounds for a lawsuit if a developer’s work is so sloppy it is considered negligent.