こんにちは。hikaru です。

先々週に開催された、「ソフトウェア品質シンポジウム 2012」
でのオムロンの公演のまとめ記事がすごかったので、
今日はこれについて取り上げてみます。
記事はこちら (外部リンク)

オムロンの作っている自動改札機についてのお話で、
切符でも IC カードでも、一瞬のうちに正しく運賃を計算してくれます。

ただ、乗り換えが複数通りあったり、定期の区間があったりと、
想像しただけでも膨大な組み合わせがあります。

この運賃計算は、どのようにデバッグ (欠陥の修正) されているのでしょう。

運賃のパターンは、関東だけでも 10 の 40 乗通り (10 を 40 回掛ける)
もあるそうです。

まずはパターンの絞り込み。
現実的にありえないパターンを除いたり、
組み合わせがかぶるパターン (笹塚→新宿 と 笹塚→新宿→大手町) を除いたり、
許容範囲内での絞り込み (自線内の乗り換えは1回まで) を行ったりして、
1000 万件程度まで絞り込みます。

そして、このパターンが正しいかどうかは、
運賃計算ソフトウェアを、実機用・検証用と 2 つ作って検証します。

2 つのソフトウェアは、同じ環境で作ると同じミスが起こり得るので、
別のチーム・別のアルゴリズム・別のプログラミング言語
で作るのだそうです。

また更に、もととなる運賃データが間違っていないかチェックするために、
検証用は手入力でデータをチェックするんだとか。

更に更に、実機では、CPU やメモリの容量が限られているので、
そういった環境でも安定したものを作るのがたいへんなんだとか。

私達が何気なく使っている自動改札機ですが、
裏ではこんな苦労があったのですね。。。

アーカイブ

Kmonos(クモノス)ブログについて

2024年4月
1234567
891011121314
15161718192021
22232425262728
2930