プロジェクトでの変化
-
権限管理yaml駆動で柔軟に追加・編集
-
運用負荷管理画面UIの整理で軽減
-
開発環境Docker化で再現可能に
課題
SaaS事業者の Rails 基盤は稼働中だったが、管理画面の権限制御が拡張しづらく、新規機能追加のたびに権限まわりの作り込みが膨らむ状態だった。運用部門のオペレーション担当者は専任エンジニアではないため、管理画面が分かりづらいと運用負荷がそのまま問い合わせ件数に跳ね返る。既存の Rails 資産を活かしつつ、権限と管理画面の両軸で「拡張しやすく、迷わず使える」状態を作り直す必要があった。
アプローチ
- 01 既存Rails基盤の構造とビジネスロジックを棚卸しし、改修範囲を特定
- 02 管理画面の権限制御を yaml ファイル駆動に再設計し、定義の追加・編集を簡素化
- 03 左メニュー・第二階層コントローラの権限定義パターンを統一
- 04 運用部門の動線を意識した管理画面UIの整理
- 05 Docker による開発環境の統一と、ローカル〜本番までの再現性確保
- 06 機能追加を段階的にリリースし、運用への影響を最小化
成功要因
- yaml駆動の権限定義
- 権限制御を yaml で外出しし、新規メニュー追加時のコード改修を不要にした。
- 運用部門起点のUI整理
- 管理画面を運用部門の業務動線に合わせて整理し、問い合わせ件数の増加を抑えた。
- 既存資産の活用
- 既存の Rails + MySQL 基盤を作り直さず、改修範囲を権限と管理画面に絞った。
- 段階リリース運用
- 機能追加を段階的にリリースし、運用部門への学習負荷を抑えた。
ソリューション
既存の Rails + MySQL 基盤を活かしつつ、権限制御を yaml ファイルで定義する仕組みに再設計。左メニューや配下コントローラの権限を、コードを書かずに yaml で追加・編集できる構造とした。管理画面UIも運用部門の動線に合わせて整理し、問い合わせ起点の運用負荷を構造的に下げた。