PHPのRFP/要件定義書/提案依頼書について

PHPでシステムやWebサービスを外注する際は、一般的な要件に加えて、保守・引き継ぎ・バージョンアップの長期リスクを提案依頼書に盛り込めるかが分かれ目になります。

なお、PHP開発の全体像をまだ把握していない方は、まずPHP開発の完全ガイドから読むことをおすすめします。

PHP発注の要件定義が特別な理由

PHPの長期保守を支える要件として、サポート期限、PHP本体のバージョン、引き継ぎ可能な作り、設計ドキュメントとテストコードを並べた図。
保守の継続性は、期限・更新方針・引き継ぎ条件を揃えて考えます。

PHPの提案依頼書を作るときは、一般的なシステム発注の要件定義に加えて、PHP特有の長期リスクを織り込む必要があります。PHPは「長く使われ続ける」言語であるため、納品後の保守・引き継ぎ・バージョンアップが事業の重荷になりやすいのです。

なぜ要件定義の段階で長期の視点が欠かせないのか、その理由を見ていきます。

レガシー化と引き継ぎリスクの防止策

「納品されたら10年そのまま使える」という発注側の誤解は、PHP開発でとくに陥りやすい落とし穴です。

実際には、古いバージョンのまま使い続けると、セキュリティ更新が受けられなくなります。

また、最初に開発した会社にしか分からない属人的なコードで作られていると、その会社との関係が切れた途端に保守が立ち行かなくなります。これらのリスクは、要件定義の段階で防いでおくべきものです。

一方で、PHPは世界のWebサイトの約74%超で使われる事実上の標準言語であり(出典:W3Techs統計)、人材も外注先も豊富です。そのため、本来は「引き継ぎやすい」言語といえます。

ところが、この強みは「引き継ぎ可能な作りで開発されている」ことが前提です。独自ルールから外れた実装や、ドキュメントのない開発では、採用市場の大きさを活かせません。そこで、要件定義書に引き継ぎ可能な作りを明記しておくことが、この強みを生かす鍵になります。

保守の担い手が代わっても続けられるよう、要件定義の段階で押さえておきたい点があります。

  • サポート期限の確認:PHP本体のサポート期限(EOL)を確かめたうえで、使うバージョンを要件に明記する
  • 引き継ぎ可能な作り:属人的なコードを避け、ドキュメントを残す方針の要件化

したがって、PHPのRFPには、「PSR規約に準拠すること」「設計ドキュメントとテストコードを納品すること」「インフラ構成を文書化すること」といった引き継ぎ性に関わる要件を明記すべきです。

これらは機能には直結しないため軽視されがちです。しかし、ベンダーロックインを避け、長期的なコストを抑えるうえで最も確実な打ち手になります。

引き継ぎ性は、技術選定そのものよりも、こうした「規約を守らせる要件化」によって決まる部分が大きいのです。

バージョンとEOL方針の要件化

PHPのRFPで見落とされやすいのが、バージョンとEOL(サポート終了)の方針です。発注時に「最新のPHP8系を使う」と明記するのは当然として、その先の「リリース後、誰が、どんな条件でバージョンアップを続けるのか」まで要件で取り決めておく必要があります。これを曖昧にすると、数年後に古いバージョンのまま放置され、セキュリティリスクを抱えたシステムになりがちです。

具体的には、提案依頼書に「保守契約の範囲に、PHP本体および利用ライブラリのバージョンアップ対応を含めるか」を明確に問う項目を設けます。バージョンアップ対応が保守契約の外であれば、その都度別費用が発生することになり、TCO(総保有コスト)の見積もりが変わります。

Laravelのようなフレームワークを使う場合も、フレームワークの新バージョンが要求するPHPのバージョンに連動します。そのため、バージョン方針はフレームワークとあわせて一体で考える必要があります。

  • PHP本体:サポート期限内の版への移行について、担当と時期
  • 利用ライブラリ:フレームワークの新バージョンに連動する更新の扱い

バージョンアップを怠った場合のリスクは、セキュリティだけにとどまりません。古いバージョンのままでは新しいライブラリやツールを使えず、改修が必要になったときに対応できる開発者も減っていきます。

要件定義の段階で「バージョンを継続的に上げ続ける前提」を組み込むことは、システムを長く健全に保つための投資と考えるべきです。

riplaはフルスクラッチ受託と国内開発の立場から、バージョンアップを含む長期保守を前提とした要件整理を支援しています。

ポイント

PHPの提案依頼書は、機能の一覧に加えて、EOLへの対応や引き継ぎ可能な作りを要件に入れておくことが欠かせません。迷ったときは、その要件が数年後の保守を支えるかどうかで考えます。

PHP要件定義書に盛り込むべき項目

PHP要件定義書に盛り込む機能要件、既製ライブラリ、非機能要件、納品物を4枚の確認カードで示す図。
機能と品質、実装方針と受け取る成果物を分けて確認できます。

PHPの要件定義書には、機能要件と非機能要件の両方を盛り込む必要があります。その際は、PHP特有の論点を意識することが欠かせません。

