JACPA アプリ 設計提案書
印刷ダイアログから「PDFに保存」を選べます

JACPA スクールアプリ 設計提案(v0.1 / 8-3 MTG 用ドラフト)

作成: 2026-07-24 / 根拠: 既存システム調査 5軸(NotebookLM 25ソース)


0. 一言サマリー

「危険物(カード情報・顔写真)は自社に持たず外部の専門SaaSへ。保護者にとっては継ぎ目のない“1つのアプリ”で、体験から写真購入まで完結する。」

会員基盤(コア)は自社でクラウドネイティブに構築し、決済=GMOイプシロン写真販売=フォトクリエイト(スナップスナップ) を疎結合で連携する ハイブリッド構成。これが機能・スケール・セキュリティ・UX・コストの5軸すべてで最適。

1. 背景と狙い

2. 対象ユーザーと主要ジョブ

ロール主要ジョブ
保護者体験申込 / 入会手続き・決済登録 / 欠席・振替 / お知らせ受信 / 月謝確認 / 物販購入 / 写真購入
指導者(日本人講師)スマホで今日の担当会場のクラス出欠を記録 / 個別報告 / 写真アップロード / 園への各種提出
外国人講師(英会話・委託先所属)レッスン実施 / 病欠・遅延連絡(※連絡は委託先経由が現状)
業務委託先(講師派遣パートナー)講師手配・労務 / 休講連絡の窓口 / 講師PII管理(※JACPAは講師個人を直接管理しない)
コミュニケーター(英会話)連絡中継 / 生徒評価入力サポート
支部クラス・スケジュール編成 / 支部内配信 / 在籍管理 / 園連携
事業部(スポーツ / 英会話・TISG)事業別の運営統括 / カリキュラム / テキスト発注 / 講師評価
園(幼稚園・保育園)会員/体験リスト受領 / 募集プリント配布 / スケジュール確認(※園向け共有ビュー)
本部基幹設定 / 料金・契約 / 売上分析 / 全体緊急配信 / 外部SaaS管理

組織階層(現行フローより): 本部/TISG ↔ 事業部(スポーツ・英会話) ↔ 支部 ↔ 指導員/外国人講師/コミュニケーター ↔ 園 ↔ 保護者。TISG=英会話統括と推定(要確認)。

2.5 事業ライン(体育と英会話は別事業)※オーナー指示で必須考慮

2.6 チャネル方針(体験=Web / 入会・会員=アプリ)※オーナー

3. スコープ(領域)と MVP 優先度

  1. 体験管理(申込ファネル・体験当日・フォロー・入会転換・体験者との双方向メッセージ↔メール)… ★MVP
  2. 入会管理(申込→在籍→決済登録→クラス配属)… ★MVP
  3. 会員管理(会員/保護者/きょうだい/クラス/在籍・休会・退会、事業×正課/課外)… ★MVP
  4. 保護者連絡(一斉/個別/出欠/欠席/既読・プッシュ・LINE)… ★MVP
  5. 園連携・運営事務(会員/体験リストの園提出、募集プリント、スケジュール調整、正課カリキュラム提出、役割ベース自動ルーティング)… ★MVP相当(現行の最大の痛点・Sgrum未対応)
  6. 英会話固有(外国人講師管理・病欠ルーティング、テキスト発注、講師/生徒評価)… Phase2
  7. EC ショップ(倉庫連携・管理画面連動)(ユニフォーム・用品。保護者アプリで購入→イプシロン決済、全国の複数倉庫の在庫連携+商品別の発送元ルーティング=マルチ倉庫フルフィルメント、管理画面で商品・在庫・注文・出荷を一元管理)… 運営ダッシュボードと連動して構築。※送料表・倉庫の実所在・配送業者連携等の運用パラメータは要ヒアリング
  8. 写真販売の案内(写真イベントごとにスナップスナップURLを設置→保護者へ案内・送客。JACPA側で連携保有・API不要の軽量実装)… Phase2
  9. 季節イベント・合宿(キャンプ/スキー/サッカー合宿。内部=アプリ先行公開・外部=Web、定員共有で連動、参加者・収支管理)… Phase2

