ユーザーインタフェースに絡んだ事故の可能性
ユーザーが機器を使用する際の行為は図1のように分類することができます。分類の中で、「意図した行為→正しい使用」をしてくれるユーザーだけであれば、設計サイドの技術者は安全設計を意識する必要はあまりありませんが、人間は意図しない行為として「うっかりミス」「過失」「誤り」などをしてしまいがちです。また、製品が設計された地域と出荷され使用される地域に、習慣や慣習の違いがあることに気がつかない場合もあります。例えば、小数点の表示は英国、米国、日本ではピリオド「.」で示しますが、フランスやスペインではカンマ「,」で示すことをご存じでしょうか※2。過失ではないのに、機器の使用者は設計者が意図しない行為を取ることもあるという例です。

組込み機器に求められるユーザビリティ
組込み機器では、ソフトウェアがハードウェアに代わってユーザーインタフェースの機能を担う比率がどんどん高くなっています。それにともない、ソフトウェアエンジニアが製品のユーザビリティ(Usability:使いやすさ)を意識しなければいけなくなっています。ただし、組込み機器におけるユーザビリティには、単なる使いやすさだけでなく、ユーザーが機器を誤使用しにくい、誤使用した場合でも事故を起こさないといった、安全性も含まれます。ユーザーインタフェースは、そうした点も踏まえて設計されなければなりません。
ただし、メーカーが十分にユーザビリティの分析・対策を行ったにもかかわらず、ユーザーが機器を異常使用(Abnormal Use)したとき(図1参照)は、安全が確保できなかったとしても、その責任はユーザー側にあると判断されます。したがって、何が正常使用で何が異常使用かを明記した取り扱い説明書は、組込み機器にとって非常に重要なドキュメントとなります。前述した携帯電話の電池パックの場合、取り扱い説明書に書かれている「危険」「警告」「注意」の行為をして事故が起こった場合の責任はユーザー側にあります。
ところが日本では、法的な責任は追及されないものの、事故が社会問題となり、メーカーが社会的責任を追及されることがよくあります。何十年も前に製造された、とっくの昔に保証の切れた製品が事故を起こした場合でさえもです。日本のように厳しい目を持った消費者が多数派を占める市場では、非常に長い期間有効な安全設計を施すことがエンジニアに求められます。これは、機械系、電気系のエンジニアだけに求められる使命ではありません。組込みソフトエンジニアにも、安全なソフトウェアを設計する責務が求められているのです。
次回は、エレベータの安全ソフトウェア設計について具体的に考えていきます。
