如果你是安全关键嵌入式系统的使用者,而且发现设计者在该装置的设计上并没有依循最佳的实作与安全性标准,你会有多担心?我知道我会非常不安,而且根据Barr Group最近做的年度嵌入式系统安全性调查显示,我们所有人都需要感到忧虑。
Barr Group刚刚完成来自2,400位受访者的资料分析,这些受访者都是目前从事嵌入式装置设计的工程师;藉由这些遍布全球各地(其中有46%来自北美、33%来自欧洲)的工程师样本,我们很开心地了解到工程师们的设计哲学与实践,以及与安全性的关联。不过我们也从调查结果看到了刻不容缓需要解决的问题──每个人都应该要停下来想一想。
调查结果显示,有22%的受访者表示他们目前正在从事的装置设计,是关乎人身安全──很令人惊讶吗?但在我们问到他们所设计的装置如果发生故障,会出现的最糟情况是什么时,有超过500位受访者表示可能会造成一个甚至更多的人死亡!这些受访者大多数是任职于工业自动化、医疗装置、汽车以及航太产业。
那些产业所制造的装置攸关安全并不令人意外,但透过这场大规模的调查,我们想知道这些设计工程师是否有依循安全性标准,以及诉求可靠度与可维护性的最佳实作方法;包括IEC、FDA、FAA、NHTSA、SAE、IEEE、MISRA等等专业机构与产业组织都针对工程设计安全性建立标准,我们本来预期受访者应该会有接近百分之百肯定的回覆。
但遗憾的是,完全不是这个情形!──只有67%的受访者表示他们的设计依循安全性标准,有22%却表示并没有,还有11%甚至不知道是否他们正在从事的设计有安全标准。这也就是说,每三台攸关安全的装置设计中,就可能有一台在安全性、可靠度或是品质上有漏洞,而且没有被妥善关注或审核,这真的让人非常担心。
接着让我们继续更深入一点探讨:要符合产业安全性标准,可能耗费大量成本与时间,那么要实现一个优良设计的其他最佳实作呢?例如在软体设计上使用编码标准、程式码审查以及统计分析?在这个技术领域从事攸关安全装置设计的工程师受访者们的回应更令人担心了,请看下图的统计:
从事攸关安全嵌入式装置设计的软体工程师们,在写程式时是这样的…
为何以上这些问题回答“是”的受访者数字都没有接近百分之百?我们曾在不久前于德国举行的Embedded World嵌入式设计研讨会上发表调查结果,而我看到很多听众的反应都是惊讶以及怀疑;那些反应是忧虑我们的调查结果是不是真的,还有怀疑那样的统计数字是不是可能出错。
怀疑论者有很多意见,有人质疑我们的调查数字有偏颇,因为我们的受访者并非全部都是软体工程师,因此可能并不知道软体开发工程师的实作方法;但我们并不认为这是个问题,因为这是根据受访者回答资料的统计分析(事实上在我们的受访者中,只有6%表示他们仅从事硬体设计)。
还有一些人质疑,是否在统计中有地域性的偏颇,但我们再次强调,因为我们取得来自北美、欧洲以及亚洲的广大受访者资料,我们认为统计数字是良好呈现工程师想法的最大值。
也有人质疑,是否那些工程师们其实是设计攸关安全性装置中非关键性子系统(例如汽车内的卫星广播装置)?但根据我们的观察,今日装置的互连与安全性挑战,就算是非关键性子系统也可能会影响到整体系统的其他部分。
以上的调查结果促使我们所有人应该要关注这个情况;主管们需要了解安全的重要性,而且必须将之烙印在设计专案时间表以及预算表中。而实际情况是我们大家都需要知道,在这个物联网(IoT)的时代,我们的装置对全球的基础建设越来越关键。
我们所有人都必须贡献时间、资源以及金钱来改善产品的可靠度,如果我们能这么做,而且持续下去,才能保障所有人的生命安全(因此所有的企业才能不至于蒙受更大的损失)。