開発

新規アプリ公開後の
「配線忘れ」を自動化した話

· SEADICE

SEADICEでは、既知アプリのIDを1つのJSONレジストリで管理し、そこに載っていない新規アプリを検出したら、ジャンルハブ・プライバシー一覧・サイトマップへの反映を自動で行う仕組みにした。人手のチェックリストに頼るのをやめ、40本のアプリを1人で回すための最小限の自動化である。

なぜ「配線忘れ」が起きるのか

アプリを1本作るとlanding・privacyの2ページは必ず作るが、そこから先の反映作業を忘れやすい。

レジストリファイルで「既知のアプリ」を管理する

p/apps/.reflected.jsonという1つのJSON配列に、配線が完了したアプリIDだけを列挙している。

[ "kateisaien-app1", "fitness-app1", "procrastination-type" ]

`p/apps/`配下のディレクトリ一覧とこの配列を突き合わせるだけで、「新規に作られたが、まだどこにも反映されていないアプリ」を機械的に洗い出せる。差分を取るだけなので判定に迷いが生じない。

新規アプリ検出時に自動でやること

  1. アプリのindex.htmlから正式名称と一行説明を読み取る
  2. 該当ジャンルのハブページ(例: p/tools/fitness/)にカードを追加
  3. プライバシーポリシーページが存在すれば一覧に追加。存在しなければ人間向けにToDoとして記録
  4. sitemap.xmlにapp・privacyのURLを追加
  5. すべて終わったらレジストリにIDを追加し、二度と再判定しない

一部だけ完了した場合の扱い

プライバシーページが未作成などで一部の手順しか終わらなくても、IDは必ずレジストリに追加し、未完了項目だけをサマリーで報告する運用にしている。

途中で失敗したアプリを毎回リトライし続けると、いつまでも「新規アプリ」として扱われ続けて無限にノイズを生む。1回判定したら記録して次に進み、足りない部分は人間の判断に戻す方が結果的に速い。

40本を1人で回すための最小限の自動化

現在SEADICEには40本のアプリが登録されており、ジャンルハブは9カテゴリに分かれている。この規模になると、公開のたびに全ファイルを目視確認するコストの方が、レジストリを1つ用意するコストより高くつく。

方式反映漏れのリスク確認コスト
都度チェックリストを目視高い(本数が増えるほど悪化)アプリ数に比例して増加
レジストリとの差分検出低い(未登録IDが必ず検出される)ディレクトリ一覧とJSONの突合のみ

Related

診断系アプリを11本作って見えた共通パターン — ジャンル選定・構成・ASOの型 →

← ブログ一覧に戻る