開発秘話

後編:すごいのは仕組みではなく、仕組みが要らないこと パート2

前編では、清掃の順番を変えるだけで取れる予約があった、という話を書きました。今回はその続きです。

直したあとに、宿題がひとつ残っていました。お客様がお名前を入力している数分のあいだに、枠が消えることがあるのです。

清掃スタッフの都合を条件に入れたせいで、別の部屋どうしがぶつかるようになりました。A室を取ろうとしている数分のあいだにB室が埋まると、清掃が回らなくなってA室が取れない。部屋は空いているのに、です。

お支払いの画面まで進んでから「取れませんでした」は、いちばん避けたい形です。そこで、確認画面へ進んだ瞬間に15分お部屋を押さえることにしました。ホテルの予約サイトでよく見る、あの形です。

確認画面。上端に「お取り置き中 残り14:37」と出て、1秒ずつ減っていきます。
確認画面。上端に「お取り置き中 残り14:37」と出て、1秒ずつ減っていきます。

受付の方は、きっとこう思う

お取り置きを、お客様の画面だけに出したのでは半分です。店舗の受付が知らなければ、同じ枠を電話で売ってしまいます。ですから管理画面にも出す。ここまでは最初から決めていました。

考えたのは、その次です。受付の方が画面を見て、きっとこう思う場面を想像しました。

このサイトは、どこで開かれているか分かりません。旅先のホテルからでも、隣町のご自宅からでも予約できます。その方の画面のタイマーが、どうしてうちの管理画面に出るんですか。

よろずテックが大事にしているのは、現場の状況を想定して、必要なことを先読みして実装するという考え方です。言われてから直すのではなく、言われる前に用意しておく。今回で言えば、秒まで一致していることがその中身でした。

分単位で変わる数字では、受付は電話口で答えられません。「あと3分です」と言った次の瞬間もまだ3分のままでは、待っているのか終わったのか分かりません。電話の向こうは無言です。こちらの背中には汗です。

最初に書きかけたのは、大がかりなほう

正直に書くと、最初に手をつけたのは大がかりなほうでした。

「管理画面から、30秒ごとにサーバーへ聞き直そう」

書き始めて、手が止まりました。30秒では秒まで揃いません。では10秒か、5秒か。短くするほど通信が増えます。秒を数えるために、秒を数えとる。そらあかんわ。

そこで、そもそも聞きに行く必要があるのかと考え直しました。

お取り置きの期限は、「22時27分25秒まで」という時刻として記録してあります。「あと15分」という残りの長さでは持っていません。

だとすれば、お客様の画面も管理画面も、その時刻に向かって自分で数えればいいだけです。

同じ締切を見て、それぞれが自分で数える。だから同期の仕組みが要らない。
同じ締切を見て、それぞれが自分で数える。だから同期の仕組みが要らない。

状態を配るのではなく、締切を配る。 これだけで、通信も同期もなしに秒まで一致します。片方が数え間違えることもありません。時計は、どちらの画面にもあるのですから。

すごいのは仕組みではなく、仕組みが要らないこと

このとき手元に残った言葉を、一言にするとこうなります。

すごいのは仕組みではなく、仕組みが要らないことです。

禅問答みたいですが、中身はとても生活くさい話です。

30秒ごとに聞き直す方式でも、たしかに動いたでしょう。でもそれは、部品が1つ増えるということです。通信が増え、失敗したときの後始末が要り、間隔をいくつにするか悩み、回線が詰まったら何が起きるかを考え続けることになります。動いているあいだは誰も褒めてくれないのに、壊れたときだけ呼び出される部品です。だいたい呼び出されるのは日曜の夜です。

締切を配るだけなら、その部品は最初から存在しません。無いものは壊れません。

「作らない」ほうが、実は難しい

ただ、これが簡単かというと、まったくそんなことはありません。

作るほうが、むしろラクなのです。「30秒ごとに聞き直す」は思いついてすぐ書けますし、手が動くぶん、進んだ気持ちにもなります。気持ちだけですが。

いっぽう「聞き直さなくていい理由」を見つけるには、いま自分が何を持っているのかを正確に知っている必要があります。今回なら「期限を『あと15分』ではなく『22時27分25秒まで』で持っている」という一点。それだけです。

そこで立ち止まれるかどうかは、才能ではなく順番の問題だと思っています。手を動かす前に、現場でどう使われるかを一度最後まで思い描く。受付の方が電話を取りながらこの画面を見る、その一場面まで想像すると、30秒ごとに聞き直す案は答えとして雑だと分かります。

先読みして作ると、部品はむしろ減る

前編の清掃の話は、オーナー様の「C室の清掃が予約にかぶっています」という一言から始まりました。画面を見ただけの違和感です。あの一言がなければ、取れるはずの予約を静かに断り続けていました。

ただ、そこから先はご依頼をいただいたものではありません。締切の早い部屋から片づけること。決済の前に席を押さえること。その残り時間を、両方の画面で秒まで揃えること。どれも現場でこうなるはずだと想定して、先回りで組んだものです。

言われてから直すと、そのあいだ現場が困ります。売り逃した枠は戻ってきません。そして慌てて足した機能は、たいてい部品が増えます。

先に思い描いてから作ると、逆に減ります。困る場面がはっきり見えているぶん、何が要らないかもはっきりするからです。

いま、管理画面はこうなっています

お客様がネットで入力を始めると、管理画面の同じ時間帯に、縞模様の帯がすっと出ます。そこには残り時間が、秒まで表示されます。

残り1分を切ると赤くなります。時間が過ぎれば、帯は勝手に消えます。受付は「もう少しでお取りできそうです」とお答えできます。

通信は、新しいお取り置きを拾うときだけ。1回あたり150バイト。メール1通よりずっと軽いです。

大がかりな仕掛けは、ひとつもありません。

契約の前に、完成形を触ってください

集客サイト・Web予約・店舗管理・SNS自動化まで、ひとつの土台で。実際の画面をそのままお試しいただけます。

← 記事一覧へ ← さわれるカタログへ戻る