A long term colleague of mine, Daniel Berinson, has published an article called Innovation and Practice in Software and Systems Engineering. In this article Berinson discusses issue with the manner in which safety critical systems are built, and laments the lack of instruction that graduates receive in the fundamentals of constructing safety critical systems.
Berinson makes some critical points:
All fields of endeavour have experienced people who choose to leave and do something different. It's part of the human pysche that likes to be challenged and do different things. In some fields of software development, there are many people coming up through the ranks so the impacts are limited. In other fields, such as medical systems, the number of experienced people is significantly smaller so the departure of just one experienced Engineer leaves a gaping hole that takes a long time to fill. Having had some exposure to safety critical systems in the transportation industry, I have an appreciation for how long that knowledge takes to accumulate. Whilst the hole left by the departure of an experienced Engineer is bad enough, the limited mentoring that less experienced Engineers receive is perhaps a bigger issue. The lessons learned by the experienced Engineer are not passed on, and unfortunately in safety critical systems the lessons are generally learned as the results of an accident or near miss. The Therac-25 radiation machine is an example of where this has proved to be horribly correct.
Selecting which units to teach at University is a tricky thing. Universities exist to teach students, but increasingly they are required to run as a business and are required to ensure that the units break even at a minimum. On this basis, it makes sense for a University to teach the more general units so that they appeal to more students. I agree with Daniel that more needs to be done in this area; however limited R&D funds makes it hard for a University to justify teach unprofitable units and courses.
I'll tackle accreditation in a future post.