N's life

音楽とか読書とか,日々のあれこれ

実機テストはだいじって話

f:id:Tachi_4423:20161228013757j:plain
ちょっと前に,教育用のArduinoシールドを試作しました.そこそこうまく動いたので,基板を発注して量産することにしました.

f:id:Tachi_4423:20161228014038p:plain
もちろん事前に,回路図もパターン図もチェックしました.

f:id:Tachi_4423:20161228014324j:plain
これができあがり.わーいわーい....


が,
f:id:Tachi_4423:20161228014357j:plain
UNOに挿すと,コネクタと当たる orz

f:id:Tachi_4423:20161228014548j:plain
パターンミスもあって,ジャンパー線が飛ぶ ..

しかしまあ,「こんなこともあろうかと」,5枚だけ事前試作をしたやつなのでした.こういうことは,ありがち.作ってみないとわからないことってあるものです.ちゃんと,現物でチェック/テストをすることが大切.

人がものを作る以上,必ずミスは出ます.
以前,とあるクルマメーカーの偉い方に,「うちはバグると人死にますから」って,笑顔で言われました.もちろん,目は笑ってません.

そんなこと実際にはなかろうもんと思ったらおお間違え.世界にはごまんと事例があります.ハードウェアはまだ,目で見てわかる部分がたくさんあります.一方でソフトウェアは見えません.これはこわい.

この手の話で最も有名なのが,セラック25という医療装置の事故です.これ,放射線治療器です.ソフトウェアを改修したら... という話.詳しいいきさつは,このレポートを読んでみてください.

http://www.kisc.meiji.ac.jp/~ethicj/CASE_THERAC.pdf

見えないソフトで放射線という見えないものを制御するこわさ.
ソフトウェア開発に携わる人は,たとえ一見人命や財産に関係ないような分野であっても,心に刻んでおくべき内容と思います.

ここまで極端なことはなくとも,きちんと現物で検証するということは大切です.
3現主義という言葉もあります.現地,現物,現実の,3つを意味します.
システムは,実験室ではなく,現場で使われます.
そこには,思いもよらないことが待ち受けています.
最後は本物で検証すること.
ものづくりで忘れてはいけない,大切な工程です.