You have now seen some of the main concerns
on developing safety driven hardware and software.
For hardware, we discussed how random faults
are unavoidable but must be minimized and detected.
In terms of software, we went over
the basic criteria for choosing a programming language and software tools.
We also showed how the V-model applies to software development.
We then discussed deriving
software safety requirements from technical safety requirements.
And then, we saw other sources of software safety requirements,
such as robustness, quality,
and freedom from interference.
The main point is to use this knowledge for reducing risks and avoiding harm.
Being aware of different sources of faults allows you to make
more robust safety requirements and design safer systems.