リストル:フォームリーチツール開発奮闘記 あ と 3 秒― まだ終わっていない、あるツールの開発記 ―第20話「20台が、いっせいに止まった」

リストル:フォームリーチツール開発奮闘記 あ と 3 秒― まだ終わっていない、あるツールの開発記 ―第20話「20台が、いっせいに止まった」 フォームリーチ開発日誌

これは、一つの営業支援ツールが少しずつ賢くなっていく、いまも続いている記録です。

派手な話は、ほとんど出てきません。
天才も、閃きも、一夜にして世界が変わる瞬間もありません。

あるのは、うまくいかなかった一件を実際に開いて、「なぜだろう」と眺めるところから始まる、ずいぶん地味な時間の積み重ねだけです。

書いていて少し気恥ずかしいのは、出てくる間違いの多くが、笑ってしまうほど単純なことです。

けれど、その単純な間違いを一つずつ拾っていくうちに、成績は「200社に2社」から「5社に1社」まで動きました。
改良の回数は、300を超えています。

『リストル:フォームリーチツール改善奮闘記』によろしければ、お付き合いください😊

フォーム営業の効率化を目指すなら、リストルフォームリーチ
リストル専用:問い合わせフォーム送信ツール『フォームリーチ』詳しくはこちら👆️

レートリミット設定の誤謬。優良顧客を「不正」と誤検知するセキュリティの罠

画像

正しく使っているお客様の環境で、全台が、開始から数秒で止まりました。
20台ありました。

連絡が来たのは、朝でした。
「始めたら、すぐ全部止まってしまって」
こちらの手元では、再現しませんでした。
10台で走らせても、ふつうに動きます。何度やっても、同じです。

違いを探しました。
台数が違います。あちらは20台。
名簿の大きさも違います。あちらのほうが、ずっと大きい。

台数を増やしてみました。こちらでも、止まりました。
これで、再現はしました。
原因は、まだ分かりません。

記録を開いてみると、こう書いてありました。
「短い間隔で送り続けたため、いったん停止しました」

これは、こちらが自分で入れた決まりです。
しばらく前に、不正な使われ方を防ぐために足しました。

このツールが、万一よくない使い方をされたときに、際限なく送り続けることのないよう、短い間隔で送り続けたら、いったん止める。
安全のための決まりです。考え方としては、間違っていません。
ただ、その決まりが、正しく使っているお客様を止めていました。

あっ、と思いました。
このツールは、たくさん送るのが正常な使い方だった。

■ 正常なスケールアウトを「攻撃」と誤認。レートリミット(送信間隔制限)の誤検知

考えてみれば、当たり前の話でした。

このツールは、1日に何100社も送るために作られています。
人の手では間に合わないから作った。
それが、そもそもの始まりでした。

そのツールに、「短い間隔で送り続けたら止める」という決まりを入れれば、正しく使うほど止まります。正しい使い方が、そのまま不正の形をしていた。
しかも、台数が多いほど、早く止まります。
20台で走らせれば、1台のときの倍の速さで送ります。
速く送れば送るほど、決まりに引っかかる。
いちばん本気で使っている方が、いちばん早く止められる作りになっていました。

画像

ここで、どう直すかを、しばらく考えました。
決まりそのものを外すのは、簡単です。ただ、外してしまえば、守りたかったものが守れません。

守りたかったのは、何だったのか。

立ち返って考えると、「速く送ること」を止めたかったわけではありませんでした。止めたかったのは、このツールが、想定していない規模で動かされることでした。速さは、その目印として使っていただけです。

目印が、悪かったのです。
そこで、見るものを変えました。
速さで測るのをやめて、同時に何台動いているかで測る。

■ 監視指標(メトリクス)の再定義とバグ。スループットから「同時接続数」への制限変更

1台がどれだけ速く送っても、止めません。
その代わり、同時に動く台数には上限を置きました。
正しく使っている方は、何10台も同時には動かしません。
動かす必要がないからです。

台数の上限は、お客様ごとに決められるようにしました。

20台使う方は、20台まで。
3台の方は、3台まで。