3.1 定員・残枠と体験ページの連動 ※オーナー要望

3.2 年度更新(進級・再配属)※オーナー要望

3.3 全データCSVエクスポート(統制付き)※オーナー要望

3.4 体験申込フォームのUX(種目/コース・学年自動・直近枠提案)※オーナー要望

3.5 体験者マイページ(Web・体験ID+メール)と 入会フロー ※オーナー要望

体験申込後、体験者はアプリ不要のWebマイページでJACPAとやり取りし、入会/辞退まで進める。

4. アーキテクチャ方針(ハイブリッド)

[保護者アプリ (PWA/ネイティブ) ] [運営ダッシュボード (Web)]
            │ SSO/OIDC                    │
   ┌────────┴───────── API Gateway (WAF) ─┴────────┐
   │        自社コア (クラウドネイティブ)            │
   │  認証(Cognito/Auth0) │ 会員DB │ 予約・出欠      │
   │  連絡・通知(キュー非同期) │ 監査ログ             │
   └───┬──────────┬───────────────┬────────────────┘
       │ トークン  │ ディープリンク/SSO
   [GMOイプシロン] [フォトクリエイト]   [LINE / プッシュ / メール]
    決済(非通過型)  写真販売(送客)        通知チャネル

5. データモデル(コア骨子)

6. セキュリティ設計(軸③直結・最優先)

6.1 実装前に凍結する必須統制(Fable5 評価反映 / 評価レポート 参照)

7. 写真販売の案内(フォトクリエイト=JACPA側で関係保有)

7.4 季節イベント・合宿(内部=アプリ先行 / 外部=Web・連動)※オーナー要望

7.5 ECショップ(倉庫連携・管理画面連動)※オーナー要望

7.6 経営データ・分析・月次レポート ※オーナー要望(月次レポートはマスト)

8. スケール/コスト戦略

9. フェーズ計画

10. 8/3 MTG で決めたいこと(論点)

  1. 開発方針=ハイブリッド自社コアで合意可否(vs 既存SaaS採用)。
  2. 写真販売=スナップスナップのURL設置・案内機能で合意(※連携はJACPA側保有・先方打診は不要)。
  3. 決済=GMOイプシロン(代表相談済み)→ プラン選定のみ。
  4. MVP範囲とパイロット支部、移行スケジュール(3万人の段階移行)。
  5. LINE をどこまで一次チャネルにするか。
  6. 体験者メッセージのメール基盤(送信ドメイン・inbound受信)の方針。

11. 継続ヒアリング事項(構築前に確定する)

12. 原価(コスト構造)

技術詳細は 技術スタックと費用感 参照。原価は ①初期(開発)② ランニング(運用) に分かれ、支配的なのは開発費と決済手数料(インフラは相対的に小さい)。

12.1 初期(開発)原価 ※概算・体制(内製/外注)で大きく変動・正式見積は要件凍結後

区分主な作業規模感の目安
要件定義・設計ヒアリング・PRD・データ/セキュリティ設計・UI設計全体の15〜20%
MVP開発体験(Web)→入会→会員→保護者連絡→出欠→決済登録+管理画面概ね ¥15M〜¥40M
拡張(Phase2)EC(倉庫連携)・季節イベント・写真案内・経営ダッシュボード/月次レポート概ね ¥15M〜¥40M
データ移行既存(Sgrum/名簿)から3万人分の移行・並行運用¥数M〜(品質次第)
初期セキュリティ第三者脆弱性診断・是正¥1M〜¥数M

合計は要件と体制次第。内製化すれば人件費に置換、外注なら上記レンジ。まずMVPで価値検証→段階投資が定石。

12.2 ランニング(運用)原価

項目目安性質
Cloudflareインフラ月 数十〜十数万円利用量・Accessシート数で変動(費用感)
決済手数料(イプシロン 3.5%前提・基本クレカ/コンビニ)売上比例=最大の費目月謝×3万人。追加手段は手数料が異なる
メール送信基盤月 数千〜数万円3万人への確認・一斉配信量
保守・運用(人件費)体制次第障害・問い合わせ・改修。オンコール要否を要定義
年次セキュリティ診断年 ¥数十万〜リリースゲート化

