スポンサーリンク
「自動改札機の運賃計算プログラムはいかにデバッグされているのか? 10の40乗という運賃パターンのテスト方法を開発者が解説」を読んで、「鉄道の運賃計算プログラムのテストすげー」と思った人も多いかと思います。
スポンサーリンク
しかし乗り越し精算機が・・・
これで思い出した画像をご覧ください。
これは、先月JR東日本の乗り越し精算機を使ったときの画像です。
私はぱっと見て「乗り越し精算機にこんな簡単なバグがあるの????」と思いました。なぜなら、「カード投入金額(260円)」から「精算金額(130円)」を差し引いた値が「カード残額(131円)」と一致していないからです。
運賃計算プログラムのデバッグ手法記事を読んで「鉄道運賃のテストすげー」と思ってから見たらショックを受けそうな画面です。
お金が増えた?
これを見て、「1円増えた!」と思うかもしれませんが、実はこのときSuicaに入っていたのは260円ではなくて261円だったのです。つまり、間違っているのは「カード投入金額」です。
なので、「カード残額261円のうち、投入したのは260円であって間違っていない、そして、カードの残額は確かに130円引かれて131円で何も間違っていない!!!」と言えないことはない、かもしれません。
仕様?にしても・・・
券売機に1円を投入することはできないので、1円の位が常に0になる仕様なのかもしれません。しかし、Suicaに入っている金額なんて覚えていないので、あれを見たらSuicaの中身は260円だったのだろうと思って混乱すると思います。実際自分も混乱しました。計算が間違っているようにしか見えません。実際「えっ?」と混乱してたら精算済みを表す切符が吸い込まれて駅員さんに手渡ししてもらうことになりましたし。
バグだか仕様だか、分かりにくいだけなのだか、いろいろ予想できそうなのですが、やはりどちらにしろあの記事を読んだ後に遭遇したらショックを受けそうな画面です。
追記
やはりSuicaが10円刻みでしか使えないことから起因する表示のようです。
@did2memo 23条の2ですな: jreast.co.jp/suica/etc/rule… 例の記事の読み方としては、10円未満が使えないということもテストしなければならないから大変ですね……
— Fuminobu TAKEYAMAさん (@ftake) 9月 24, 2012
@did2memo 確か、Suicaの利用案内に書いてあったけど、運賃に使うときは、10円単位(切り捨て)でしか使えないというルールだった気が。例えば、残額が261円で、270円を払うときに、9円を入れることができない。「なので」からの文章はその通りかと。
— Fuminobu TAKEYAMAさん (@ftake) 9月 24, 2012
Suicaの残額を覚えていたり、必要な金額が270円とかだったらまた違ったはずなので、数字の組合せがちょうど誤解しやすかったのかもしれません。
RT @tomooda: 検証(Verification)だけでなく妥当性検証(Validation)が大事だよね、という好例。 RT j.mp/NNpPiM 例の「運賃計算プログラムデバッグ記事」読了後に見たらショックを受けそうな乗り越し精算機の画面
— Kazuyuki Numataさん (@primnum) 9月 25, 2012
『例の「運賃計算プログラムデバッグ記事」読了後に見たらショックを受けそうな乗り越し精算機の画面』 bit.ly/SjWEER 仕様としては正しいが誤解を生むので何か回避策を検討すべき
— LM-7さん (@LunarModule7) 9月 25, 2012
スポンサーリンク
コメント(2)
新しいコメントを投稿
スポンサーリンク
|HOME|
『海外でBig Data・Hadoopをテーマに俳句コンテスト(英語)が開催中なのを発見してわかったこと』 OLD >>
2012年9月25日(火) 00:35
マクドナルドでもEdyで10円単位でしか払えませんでした。
理由を知りたかったので(Edyの仕様なのかマックとEdy間の契約の話なのか店員が未熟なのか)聞いてみたら、店長さんが出てきたりヘルプデスクに問い合わせてみたり色々やってくれましたが、最終的にはマックには1円単位の商品が無いので・・・という訳の分からない説明になり、商品と購入代金を渡されたので、とっとと帰れってことかと判断し店を出ました。税率が8%とか13%になったらどうなるんですかね。
2012年9月25日(火) 01:31
>怒鳴るど
10円単位でしか支払いできないとしても、多めに払ったところで10円未満はカードに残るので、税率がどうなろうと問題にはならないと思います。