システム開発を発注する際には、訴訟のリスクを避けるために知っておくべきポイントがいくつかあります。システム開発における訴訟の原因としては、例えば発注側と受注側の期待値のずれやコミュニケーション不足、不明確な契約条項などが挙げられます。これらの問題を防ぐためには、システム要件を明確にし、開発会社と密にコミュニケーションを取ることが重要です。また、契約書には作業範囲や納品物の品質基準などを明確に記載する必要があります。
本記事では、これらの注意点の解説とともに、システム開発の外注先選定に役立つ情報をご紹介します。希望した内容のシステムが円滑に納品されるよう、訴訟リスクについても理解しておきましょう。
目次
システム開発会社選びはプロにお任せ完全無料で全国5000社以上からご提案
システム開発を外注する前に知っておくべきこと
システム開発における訴訟が起こる原因をはじめ、裁判へ発展させないための注意点を以下でご紹介します。
●システム開発訴訟のよくある原因
システム開発における訴訟が起こるきっかけとして、特によくみられるのは以下のような要素です。
-
発注側と受注側間の期待値のずれ
-
コミュニケーション不足による要件の誤解
-
不明確な契約条項による解釈の相違
-
納期管理と品質保証の不足
-
外注先の技術力の過大評価
システム開発における訴訟の多くは、開発会社と発注者の認識のずれによって引き起こされます。例えば、契約成立に関する考え方に齟齬があり、報酬の支払いやシステムの修正を巡って訴訟が起こるケースです。
システム開発では、できる限り正確な見積もり額を提示するために多様な分析作業が必要となります。開発会社としては、「完成品だけでなくこうした分析作業に対しても報酬が支払われるべき」という認識をもちます。
しかし、発注側としては「正式に契約をかわしていない以上、契約は検討段階であり不成立である」という認識をもちやすいのです。このことから、訴訟トラブルへと発展した事例もあります。認識のズレが生まれる要因としては、コミュニケーション不足による誤解や、契約条項の解釈の齟齬が挙げられます。
コミュニケーション不足は、法的解釈にずれが生じてしまうだけでなく、「システムに関する要望が正しく伝わらない」というトラブルも引き起こします。その結果、受注側が誤ったシステムを開発してしまい修正の有無や報酬の支払いを巡って訴訟へ発展することも考えられるのです。
また、納期の遅れや品質の低下が訴訟の原因となるケースもみられます。開発スケジュールの遅延や品質管理の不備などが発端となり、発注会社と開発会社の間で対立が生じるケースです。この場合、スケジュール管理の体制に問題があるだけでなく、発注会社が求めた技術と開発会社の技術にギャップがあったことも考えられます。システム開発会社と一言でいっても、得意分野や開発実績は異なります。その点を踏まえてシステム開発会社を選定しなければ、訴訟をはじめとするトラブルへ発展する可能性が高まってしまいます。
●準備と計画での注意点
訴訟やそのほかのトラブルを避けるためには、前提としてシステムへ求める要件や要望、システム開発を行う目的を明確にすることが大切です。そのうえで開発会社と密にコミュニケーションをとり、認識をすり合わせる機会をできる限り多くとることが認識のずれを防ぐのに役立ちます。契約時にシステム開発の要件や目的に認識のずれがあっても、すり合わせの機会があることで、早い段階で修正できるためです。
さらに、契約書の作成時には検討事項と重要事項を明確にしたうえで、曖昧な部分や解釈が分かれそうな部分をできる限り排除する必要があります。
開発会社を選定する際は、明確な基準を設けましょう。得意分野や開発実績、同業他社のシステム開発の実績の有無などに着目すると効率的に選定できます。この時、大まかな費用感を把握するためにも、複数のシステム開発会社を同時に比較検討することも大切です。
また、進捗管理や品質管理を開発会社へ丸投げしないことも大切です。定期的な進捗報告の機会を設けたり、システムの検収に関するルールを定めたりといった対応が必要となります。
●訴訟に発展しそうな場合の対処法
万が一、訴訟へ発展しそうな場合は、まず契約書を再確認しましょう。細かい契約条項や法的な規定が契約書でどのように記載されているか、再確認することが重要です。そのうえで開発会社との交渉を試みることで、訴訟へ発展するのを未然に防げる可能性があります。また、必要に応じて弁護士や代替紛争解決手段(ADR)に相談することも検討しましょう。ADRは、裁判所を介さずに紛争を解決する手段です。具体的な解決手段としては、仲裁や調停などが挙げられます。
外注先選定の失敗を避けるための注意点
システム開発における訴訟リスクを軽減するためには、自社に合ったシステム開発を選定することが大切です。以下でご紹介するのは、システム開発会社を選定する際の注意点です。
●外注先選定時のポイント
システム開発会社のスキルをチェックしましょう。具体的には、得意分野をはじめ、使用するプログラミング言語(Python、Java、C++など)やフレームワーク(Django、Spring Frameworkなど)、過去の開発実績の豊富さや開発実績のスケールなどに注目する方法があります。合わせて、類似するプロジェクトを手掛けた実績がないか、また、類似プロジェクトの成功事例もしくは失敗事例がないかをチェックしておくとより安心感が増します。どのような手段や経緯、技術をもって成功へ至ったのか、または、どのような経緯を経て失敗してしまったのかをできる限り調査しましょう。
また、スケジュール管理や進捗報告の体制も確認しましょう。どのような連絡ツールを採用しているか、定期的な進捗報告を協力的に行ってくれるかといった点をチェックするのがおすすめです。
●外注契約時のポイント
誤解の要因とならないよう、契約書には以下の内容を含むと良いでしょう。
-
依頼する作業範囲
-
納品物の品質基準
-
納期および納品スケジュール
-
報酬の支払い条件および報酬額
-
予算
-
納期遅延に対する対応およびペナルティの内容
-
納品物の不備の修正措置・修正対応
-
違約金の支払いに関する規定
上記の内容を契約書へ落とし込んでおくことで、トラブルが起きた際の対応の指針となります。
システム開発訴訟の一般的な原因や事例
以下でご紹介するのは、システム開発訴訟の具体的な事例です。実際に起こった事例を参考に、発注側として注意しておくべきポイントを把握しておきましょう。
●争点1.プロジェクト管理のユーザー協力義務
ある健康保険組合とシステム開発会社の間で起こった訴訟問題の事例です。原告(健康保険組合側)と被告(システム開発会社側)は、平成9年5月にシステム開発の委託契約を締結。
当初の納期は平成10年12月でしたが、開発スケジュールの遅延により、開発会社側の要望で平成11年3月に納期が変更されました。しかし、期限から数ヶ月経過してもシステムが納品されず、原告は委託契約を解除します。その後、システム開発の代金の減却および損害賠償を請求しました。
これに対し、被告は「開発スケジュールの遅延は原告側による機能の過剰追加や仕様変更、原告が回答すべき懸案事項の意思決定の遅れにある」と主張。契約解除における報酬と、損害賠償を求めて反訴するという事態へと発展しました。
この裁判は、結果的に原告である健康保険組合(発注側)が勝訴しています。開発会社側には、専門家としてのプロジェクトの管理義務があるとされたためです。具体的には、機能の追加や仕様変更を求められた際、委託料や期限の変更、ほかの機能への影響などを踏まえたうえでその旨を説明し、要求の撤回や納期の延長などを求めなくてはならないとされました。開発会社は、専門家としての説明責任を果たさなかったため敗訴したといえるでしょう。
●争点2.要件定義
要件定義とは、発注側がシステムに求める要望をヒアリングしたうえで「どのような方向性と手順で開発すべきか」をまとめる作業のことです。この要件定義が争点となった裁判の事例もあります。
原告はシステム開発会社、被告はある旅行会社です。旅行会社は、航空券の予約や申し込み、決済機能を搭載したシステム開発を依頼。開発プロジェクト自体は終了しましたが、完成したシステムにはオペレーターによる「遠隔操作機能」が搭載されていませんでした。旅行会社は、「航空券の予約や申し込み、決済作業には遠隔操作機能が不可欠だ」と主張。報酬の支払いを拒否する事態へと発展しました。対するシステム開発会社側は、「遠隔操作機能の搭載は契約内容に含まれていない」と主張。報酬の支払いを求める訴訟を起こしました。
結果的に、こちらも発注会社が勝訴しています。「契約内容に照らせば当然に必要と考えられること、必須機能であるとわかることは、要件定義で提示されていない項目でも実現すベき」と判断されたためです。
●争点3.リスク管理
こちらでご紹介するのは、上記2つの争点でご紹介した事例に類似する事例です。要件定義の失敗と、それを見越したリスク管理が甘かったために引き起こされた訴訟トラブルとなります。
被告である依頼側(書籍の管理や配送を行う企業)は、あるシステム開発会社A(訴外)へ書籍在庫管理システムを発注しました。しかし、開発は円滑に進まず、改めて原告となるシステム開発会社へ開発を発注。その後、原告は検収の段階で「個別出版社対応機能の不足への対応を要求された」と主張します。この追加開発によって開発費用の見積もりが当初より膨れ上がり、追加請負代金の支払いを巡り訴訟へと発展しました。
こちらの事例では、結果として原告であるシステム開発会社が勝訴しています。システム開発会社は、本来Aへ発注されていたシステムと同様のものを受注、構築したに過ぎず、個別出版社対応機能の開発・追加は業務範囲外だと見なされたためです。そもそも、この事例では依頼側の見積もりに関するリスク管理が甘く、結果として訴訟へと発展した側面があるとも考えられます。
外注開発におけるトラブルの原因と回避策
訴訟にまで発展しなくとも、一度トラブルが発生してしまえば双方の関係性が悪化してしまう可能性があります。システム開発会社と契約を締結したら、以下のポイントに注意してトラブル回避に努めましょう。
●要件定義の不十分さが引き起こすトラブル
要件定義が不十分だと、「この要件は依頼されていない」「この要件の反映は契約内容にない」と開発会社から指摘を受ける可能性が高まり、トラブルへ発展する可能性があります。先の事例で紹介したとおり、「一般的に必須とされる機能は要件定義で触れられていなくとも実装すべき」と判断される可能性はありますが、そもそも訴訟へ発展させないためには要件定義の時間を十分にとり、要望を漏れなく伝える必要があります。
また、要件定義が不十分だと、システム開発の着手中や着手後に機能の抜け漏れが発覚し、修正が必要となる可能性があります。修正や仕様変更に伴うトラブルを未然に防ぐためにも、要件定義をしっかりと行うことが大切です。
●納期と見積もりの現実性の欠如
納期の設定や金額の見積もりが甘く、トラブルに発展するケースもあります。例えば、納期が短すぎる場合、開発会社は納期に間に合わせるため急ピッチで作業を進めることになります。結果的に、管理体制がずさんになったり意図しないバグのあるシステムが完成したりといった事態へ発展するのです。
くわえて、「システムの規模に比べて予算が少なすぎる」というケースもトラブルのもとです。予算オーバーを理由に、開発プロジェクトそのものが頓挫してしまうことも考えられます。開発側からの見積もりが適切な金額かを確認のうえ、システムの規模に見合った予算を用意しましょう。
●知識と技術力の不足
システム開発では、開発会社だけでなく発注側にも一定の業界知識が求められます。技術的な理解が皆無だと、開発会社側へ無理なスケジュールや技術範囲による要求を行うことがあり、トラブルの要因となるためです。また、新技術に対する誤解や過大評価がもとでシステム開発会社へ無理な要求をしてしまう可能性も考えられるでしょう。現実的な範囲で要望を伝えるためにも、発注側として知識を深めることが大切です。
知識が不十分なことで、開発会社の話や提案を上手く咀嚼できず、システムの完成像を共有できないことも考えられます。システムのビジョンをしっかりと把握、共有するためにも、最低限の知識を身につけておきましょう。
●損害賠償責任と契約の明確化
損害賠償責任のリスクを管理するための重要な作業です。契約書には、サービスの対応範囲や責任範囲をはじめ、「何をもってシステムを完成とするのか」という品質基準、プロジェクト終了に関する規定を明確に記載しましょう。同時に、損害賠償条項について明記しておくことも大切です。民法における損害賠償では、債務者が債務を履行しないまたは契約不履行となった際に請求できるものとされています。「契約不履行によって被った損害を賠償請求できる」としているのが損害賠償です。
契約書に損害賠償条項を明記しておくことで、発注側と開発会社側双方が正しくリスクを把握できます。損害賠償条項が定まっていないと、「いった/いわない」の水掛け論になったり、不当ないい逃れ、損害賠償の請求といった不健全なやり取りがまかり通ったりするためです。なお、損害賠償条項を含む契約書や各種書類は、弁護士をはじめとする専門家のリーガルチェックを受けたうえで双方の合意のもと作成しましょう。
システム開発を外注する時のポイント
システム開発を外注する際のポイントを以下でご紹介します。
●外注プロセスの理解と適切な外注先の選定
技術力や実績に着目するだけでなく、「自社が望む作業範囲で対応してもらえそうか」という点もチェックしましょう。「要件定義から設計、開発、テストまでは担当するが、リリース後の保守や運用は対応範囲外」「規定範囲内の修正対応には別途追加料金がかかる」などのケースもあるためです。
●事例を参考に選定する
システム開発の訴訟事例や、トラブルの事例を参考に、トラブルを回避できそうな開発会社を選定しましょう。「要件定義の時間をしっかりととれる、コミュニケーションを密にとりやすい」「専門用語を多用せず、専門家としての説明責任を果たしてくれる」といった点をみることが重要です。
同時に、複数の開発会社から相見積もりをとりましょう。相見積もりをとることで、適正費用を大まかに掴めます。この時、極端に安い見積もり金額を出してくる開発会社には注意しましょう。修正対応や仕様変更などの対応で、予想以上の追加料金がかかるケースが少なくないためです。
しかし、ITの知識がない場合は信頼できる開発会社を探すのは難しいものです。複数の候補を見つけても、「どのように比較検討すれば良いのかわからない」と悩まれるご担当者様もいるのではないでしょうか。そんな時は、発注会社とシステム開発会社を結ぶマッチングサービス「発注ナビ」をお役立てください。ITの専門知識をもったコンシェルジュが、ご担当者様の要望や条件をしっかりとヒアリングし、条件に見合う開発会社を複数ピックアップしご提案させていただきます。
「自社に合った開発会社がわからない」「選定にできるだけ時間をかけずにスムーズに導入したい」とお考えのご担当者様はぜひ当サービスの利用をご検討ください。
システム開発会社選びはプロにお任せ完全無料で全国5000社以上からご提案
■システム開発に関連した記事