参考: 既存SaaS従量は年3,500〜4,300万円(軸⑤)。自社Cloudflareのインフラは年数十〜数百万円規模に収まり、差額を開発・セキュリティに回せる。3年TCOでSaaS案と両側比較して提示する(Fable5評価P0)。

13. リスク一覧(実装まで/運用後)

深刻度: 🔴高 🟠中 🟡低。緩和策は §6.1(必須統制)・§11(ヒアリング)と連動。

13.1 実装までのリスク

リスク影響深刻度緩和
月謝・請求モデル未確定MVPの「決済登録」の土台が無く手戻り🔴§11最優先でヒアリング→請求モデル確定後に着手
施設マスタ未受領(公開取得は名称33%)体験/在籍の基礎データが揃わず開始ブロック🔴JACPAから施設マスタCSV受領(763件IDリスト提示)
委託先アカウント方針・委譲粒度 未定RBACと休講ルーティングが設計不能🔴MTGで選択肢+推奨を諮り確定
3万人データ移行の失敗ローンチ遅延・データ欠損・二重運用長期化🟠段階ロールアウト+並行期間+移行リハーサル
D1の容量/集計が想定外途中でDB差し替え=見積崩れ🟠事前に容量試算・データ層抽象化・分割/Postgres逃がしの条件決め
セキュリティ設計の作り込み不足(体験ID/webhook/名寄せ)実装者裁量で穴🔴§6.1を"設計凍結の条件"化してから実装
スコープ膨張(EC/イベント/経営/写真…要件増)納期・予算超過🟠MVPを厳格に線引き(過剰はPhase2へ・§5評価)
外部依存の仕様相違(イプシロン/フォトクリ/LINE)手戻り・連携不能🟠早期に技術資料請求・PoCで疎通確認
人材・体制(TS/Cloudflare/セキュリティ)品質・速度低下🟡既存知見(lesson-hub)活用・診断で担保

13.2 運用後のリスク

リスク影響深刻度緩和
個人情報漏えい(子どもPII・名簿一括)事業級ダメージ・報告義務・信用失墜🔴MFA・Zero Trust・エクスポート統制・監査ログ・保持削除(§6.1)
決済事故(webhook偽装/二重課金/未決済解禁)金銭事故・帳簿不整合🔴webhook署名+冪等+解禁はwebhookのみ(§6.1)
なりすまし/フィッシング(体験ID/メール/フォトクリURL)情報詐取・偽配信🔴体験ID強化・SPF/DKIM/DMARC・許可ドメイン検証(§6.1)
可用性/障害(年度替わり・写真公開スパイク)申込機会損失・現場混乱🟠SLO/RPO/RTO数値化・オートスケール・負荷試験・バルクヘッド
委託先経由のPII事故監督責任(法25条)🟠委託先の最小権限・監査・契約条項・棚卸し
D1肥大化・性能劣化レポート遅延・障害🟠ログ/分析のオフロード・rollup・DB分割
ベンダーロックイン(Cloudflare/イプシロン)乗換コスト🟡データ層抽象化・非通過型で決済モジュール差替容易化
サポート/運用負荷(3万世帯の問い合わせ)人件費・満足度🟠セルフサービスUX・FAQ・体験メッセージ可視化
法改正(2026 子ども個人情報規律の新設動向)追加対応🟡改正動向の継続監視・同意/保持を柔軟に
コスト変動(決済料率・メール量・Accessシート)運用費増🟡料率交渉・シート最適化・送信量監視

14. 開発・運用体制(GitHub + Cloudflare + Claude Code)※オーナー方針


付録A 技術スタックと費用感

作成: 2026-07-24 / 前提: 設計提案・Fable5評価

0. 結論

1. 言語・フレームワーク(レイヤ別)