ここでは、提案依頼書として複数社に提示する場面を想定し、抜け漏れを防ぐために整理しておきたい項目を、機能面と長期リスク面の両方から見ていきます。

機能要件と費用感を結びつける書き方

機能要件は、システムが実現すべき機能を具体的に書く部分です。会員登録や決済、管理画面といった機能は、できるだけ具体的な業務フローとともに書くことが大切です。外部API連携についても、どの業務で使うかまで書いておくとよいでしょう。

曖昧な記述は見積もりのブレや後のトラブルを招くため、「誰が、どんな操作をして、何が起きるか」のレベルまで落とし込むのが理想です。

機能要件を書くときは、おおよその費用感を先に把握しておくと、提案の妥当性を見極める材料になります。システム機能別の相場は、会員機能が30〜80万円、決済機能が50〜150万円、管理画面が50〜200万円とされます(出典:モカモコ)。API連携は30〜100万円が目安とされます。

この相場感があれば、突出して高い提案や安すぎる提案に気づけます。

機能ごとの実現方法は、費用の見方を左右します。

  • 既製ライブラリの活用:Composerの信頼できるライブラリで満たせる機能の範囲
  • 独自実装:自社ルールに合わせた実装が必要な機能の範囲

PHPでは既製ライブラリを活用できるため、この切り分けがコストを左右します。

要件定義書で、実績のあるライブラリの活用を許容するかどうかや、自社ルールに合わせた独自実装の要否を明示すると、開発会社も適切な手法を提案しやすくなります。

既製資産で満たせる部分は活用する前提を示しておけば、無駄なコストを避けられます。

非機能要件と納品物の取り決め

非機能要件は、機能そのものではなく「品質」に関わる要件です。PHP開発では、ここに長期リスクへの対策を集中して盛り込みます。

  • コーディング規約:PSR準拠を必須とし、静的解析ツールでチェックする
  • PHPバージョン方針:PHP8系など最新のバージョンを使い、バージョンアップ対応を保守に含めるかどうか

納品物には、設計ドキュメント、テストコード、インフラ構成の文書を含めます。セキュリティでは、SQLインジェクション対策など標準的な脆弱性対策を実施する旨を要件に入れます。

これらは機能には現れませんが、システムの寿命と保守コストを左右します。

とくに納品物の取り決めは、ベンダーロックインを避けるうえで欠かせません。ソースコードだけが納品され、設計ドキュメントがない状態では、別の会社への引き継ぎが難しくなります。

要件定義書で「何を、どの形式で納品するか」を具体的に定めておけば、将来の選択肢を確保できます。納品物の定義は、発注側が主導権を持ち続けるための保険なのです。

非機能要件は専門性が高いため、発注側だけで完璧に整理するのは難しい領域です。その場合は、技術選定の知見を持つパートナーに、要件定義の段階から伴走してもらうのが現実的です。

riplaは、フルスクラッチ受託と国内開発の知見をもって、機能要件だけでなく非機能要件と納品物の取り決めまで含めた、漏れのない要件整理を支援しています。

ポイント

機能要件は費用感と結びつけ、非機能要件と納品物は引き継ぎを支える条件として書きます。迷ったときは、その項目を各社が同じ前提で見積もれるかどうかが目安です。

採用要件としてPHPを選ぶ判断フレーム

中央のPHPから、事業フェーズ、採用市場、内製化、TCOの4つの判断視点へつながる図。
事業との適合性と、長期費用の見通しを同じ場で検討できます。

要件定義は、「ほしい機能を書く」だけでなく、「そもそも自社はPHPを採用要件として満たすべきか」を判断するプロセスでもあります。

PHPが自社に適した選択かは、事業フェーズや想定トラフィックから見極められます。採用市場や将来の内製化も、同じく判断の材料になります。ここでは、その判断の枠組みを見ていきます。

事業フェーズと採用市場から見たPHP適性

PHPが向く典型例は、一般的なWebサービスやコーポレートサイトです。業務システムやECなども含まれます。

また、実績の多い領域では、PHPは開発会社も人材も豊富で、引き継ぎや内製化を見据えても安全な選択になります。とくに将来、保守を内製化したいなら、PHPエンジニアは採用しやすく定着もさせやすいという市場の厚みが大きな利点になります。

一方で、機械学習やデータ分析を中核に据えるサービスや、極めて高い並行処理性能が求められる特殊な要件では、PHP以外の言語のほうが適している場合もあります。要件定義の段階で、自社のサービスが「枯れた標準技術の安心感」を必要とするのか、「特定領域に特化した先端技術」を必要とするのかを見極めておくと、後悔のない技術選定につながります。

採用要件としてのPHPの強みは、性能の尖りではなく、人材確保と引き継ぎの容易さにあります。

  • 事業フェーズ:PHPを採用要件として満たすかを見極める前提
  • 採用市場:PHP人材の厚みと、引き継ぎや内製化の見通し

