← ケース一覧 AI SHOWCASE
レギュラー 欠席 一時利用 祝日 変更
あの子は来る? 来ない? 何時?
3つの表
CASE 02 / 学童あそびのば

明日だれが来るか、毎朝3つの表を見比べていた

日別名簿エンジン
学童裏方(画面がない)4アプリが利用2026年6月〜
01 こまりごと

「その日だれが来るか」は、どこにも書いていない

学童は、来る日も帰る時間も子どもごとにバラバラです。しかも当日まで変わります。 「明日だれが来るか」という一番大事な情報が、実はどこにも一覧になっていませんでした。

1人の子が「明日来るか」を知るために、見るもの

  1. いつもの利用曜日(毎週この曜日に来る、という登録)
  2. 今日届いた欠席の連絡(フォームやLINEで届く)
  3. 帰る時間の変更(今日だけ16時に帰ります、など)
  4. 長期休暇の申し込み(夏休みは別のフォームで申し込む)
  5. 祝日の申し込み(祝日は「いつもの曜日」が効かない)
これを毎朝、人が見比べて頭の中で合体させていました。
間違えると、来ない子を待ち続けるか、来た子の分の準備がない。 しかも、この作業を4つのアプリがそれぞれ別々にやろうとしていました。
02 どう解いたか

画面のないアプリを、まん中に1つ作った

作ったのは画面のないアプリです。「◯月◯日」と聞かれたら、その日に来る子の一覧を計算して返すだけ。 現場の人は誰もこれを直接は見ません。でも、現場が使う4つのアプリが全部これを見ています。

ぜんぶ、ここを通る
入れるところ 保護者のフォーム 欠席・帰る時間・一時利用 運営の画面 いつもの利用曜日 名簿(学年・組) あそびのばカレンダー 日別名簿エンジン 「◯月◯日」と聞かれたら その日の全員を1人1行で返す 現場が使うアプリ 教室モニターの表示 登所・帰宅の打刻 宿題チェック シフトの可視化 直す場所は、入れるところ ただ1つ ここが間違うと、4つが同時に間違う
入れるところ 保護者フォーム 運営の画面 名簿 カレンダー 日別名簿エンジン 「◯月◯日」と聞かれたら その日の全員を1人1行で返す 現場が使うアプリ 教室モニターの表示 登所・帰宅の打刻 宿題チェック シフトの可視化 直す場所は、入れるところ ただ1つ ここが間違うと、4つが同時に間違う

現場の人が触るのは左だけ。右の4つは、この計算結果を読むだけで、自分では判断しない。

03 なかみ

いちばん大事なのは「どれを優先するか」

同じ子について、複数の情報が同時に届きます。「いつもは月曜に来る」「でも今日は休むと連絡があった」。 そこで1人につき1行だけになるよう、優先順位を決めてあります。

同じ子に複数あたったら、上が勝つ
1 きょうは休みます =来ない。ほかに何が来ていても勝つ 2 帰る時間・帰り方の変更 来るけれど、いつもと違う時間に帰る 3 一時利用(今日だけ来る) 4 長期休暇・祝日の申し込み 5 いつもの利用曜日 祝日は「いつもの曜日」を数えない 申し込んだ子だけが来る

この順番を決めていないと、同じ子が2行出たり、休むはずの子が名簿に残ったりする。

まん中に置いたものが壊れると、4つ同時に壊れる

1つにまとめるのは正しい。でも1つにまとめた瞬間、そこが弱点になります。実際に3回踏みました。

TROUBLE 01

コードもデータも正しいのに、本番だけ違う答えを返した

ある朝、教室モニターから休暇利用の子が全員消えました。エラーは出ません。ただ、その日の名簿が空に近い状態で表示されていました。

調べると、元のデータは正常。手元で同じプログラムを動かすと正しい答えが出る。コードも変えていない。 つまり「本番に置いてあるプログラムだけが、同じ入力に違う答えを返していた」。 表の一部の列だけが読めなくなる、という壊れ方でした。

直し方は、同じものをもう一度置き直すだけ。それで直りました。原因は分かっても、いつまた起きるかは分かりません。

ここから決めたルール

・原因が特定できないなら、気づける仕組みのほうを作る

・平日の朝と昼に、本番の答えと手元で計算した答えを突き合わせて、食い違ったらMacに通知が出るようにした

・「人数が0人」「返事がない」「古いデータで代用している」も同じように知らせる

TROUBLE 02

連絡の入口を新しくしたのに、出口が古いままだった

保護者からの連絡フォームを新しいものに差し替えた翌日、欠席の連絡2件が、どのアプリにも出ませんでした。

原因は単純で、まん中のエンジンがまだ古い置き場所だけを見ていたこと。 保護者はちゃんと送っている。新しいフォームにはちゃんと届いている。 でも、そこを読むように直していなかったので、connectされないまま静かに落ちていました。
ここから決めたルール

・入口を変えるときは、読む側を先に直す(両方読めるようにしてから、古い方を止める)

・いまどちらを読んで計算したのかを、答えの中に必ず書いて返す。読めていなければすぐ分かる

TROUBLE 03

「#N/A」という名前の子が、モニターに出た

教室のモニターの「きょうのおやすみ」に、#N/A と表示されました。

表計算の数式が、名簿にない名前を引けずにエラーを返し、そのエラーの文字がそのまま名前として下流に配られていた。 保護者が、子どもの名前ではなく自分の名前で送信したのがきっかけでした。
ここから決めたルール

・表計算のエラー値は名前として使わない。使えないときは、送信された文字をそのまま出す

・ただしこれは「誰の連絡か分かるようにする」保険であって、名前が正しくなるわけではない。そこは人が確認する

05 いま

毎朝の「見比べ」が、なくなった

4
同じ答えを見るアプリ
1か所
直す場所
5段階
1人1行に決める順番
2回/日
壊れていないかの見張り
06 つかっているもの

画面がないから、いちばん丁寧に作った

サーバーレス関数Firebase5分キャッシュ 多段フォールバック定時の自動見張りClaude Code
このケースには見せる画面がありません。それでも、作ったものの中でいちばん大事な部類に入ります。

「同じことを4回考えない」——これが一番効きました。4つのアプリがそれぞれ「今日は誰が来るか」を判断していたら、 4通りの答えが出て、どれが正しいのか誰にも分からなくなります。

まとめる代わりに、そこが壊れたら全部が同時に壊れることも引き受けました。だから見張りを付けています。