レイヤ推奨補足
言語TypeScript 全レイヤ統一人材・AI補助・型安全。ワークスペースのlesson-hub(Astro+CF+D1)と同系で知見が効く
API/バックエンドHono(Workers ネイティブ)軽量・高速・Workersと相性最良。REST/RPC
Web(体験フォーム/体験者マイページ/外部イベント/公開ページ)Astro もしくは RemixSEO・軽量。Cloudflare Pages/Workersで配信
管理画面(ダッシュボード=アプリ的UI)React (Vite) SPA + Hono API操作主体のUI。既存モックの世界観をそのまま実装
会員アプリ(入会後)PWA を軸、必要なら Capacitor でストア配信 / or Expo(React Native)「アプリDL→決済→解禁」の要件はPWAでも可。プッシュ/ストア掲載を重視するなら②章参照
DBCloudflare D1(OLTP中核)会員・在籍・体験・注文等。SQLite
認証管理画面=Cloudflare Access(Zero Trust)、会員=Workers自前(Lucia等)、体験者=メール+体験ID自前Fable5評価の必須統制に対応
非同期Cloudflare Queues一斉通知・決済webhook処理・メール・在庫/残枠の後処理
一貫性が要る所Durable Objects★重要:定員の残枠・EC在庫の"一時確保→確定"を強整合で捌く(二重予約/二重販売の防止)。競合要件にドンピシャ
ファイル/エクスポートR2月次レポートPDF・CSVエクスポート・添付。エグレス無料
設定/キャッシュKVフラグ・軽量キャッシュ
CI/CDGitHub + Wrangler + GitHub Actions(or Workers Builds)PR→プレビュー→本番。IaCはWrangler/Terraform

2. モバイルアプリの作り方(入会後アプリ)

3. Cloudflare だけで足りる理由(サービス対応表)

必要機能CloudflareAWSなら
実行環境WorkersLambda/ECS
リレーショナルDBD1(〜上限注意)RDS/Aurora
強整合の在庫/残枠Durable ObjectsDynamoDB+条件付き書込
オブジェクト保管R2(エグレス無料)S3
非同期キューQueuesSQS
管理画面のゼロトラストAccessCognito+WAF+…
CDN/WAF/DDoS標準同梱CloudFront+WAF+Shield
メール受信(inbound)Email Workers/RoutingSES+Lambda
分析/時系列Analytics Engine(軽量)Timestream/Redshift

単独ベンダーで完結でき、WAF/CDN/DDoSが標準同梱なのがCloudflareの強み。運用点数が少なく、3万人規模の"守り"も揃う。

4. D1 の注意点と対策(ここだけ設計で効かせる)

5. AWS は要るか?(判断フロー)

6. 費用感(概算・インフラ)

※ 最新の各料金・上限は契約時に要確認。ここは桁感の共有。決済手数料・メール送信量・Accessシート数が主なコスト変動要因。(円換算は $1≒155円 で概算・為替で変動)

プラットフォーム基盤(Cloudflare)月額の桁感(会員3万人規模)

項目目安/月備考
Workers 有料プラン約 $5〜(約770円〜)+ 従量リクエスト従量。3万人規模でも数十ドル台(数千〜1万円台)に収まりやすい
D1数〜数十ドル読み書き従量。分割/オフロードで抑制
R2数ドル〜(数百円〜)保管 $0.015/GB(約2.3円/GB)・エグレス無料
Queues / KV / Durable Objects数〜十数ドル通知・在庫制御の量次第
Cloudflare Access〜50シート無料 / 超過は 1シート約$7/月(約1,100円/月)管理画面に入る本部/事務局/支部の人数が効く(指導員は会員アプリ側なので対象外にできる)
基盤 小計概ね 月 数十〜十数万円(利用量とAccessシート次第)インフラは"安い"

別枠(外部・変動費)

開発・運用(ここが本当の主役)

7. 8/3 で言えること / 事前にやる試算(Fable5評価と整合)

モック/ドラフト。数値・仕様は確定後に更新します。(本文は proposal/ の Markdown 原稿を自動レンダリングしたものです)