プログラム


先日吹っ飛んでしまったMOのデータだが、なんとパソコンの中にバックアップを見つけた。
以前そのMOを読み込んだ時にMOドライブから発生する音がおかしかったので、何となく嫌な予感がして、HDの片隅に自分でバックアップを取っておいたのだ。
バックアップを取ったこと自体を忘れてしまったのでは意味が無いが・・・(笑)

昨日は大好きな(笑)PASMOの改札が壊れてしまい、首都圏の鉄道が混乱した。
機械なんて往々にして壊れるものだが、昨日のような大事態に発展して、しかもお金が絡んでいるとなると、大きな責任問題につながるのだろう。
会社の株価にだって影響するはずだ。

世の中に完全なプログラムは存在しない、と言われるほどプログラムというのは不完全なものだ。
ありとあらゆる可能性を考慮して・・なんて簡単に言うが、この世にはほぼ無限に近い可能性が存在するわけだから、そんな事は不可能である。

しかし、僕が今更言うことでもないだろうが、システムを設計する時には、どういうエラーが発生し得るのか・・という可能性を十分に洗い出し、問題の起きない対処方法を検討しておく必要がある。
昨日の事故に関する詳しいことはわからないが、想像では、あるエラーが発生した際に「とりあえず機械をそこで止めて・・」という安易なロジックの組み方がしてあったように思える。
1台や2台の機械ならそれでも良かったろうが、ホストにつながるすべての機械が止まってしまった。(全部想像です)
とにかく止めてしまう、という対処法が具体的に何を引き起こすか・・・までは考えていなかったということだろうか?

いや、作った人に言わせれば、それほど単純なことではないかもしれない。
テストは十分に行っているかもしれないし、そのまま動かしたらもっと重大なエラーにつながったのかもしれない。
プログラムの設計というのは本当に神経を遣う仕事だと思う。

ユーザーとしては、そのくらいのことでは騒がない、「仕方ないね」とさらりと受け流す心構えが必要だ(笑)
メーカーはそうはいかないだろうが・・・

S5 Pro + Carl Zeiss Makro Planar T* 100mm F2 ZF
コメント ( 0 ) | Trackback ( 0 )