システム開発契約の類型
システム開発契約は、主に以下の2種類に分類されます。
| 契約類型 | 特徴 | 責任の所在 |
|---|---|---|
| 請負契約(民法632条) | 仕事の完成が義務 | ベンダが完成責任を負う |
| 準委任契約(民法656条) | 業務の遂行が義務 | 完成責任はなし、善管注意義務のみ |
実務では、要件定義・設計フェーズは準委任、開発・テストフェーズは請負とする多段階契約が一般的です。
2020年民法改正:契約不適合責任
2020年4月施行の民法改正により、「瑕疵担保責任」は「契約不適合責任」(民法562〜564条)に変わりました。
改正のポイント
旧制度(瑕疵担保責任): - 隠れた瑕疵のみが対象 - 解除・損害賠償のみ
新制度(契約不適合責任): - 隠れた瑕疵かどうかを問わない - 追完請求(修補・代替物引渡し)・代金減額請求・解除・損害賠償が可能
通知期間
買主(ユーザー)は不適合を知った時から1年以内に通知しなければなりません(民法566条)。ただし、契約書で期間を変更することも可能です。
システム開発特有の問題:協力義務
システム開発は、ユーザーとベンダの相互協力なしには完成しません。判例では、ユーザーにも一定の協力義務があると認めています。
東京地裁平成16年3月10日判決(スルガ銀行事件等): ユーザーが要件を明確にしない、意思決定が遅いなどの場合、ベンダの責任が軽減される方向の判断がなされています。
よくあるトラブルと対処法
ケース1: 納品物がバグだらけ
対応: 契約不適合責任に基づく追完請求(修補要求)を行います(民法562条)。修補が不可能または拒否された場合は代金減額請求または契約解除が可能です。
ケース2: プロジェクトが途中で頓挫
対応: - 請負の場合: 債務不履行に基づく損害賠償請求(民法415条) - 準委任の場合: 業務遂行の善管注意義務違反を主張
ケース3: 追加費用の一方的請求
対応: 請負は仕事の完成が義務のため、当初仕様の範囲内の作業は追加費用を請求できません。追加変更(仕様変更)については、変更管理プロセスを事前に定めておくことが重要です。
契約書で事前に定めるべき事項
- 要件定義の確定手続き(署名・捺印での合意)
- 仕様変更管理プロセス(変更依頼書・見積もり・承認)
- 検収基準と検収期間(例: 納品から30日以内)
- 責任制限条項(損害賠償上限額の設定)
- 契約不適合責任の期間(例: 検収から1年)
まとめ
システム開発紛争は、要件定義の曖昧さと責任分担の不明確さが根本原因となることが多いです。契約書で検収基準・仕様変更手続き・責任制限を明確にし、プロジェクト中は変更管理を記録することが予防の要です。