古いPHPシステムは改修か作り直しか|費用・データ・業務で判断する
古いPHPのWebサービスを更新、部分改修、全面リプレースする判断基準。データ移行、並行運用、停止時間、引き継ぎまで含めて比較します。
古いPHPシステムを見直すときは、必要な業務を続けられるか、更新や変更を誰が担うかを確認します。現在の機能で業務が足りているなら、サポート対象の構成へ更新する方法を先に調べられます。業務の流れ自体を変える場合は、部分改修や作り直しも比較します。
費用を比較するときは、実装に加えて、蓄積したデータ、外部連携、担当者の操作、移行中の運用も含めます。
変えたいことと、使い続けたいことを分ける
「画面が古い」「更新できない」「集計に時間がかかる」は異なる課題です。課題ごとに、原因の候補と影響する業務を記録します。
| 方針 | 検討しやすい状況 | 調査で確かめること |
|---|---|---|
| バージョンアップ | 機能は足りていて、主な課題が保守期限 | 互換性と依存ライブラリの対応 |
| 機能単位の改修 | 特定の処理が更新や変更を妨げる | 他機能との認証・データの境界 |
| 全面的な作り直し | 業務要件も変わり、広い範囲の変更が必要 | 仕様の再整理、データ移行、並行運用 |
たとえば会員登録とログインが安定していて、月次集計だけが問題なら、集計部分を切り出せるかを調べます。ただし、その処理が同じデータを更新しているなら、単純な切り離しでは整合性が崩れる可能性があります。
PHPを別の言語へ置き換える場合も、先に業務のルールと引き継ぐデータを整理します。
作り直しでは、現在のコードにしかない仕様が見つかる
古いシステムには、担当者が覚えている例外や、過去の要望に合わせた処理が残っていることがあります。「見える画面を再現する」見積もりだけでは、その処理が抜ける可能性があります。
締め日、端数処理、過去データの表示、権限の例外などを業務担当者と確認します。不要になった仕様は削れますが、今も使われているかを調べてから判断します。
資料がない場合はPHPシステムの引き継ぎで、現状を調べる範囲を先に決めます。
データが動き続ける期間を、計画に入れる
新環境を作っている間も、旧環境には会員登録や取引が増えます。最初にデータをコピーしただけでは公開時点の内容と合いません。
移行の練習、本番での追加分の取り込み、件数や金額の照合を計画します。停止できる時間が短いほど、新旧間の同期や切り替えに設計が必要です。並行運用では、どちらを正しいデータの保存先とするかも決めます。
戻す手順もデータに依存します。新環境で取引が発生した後に旧環境へ戻す場合、その取引を失わずに扱えるかを確認してください。
段階的な改修にも、新旧をつなぐ費用がかかる
一部だけ作り直せば、一度に変える範囲は小さくできます。一方で、新旧の認証、データの受け渡し、監視、公開手順を並行して維持する作業が増えます。
切り出す単位は、画面の枚数だけでなく、業務とデータのまとまりで考えます。段階ごとの終了条件と、旧機能を廃止する条件が決まっていないと、二つの構成を保守し続けることになります。
同じ期間と完了条件で費用を比較する
バージョンアップ案と作り直し案で、含む機能、テスト、データ移行、運用費をそろえます。片方だけに新機能が含まれていれば、単純な価格差では判断できません。
PHP改修費用の見方に沿って作業を分け、更新後のサポート期限はPHP公式一覧などで確認します。長く使う予定なら、次の更新を担える構成かも判断材料です。
PHPの脆弱性・改修ガイドから全体像を確認し、Webサービスの再構築サービスでは、モダン構成へ移す範囲を調査します。既存PHPの保守・更新案とも比較し、部分的な置き換えと全面再構築の範囲を決めます。
この記事を書いた人
株式会社Float Engineering 代表
西林 明信
自社プロダクトの開発・運営と、Webサイト・業務システムの受託開発を行っています。広告代理店でのマーケティング、楽天でのデータ分析を経て、2023年にFloat Engineeringを設立。
プロフィールを見る