システムの瑕疵責任と注意点

システム開発における瑕疵責任(現在は「契約不適合責任」)は、発注者と開発者双方にとって重要な法的概念です。2020年4月の民法改正により、従来の瑕疵担保責任は廃止され、契約不適合責任が導入されました。この変更により、システム開発契約の取り扱いが大きく変わっています。以下では、その概要と注意点を解説します。

契約不適合責任の概要

契約不適合責任とは、納品されたシステムが契約内容に適合しない場合に発生する責任です。具体的には、以下のようなケースが該当します。

  • 機能不足や不具合: 契約で定められた機能が実装されていない、または正常に動作しない。
  • 納期遅延: 契約で定められた納期を守れない。
  • セキュリティ基準未達: 契約で求められるセキュリティ要件を満たしていない。
  • パフォーマンス不足: 必要な処理能力や性能を発揮できない。

これらの場合、発注者は補修請求や損害賠償請求、契約解除などを求めることができます。

責任が発生しないケース

一方で、以下のような場合には契約不適合責任が問われないことがあります。

  • 発注者からの変更要求に基づき、仕様や納期が合意された場合。
  • 開発者が事前にリスクを明示し、それを発注者が了承した場合。
  • 自然災害や外部サービス障害などの不可抗力による問題。

注意点と対策

契約不適合責任によるトラブルを防ぐためには、以下のポイントに注意する必要があります。

1. 契約書の明確化

契約書にはシステムの仕様、納期、品質基準、テスト方法などを具体的に記載することが重要です。特に曖昧な表現は避けるべきです。

2. リスク管理

潜在的なリスクを事前に洗い出し、それを契約書に反映させます。また、不測の事態への対応策も盛り込むことが推奨されます。

3. 変更管理

プロジェクト進行中の仕様変更や追加要求については、必ず書面で記録し、新たな条件を双方で合意することが必要です。

4. 証拠保全

トラブル発生時に備え、契約書や仕様書、コミュニケーション履歴などを適切に保管しておくことが大切です.

5. 専門家への相談

契約書作成時には法律専門家の助言を受けることで、不備やリスクを最小限に抑えることができます。


システム開発における契約不適合責任は、プロジェクト成功の鍵となる要素です。事前準備と適切な対応によってトラブルを防ぎ、信頼関係を築くことが可能になります。

リリースが近づくと、思った通りではないとユーザー企業から瑕疵責任について指摘されることが多くなります。ここは要件定義から基本設計への落とし込みの際に発生することが多いと感じています。開発会社が基本設計は行うので、作りやすい設計になっています。ユーザーはこのタイミングでしっかり確認する必要があります。瑕疵責任は開発会社にとってもユーザ企業にとってもよいことではありません。ぜひなくなるようなシステム開発をしていきたいです。