提案依頼書では、こうした判断の前提となる情報を開発会社に共有することが大切です。たとえば、想定ユーザー数や扱うデータの種類と量、将来の機能拡張の方向性などが挙げられます。

また、内製化の意向を伝えておけば、開発会社も「本当にPHPで良いのか」を含めて誠実に提案しやすくなります。事業から逆算して技術を選ぶ姿勢は、要件定義の質を高めます。

TCOで提案を比較する評価基準

複数社から提案を受けたとき、初期開発費だけで比べるのは危険です。大切なのは、初期費用に加えて、インフラ、保守、バージョンアップの各費用を含めたTCO(総保有コスト)で評価することです。

初期費用が安くても、保守やバージョンアップが別費用で高額になれば、数年単位で見たときに割高になることがあります。そのため、要件定義書には、見積もりをTCOの内訳で示すよう求める項目を設けると効果的です。

とくにPHPでは、バージョンアップ対応が保守に含まれるかどうかで、TCOが変わります。

提案依頼書で、初期費用、月額の保守費用、インフラ費用を分けて提示するよう指定すれば、各社の提案を同じ土俵で比べられます。特に大切なのは、PHP本体とライブラリのバージョンアップ対応費用を別に示させることです。

金額が2倍違う提案があっても、テスト範囲やドキュメントを見れば、その差に理由があるかを判断できます。保証期間やバージョンアップ対応の有無も、判断の材料になります。

  • 見積もりの前提:要件がそろっているかどうか
  • 保守の線引き:保守に含まれる作業と、別途費用になる作業の境目

こうしたTCOベースの比較を可能にするのは、緻密に作り込まれた要件定義書の役割です。要件が曖昧なまま見積もりを取ると、各社が異なる前提で見積もるため、比較が成り立ちません。

逆に、機能・非機能の要件、納品物、保守範囲を明確にした要件定義書があれば、提案の質と金額を公平に評価できます。

riplaは、フルスクラッチ受託と国内開発の立場から、TCOで比較できる要件定義の整備を支援しています。機能・特性の理解については、後述の関連記事もあわせてご覧ください。

ポイント

事業フェーズや採用市場、内製化の見通しから、PHPを採用するかを判断します。機械学習や極端な並行処理が中心の要件なら、PHP以外も候補になります。

まとめ

PHPのRFP・要件定義書・提案依頼書を振り返ると、その本質は、「作ってほしい機能」に加えて「数年後も引き継げて保守できる作り」を要件として明記することにあります。

PHPは採用市場が引き継ぎやすい言語ですが、その強みは要件化して初めて実体化します。PHPバージョン方針やPSR規約準拠、設計ドキュメント納品を要件に書き、保守契約の範囲も定めておく必要があります。

要件化を怠れば、PHPの普及度という利点も、属人化やEOLの放置で失われてしまいます。

要件定義は、機能リストを作る作業であるだけでなく、事業フェーズや採用市場、TCOの観点から「自社はPHPを採用要件として満たすべきか」を判断するプロセスでもあります。内製化の見通しも、その判断材料になります。

長期リスクまで織り込んだ要件定義書があれば、複数社の提案をTCOで公平に比較でき、ベンダーロックインを避けられます。

riplaはフルスクラッチ受託と国内開発を組み合わせ、要件定義の最上流から長期リスクを織り込んだPHP発注を一貫して支援します。全体像の確認には、あらためて完全ガイドをご活用ください。

会社紹介

株式会社riplaでは、お客様の事業・ユーザー・業務に最適化したオーダーメイド型システムを、構想策定・要件定義から開発・改善まで一気通貫で支援。事業会社でIT・DXを経験したプロフェッショナルによる高い要件定義力・システム設計力を活かし、事業成果の最大化に伴走します。

また、当社独自の開発テンプレート「Boxシリーズ」による標準機能の高速開発と、AI駆動開発の独自フレームワーク「GoDD」による独自機能のAI実装を組み合わせることで、低コスト・短期間で開発を実現いたします。

もし、システム開発やプロダクト開発に関するご要望がございましたら、お気軽にお問い合わせください。

・サービス概要資料のURLはこちら >>>
・お問合せページのURLはこちら >>>
・お役立ち資料のURLはこちら >>>

執筆者プロフィール
張田谷凌央
張田谷凌央

株式会社ripla 代表取締役CEOとして、システムパッケージ活用、システム開発、データ分析、生成AI活用、SaaS開発、アプリ開発、EC構築など、幅広い領域で企業のDX推進と事業成長を支援している。事業会社でIT・DXを経験したプロフェッショナルが集う株式会社riplaにおいて、お客様の事業・ユーザー・業務に最適化したオーダーメイド型システムを構想策定・要件定義から開発・改善まで一気通貫で支援し、単なるシステム納品にとどまらず、クライアントと同じ目線で事業成果の最大化に向けた伴走支援を行う。早稲田大学卒業後、ラクスル株式会社、LINEヤフー株式会社にて事業開発やDX推進などに従事した後、株式会社riplaを創業。