AES-CTL 精算機でレシート発行後 操作不可となる問題を解決する
読者の皆さん始めまして。入社10年目のソフト担当(B)です。
「AES-PDM:明細表取り出し口のLED表示異常」の担当(A)とは同期で、日々コキ扱われながらソフト開発を行っています。
以前に発生させてしまった問題の内容とその後の取り組みについて、紹介します。
-
まず、問題内容としては
AES-CTL(以降 精算機)にて精算額0円の精算を行うと、「ありがとうございました」画面が表示され続けTOP画面に遷移されなかった。
-
ログを調査してみた
精算機は、精算完了後に取引結果をサーバーに送信しています。
現地から採取したログを確認すると、精算額が0円の場合は、サーバーからレスポンスとして「異常」が返ってきていた。
-
原因は?
サーバーから「異常」が返ってきた場合は、エラー画面に遷移しなくてはならないが、アプリの不具合によりどこにも遷移できなくなっていた。
結果として精算機は「ありがとうございました」画面が表示され続け、動作を継続することが出来なくなってしまった・・・。
-
-
修正作業、まずは、サーバー側
精算金額0円による精算は異常となる精算ではないためサーバー会社に0円による精算結果のレスポンス内容を正常に修正していただきました。
-
修正作業、次は、精算機側
サーバーから異常が返ってきたときにエラー画面に遷移する様に修正。
また、精算金が0円の場合は、「精算はありません」画面を表示させる様に追加した。
-
今回の失敗を振り返ってみました
取引結果をサーバーに送信して、サーバーからのレスポンスが異常であった場合の検証を実施していれば流出は防げた内容だったが、
事前に用意された検証環境では、サーバーからのレスポンスで「異常」が返って来ることは無く、サーバー通信は問題が無いものと誤認していた。
検証環境を整える事ができておらず確認すべき内容が確認できていないのが問題、本番環境もしくは、本番環境に近い環境を用意して、検証環境を整えた上で確認する事が重要だった。
※簡単に書いていますがこの環境を整えるが意外と大変です。
見積りにも含まれていない可能性がある・・・(ボヤキ)
-
取り組みの結果
AES-EKOにて実環境でサーバーとの通信確認を行う為に事前にお客様へ実施するテストの要望を行い直接お客様へ訪問させて頂きテストを実施しています。
出張が大変(お客様なので気を使う・・・)で、複数回訪問が必要となる場合が有るが、その甲斐あって、ソフトの問題、通信仕様書の誤り、ネットワーク環境の問題などを発見する事ができました。
閲覧いただきありがとうございました。