アイキャッチ画像がないことを示す代替画像。

【50サイト超の更新業務を、非エンジニア1人での管理体制に】複数の店舗Webサイトをまたいだ統合データ配信・管理システムの開発

① Overview — 何を変えたのか

50サイト超の更新業務を、3人体制から非エンジニア1人での管理体制へ。

  • Client: サービス業50店舗以上を運営する業界大手グループ (詳細非公開)
  • 既存システムを残したまま、外付けのデータ配信・中継システムを構築
  • エンジニア含む3人でも賄えなかった更新作業を非エンジニア1人で完結できる体制に変革

「何を作ったか」:各店舗の異なるCMSからデータを統合配信する中継APIシステム
「何を変えたか」:エンジニア依存の属人的業務フローを、非エンジニアでも運用可能な自律的体制へ再構築


② Context — どんな構造課題があったか

表層の問題:「更新作業が追いつかない」

  • バナー1枚の更新で丸一日の作業時間が消失
  • Webデザイナーは一日中バナー更新、エンジニアも一日中Web更新に追われる
  • 更新作業だけで手一杯、メンテナンスや改善に割ける人員・時間ゼロ
  • 3人体制でも溢れた作業は外注へ。追加のエンジニア採用も検討中

構造的なボトルネック:

① システム分断

  • 3種類の異なるCMSが使用され、各店舗で別インスタンス運用
  • 50サイト超すべてに同じ更新を反映するには、50回の同じ作業が必要
  • グループ全体での情報配信や集合サイトへの対応が構造上不可能

② 属人化の極致

  • フロント側:phpソース + SQL + ループが分離されず直書きのスパゲッティコード
  • phpエンジニアでなければ読解不可能。マークアップエンジニアではデザイン変更すら不可能
  • 一部サイトはビルドが必須。エンジニア不在時は更新作業自体がストップ

③ 判断基準の不在

  • 「50サイトすべてに機能追加」は予算的に不可能
  • 「新システムへ全面移行」も予算・期間的に不可能
  • 「外部サービス(MicroCMSなど)の採用」はクライアント方針で除外
  • 打つ手なしの膠着状態

③ Approach — どう設計したか

戦略:既存システムに「寄生」する薄い中継システム

現在のシステムを残し、足りない部分だけを外付けで補完する「データ配信・中継インフラ」として設計。

設計思想の核心:

  • Automation(自動化): データ取得と表示層の完全分離により、非エンジニアでも運用可能に
  • Architecture(構造): いつでも切り離し可能な薄い実装。システムの肥大化を回避
  • Articulation(明示): REST APIによる統一されたデータフォーマット。マニュアル対応を可能に

実装内容:

データフローの再設計

  • 旧:各サイトがSQLから直接データ吸出し、php+htmlテンプレート混在
  • 新:3種類の既存CMSから内部APIでデータ吸い上げ → 統一JSON形式に整形 → REST APIで配信

アーキテクチャ方針

  • データベースやヘッドレスCMSなどの追加依存を避け、設定ファイルベースで構築
  • ノンプログラマ(Webフロント担当者)でも編集可能な仕組み
  • 管理項目・配信データの増加を見越し、柔軟に拡張できるREST構築

技術的選択理由

  • MVC分離により、フロントエンジニアだけでデザイン変更が可能に
  • ビルド不要。設定ファイル編集だけで対応できる運用負荷の低さ
  • 予算・期間・保守性のバランスを最適化

技術スタック: PHP、AltoRouter、REST API(Controller/Dataクラスで関心分離)


④ Outcome — 何が起きたか

定量成果:

  • 管理時間: 20倍以上の削減
  • 全サイト更新時間: 丸一日 → 2〜3時間
  • 運用人員: 3人体制+外注 → 非エンジニア1人で完結
  • 採用計画: 予定していたエンジニア追加採用が不要に(求人打ち切り)

定性変化:

  • 業務フローの変化: Web担当者への伝達だけで更新完了。ソースコード変更不要
  • 意思決定速度: コードレビュー・動作確認が不要になり、承認フローが劇的にスムーズ化
  • 創造的時間の獲得: 浮いた工数でデザイン業務やクリエイティブ制作に集中可能に
  • デザイン刷新の常態化: それまで手つかずだったデザイン変更が、月1単位で実施されるように
  • 新店舗開設フローの劇的簡略化: Webフロント側を薄くしデータ取得フローをAPI側に集約した結果、新店舗サイト開設時のフローが大幅に短縮。従来「CMS業者 → プログラマ → マークアップ(デザイン) → phpエンジニア(テンプレート反映)」という4段階だった作業が、「CMS業者連絡 → マークアップエンジニアがデザイン調整」の2段階で完結するように

その後の展開:

  • 現在も稼働中。予想通り管理項目は増加したが、設定ファイルへの項目追加のみで対応完了
  • データベースカラム追加などのプログラムレベルの拡張は不要
  • 外部APIからのデータ取得など、高度な機能拡張も実施。中継・配信中枢として十分に機能

Meta

Scope: 既存システム調査、要件定義、アーキテクチャ設計、開発、実装、各サイト導入、継続的メンテナンスまで一貫対応
Duration: 開発1ヶ月、各サイト導入1ヶ月
Budget: 100万円
Stack: PHP, AltoRouter, REST API, Controller/Dataクラス分離設計