ここで、笑ってしまう話がありました。
直したあと、こちらで試したところ、今度は1台も動かなくなりました。
上限の数え方を間違えていて、「同時に動いている台数」に、これから動き出す台も、もう終わった台も、全部足していたのです。

最初の1台が動き出した時点で、すでに上限を超えていました。
守り方を変えたつもりが、いちばん厳しい守り方になっていました。
数え方を直して、ようやく落ち着きました。

お客様の環境で、あらためて走らせてもらいました。
20台が、止まらずに動きました。

■ セキュリティ要件のテスト不足と、サイレントエラーを防ぐ監視アラートの構築

この一件のあと、決まりを1つ足しました。

安全のための決まりを入れるときは、「正しく使っている人が、これに引っかからないか」を先に確かめる。

守るための仕組みは、たいてい、悪い使い方を想像しながら作ります。
そのとき、良い使い方のことを、あまり考えません。
考えないまま入れると、良い使い方をしている人だけが困ることがあります。悪い使い方をする人は、そもそも、こちらの決まりの外側にいることが多いのです。

守るものを間違えると、守りたい人を止めてしまう。

画像

もう1つ、この一件で反省したことがあります。

この決まりを入れたとき、こちらでは、3台でしか試していませんでした。
3台なら、引っかかりません。引っかからないので、動いていると思いました。
守りの仕組みは、「働かないこと」を確かめても、意味がありません。
働いたときに、正しい相手に働くかどうか。
それを確かめなければ、確かめたことになりません。
このときは、働かせてすらいませんでした。

入れたあと、いちども発動させないまま、「入れておいた」と思っていたわけです。
いまは、守りの仕組みを入れたら、必ず1度、わざと発動させて確かめます。

止まるべき場面で、きちんと止まるか。
止まるべきでない場面で、止まらないか。
この2つを、両方見ます。
片方だけ見ていると、だいたい、もう片方で転びます。

この回は、お客様にご迷惑をおかけしました。
朝1番で連絡をいただかなければ、その日1日、20台が止まったままでした。
しかも、そのあいだ、こちらの記録では何も起きていないように見えていました。止まっているのは、あちらの環境です。こちらには、何も届きません。

この一件のあと、お客様の環境で止まったことが、こちらにも静かに伝わるようにしました。

毎日、何台が動いて、何台が止まったか。それだけの、短い知らせです。

連絡をいただく前に、こちらから気づけるようにする。
いちばん理想的なのは、困ったことを言われる前に直っていることでした。

■ 代理指標(プロキシメトリクス)の罠。「測りやすい数字」が顧客体験を奪う

この回で、もう1つ考えたことがあります。
止める仕組みを作っているあいだ、思い浮かべていたのは、悪い人のことだけでした。

けれど、こちらが用意した決まりの中で、律儀に引っかかってくれるのは、ほとんどの場合、正しく使っている方です。

守るものを間違えると、守りたい人を止めてしまう。

これを、いまも忘れないようにしています。

もう1つ、この回で学んだことがあります。
何を目印にするかを、慎重に選ぶことです。

画像

このときは、速さを目印にしました。
速さは、測りやすい数字です。だから、つい目印に選びたくなります。
測りやすいことと、本当に見たいことを表しているかどうかは、別です。

見たかったのは、規模でした。
目印にしたのは、速さでした。

その2つがずれていたので、正しく使っている方が引っかかりました。
測りやすいものを目印にするときは、それが本当に見たいものかどうかを、1度、声に出して確かめたほうがいい。

これは、この回にかぎった話ではありませんでした。
教えてくださったことに、あらためて感謝しています。

20台は、また静かに走り出しました。

次の困りごとは、走っている途中ではなく、走り出す、その瞬間に待っていました。

(つづく)


あなたの営業活動を応援します!
営業リスト作成にお困りではありませんか?

→ 営業リスト探しに、もう時間をかけない。
業種別に企業情報をまとめて収集できるリストルを、まずは3,000件まで無料でお試しください。👇

フォーム営業の効率化を目指すなら、リストルフォームリーチ
「営業先を探すだけで時間がかかる」を、もっと効率的に。 ホームページのない企業も含め、業種別に大量の企業リストを収集できます。

📊営業リスト収集ツール「リストル」

タイトルとURLをコピーしました