ツールを納品する前に、私が必ずやっていること

ツールを納品する前に、私が必ずやっていること

記事
IT・テクノロジー
こんにちは、コツコツ自動化ラボです。

今日は少し地味な話をします。**納品する前に何をしているか**、という話です。

自動化を頼むかどうか迷っている方から、「作ってもらったあと、ちゃんと動くのか不安で」と言われることがあります。もっともだと思います。だから、私が何をやっているかを正直に書いておきます。

## 一番怖いのは「変なデータが来たとき」

ツールが壊れるのは、たいてい**想定外のデータが入ったとき**です。

作った本人が試すときは、きれいなデータで試します。だから当然うまく動く。でも実際の現場のデータには、こういうものが混ざります。

・退勤が出勤より早い(22時から翌5時まで働いた)
・休憩が勤務時間より長い(入力ミス)
・行が空っぽ(その日は休み)
・日付だけあって、時刻が入っていない
・見出しの行が、途中にもう一度出てくる

こういうデータが来たときに、黙って変な数字を出すのが一番まずい。**間違っていることに、誰も気づけない**からです。

## だから、わざと変なデータを入れて試します

私は納品前に、こういうデータを**わざと**流し込んで確認しています。

「日をまたぐ勤務は、ちゃんと翌日までとして計算されるか」
「休憩が長すぎる行は、マイナスの数字を出さずにエラーとして知らせるか」
「空っぽの行は、エラーにせず静かに読み飛ばすか」

しかもこれを、手で毎回やるのは無理があります。直したときに、前に直したところが壊れる——いわゆる「もぐら叩き」が起きるからです。

なので、**確認そのものを自動化**しています。ボタンひとつで数十項目の検算が走って、一つでも合わなければ止まる。そういう仕組みを、ツールを作るのと一緒に作っています。

たとえば直近で作った勤怠集計のツールは74項目、シフト作成のツールは41項目の検算を通してから納品しています。

## 実際に、それで見つかった間違い

きれいごとに聞こえると嫌なので、実際に見つかったものを書きます。

**その1:休憩の列を、勘違いして読んでいた**
サンプルのデータで休憩が全部「0分」になっていました。「休憩」という見出しの列を、私のプログラムが別の意味に取り違えていたのが原因でした。出品用の画像を作っていて、たまたま気づきました。

**その2:別の月のデータを取り込むと、集計が空に見える**
7月を表示している状態で8月のデータを取り込むと、月の切り替えが元に戻ってしまい、集計が空っぽに見える——という不具合がありました。2つのツールをつなぐテストをしていて発覚しました。

どちらも、きれいなデータで普通に触っているだけなら気づきません。**買った人が最初に困る種類の不具合**です。

## なぜここまでやるのか

理由は単純です。

**買った人は、動かなかったときに困る相手がいない。**

社内システムなら情報システム部門に聞けます。でも数千円のツールを買った人は、うまく動かなければ「買って損した」で終わってしまいます。それは一番申し訳ないことだと思っています。

だから、私が先に壊しておきます。**私が壊れるところを見つけておけば、その人は壊れないところだけを使える。**

## 見えないところを、どう選ぶか

自動化を誰に頼むか迷ったとき、機能の一覧だけでは判断が難しいと思います。機能はどこも似たようなことを書きますから。

もし判断の材料が欲しければ、こう聞いてみてください。

**「変なデータが入ったとき、どうなりますか?」**

この質問に具体的に答えられる人は、たぶんちゃんと試しています。「そういうデータは入れないでください」という答えなら、少し注意したほうがいいかもしれません。現場のデータは、必ず変なものが混ざるからです。

私は、地味でも壊れないもののほうが、結局は長く使ってもらえると思っています。

コツコツ自動化ラボでした。
サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す