システム開発で発注者が知っておくべき瑕疵担保責任とは

法律書と天秤、ガベル

更新日:2017年10月16日 | 公開日:2017年05月18日

ソフトウェア開発は大規模なものですと数十億円から数百億円という規模に上ります。
当然工数も莫大でわずかな設計ミスがシステム全体の完成を不可能にしてしまうようなケースもあり、時々大きな訴訟問題が新聞紙上で報道される場合もあります( 「システム開発のリスクは技術的要因だけでない!システム構築に潜む3つのリスクとは何か?」)。

一方で、中小企業においてもIT化の流れは加速しており、業務の効率化や新しいサービスを展開するためなどの目的で、非IT系企業でもシステム開発を外部に発注することが増えてきました。
それに伴い、社内でIT部門や法務部門などが整備されていない中小企業においても、システム開発において法的リスクに備えることが急務になってきています。

この記事では、今後も増加することが予想されるシステム開発のアウトソーシングにおいて、企業が押さえておくべき瑕疵責任について解説します。

ソフトウェアの「瑕疵担保責任」とは何か

タイピング

「瑕疵担保責任」という言葉は一般的には耳慣れない言葉ですが、法律上発注者が必ず押さえておかなければいけないキーワードとなっています。

「瑕疵」とは、もともとキズや欠点を意味し、取引通念から見て通常であれば同種の物が有するべき品質・性能を欠いており欠陥が存在することを意味します。
システム開発においては要件定義書や基本設計書などによって定義された仕様・性能に仕上がっていない場合に「瑕疵」と判断されることになります。
そしてシステムの不具合が偶発的なものでなく、「瑕疵」だと明らかになった場合には、開発会社は発注者に対して「瑕疵担保責任」を負う義務が生じます。

不具合があった場合には、要件定義書や基本設計書を精査して瑕疵があったかどうかを明らかにしますが、納品物と要件定義書や基本設計書との間に無視できるほどの小さな不一致があった場合で、発注者の業務遂行にあたって特別の支障がない場合には、瑕疵ではないと判断されることもあります。

また、システム開発では納品直後にバグが取りきれていないことは、通念上よくあることとして認識されています。
このため納品後も一定期間の間無料でバグ修正に応じることも一般的であり、契約書に明記することもあります。
こうしたケースにおいては、開発会社は納品先からの指摘に基づいてバグの修正を行います。
こうして修正された場合には、システムの瑕疵にあたらない、とした判例があります。
しかし、そうしたやり取りをした後もなおバグが取りきれずに業務に支障が出てしまった場合などには、納品物の瑕疵にあたるとした判例もあります。

また、当初システムの瑕疵責任ありと疑われた場合であっても、その後の調査の結果システムのエラーがシステム内部のバグによるものではなく、ハードウェアの問題や操作ミスによるものであると判明した場合にはシステムの瑕疵ということにはなりません。

発注者は「瑕疵担保責任」で何を請求できるか

困った表情の男性

発注者が開発会社に瑕疵担保責任を問うことになったとき、一番スムーズに処理が進むのは、あらかじめ瑕疵担保責任について契約書に明記してある場合です。
この場合には、事前に双方が当該システム開発案件のリスクについて共通の認識を持っており、万が一想定していたケースに陥った場合の対処方法や責任についても事前の合意に基づいて遅滞なく対処することが期待できます。

契約書に明記していない場合でも、次のような対処が可能です。

瑕疵修補請求

納品後のシステムに瑕疵があった場合、瑕疵が重要でなかったり修正にかなりの費用を要したりする場合などを除いて、発注者は開発者に対して瑕疵の修補を請求することができます。

契約解除と代金返還請求

瑕疵が重大でシステムを使った業務の遂行が困難であったり、ソフトウェア開発契約に明記された納品物の目的を達成することができなかったりなどの場合には、発注者は瑕疵を理由にソフトウェア開発契約を解除することができ、開発会社に対して支払済みの代金の返還も求めることができます。

損害賠償請求

納品物のバグやシステムエラーによって業務に支障が出た場合、納品物に瑕疵ありと認められれば、損害賠償の対象となります。
ただし、無制限に損害賠償が認められるわけではなく、適切と認められる範囲に限られます。

瑕疵担保期間に注意

瑕疵担保責任に基づく「契約解除」「修補請求」「損害賠償請求」などについては、納品後1年以内に請求を行う必要があります。

瑕疵担保責任が争われた裁判事例を見てみよう

麻の鉢植えとガベル

今解説してきたように、瑕疵担保責任を巡っては判断のポイントとなる重要な原則がいくつか存在します。
ただし、IT関連の訴訟は事案が新しいものが多く、瑕疵担保責任の内容についても次々と注目すべき新しい判例が出ていますので、実際の判例を見てみることでより具体的に瑕疵担保責任の内容について理解を深めることが可能です。

ソフトウェアのバグによる損害の賠償請求が退けられた例

ソフトウェアの不具合が実際に存在することが確認できたにも関わらず、裁判所が原告(発注者側)の訴えをいつでも認めるというわけではありません。

「え?バグがあったことが明らかになったのに、発注側の訴えを認めてもらえないの?」という感想を持つ方が多いと思われますので、詳しく見てみましょう。

参考文献:『判例タイムズ 964』

裁判までの流れ

1. 運送業A社は、自社の営業管理システムを導入するため、開発会社Bとの間でソフト開発委託契約を締結し、Bはその開発を下請けの開発会社Cに再委託

2. 納品されたシステムが正常に稼働しなかったので、B社に対してコンピュータープログラムに瑕疵があったとして債務不履行及び不法行為を理由に損害賠償を請求

3. B社とC社は訴訟提起後の調査の結果に基づき、コンピュータープログラムに7つのバグがあったことを認める

4. しかし、バグは確かにあとからの調査で見つかったもののバグが直せなかったのは、納品先A社からバグについて具体的で適切な指摘がなかったからであると主張

5. 併せて別の訴訟を立てて売買契約の残代金の支払いを請求

裁判所の判断

裁判所は判決に先立ち、バグの対応についての見解を示しました。

1. バグが検収後に明らかになったとしても、開発会社が不具合発生の指摘を受けた後にすみやかに補修を完了し、発注者側も認める代替措置を取った場合には、プログラムの欠陥ではない

2. バグがシステムの機能にかなりの支障を生じさせる上に、すみやかに補修することができないものであったり、バグの数が著しく多かったり、しかも次から次へとバグが発生するなどしてシステムの稼働に支障が生じるような場合には、プログラムに欠陥がある

ここまでは、発注者側、開発者側両サイドへのバランスの取れた見解を示しています。

その上で、この訴訟に関しては、開発会社B社はバグの指摘がされた後に遅滞なく補修を終えているので、プログラムの欠陥とは言えないとして、発注者Aの損害賠償請求を棄却し、開発会社Bの残金請求を認めました。

裁判所の判断から学ぶべきこと

まずバグについての見解として、バグが自動的に開発側に責任がある、という判断にはならないというところを押さえておきましょう。
もちろん裁判所はバグがあることを積極的に認めているわけではありません。
しかし、バグをすみやかに修正した場合には、納品時にバグがあったとしても開発会社の責任なしという判断が下る場合があることに注意しておく必要があると言えます。

開発会社側の瑕疵責任が認められた例

それでは、今度は開発会社側に瑕疵責任ありと認めた例を取り上げます。
先程の例と正反対の判決となっていますが、いったいどこに違いがあるのか興味深いところです。

参考文献:『判例タイムズ 1194』

裁判までの流れ

1. 発注側A社は開発会社B社に対して販売管理システムの開発を依頼

2. 納品後種々の不具合があり、納期までに完成品が納品されなかったとして契約の解除、損害賠償を求める

3. 発注側A社と開発会社側B者で納品物の共同検証を行い、不具合の内容が特定

4. 開発側B社は不具合の是正には発注側の協力が不可欠なのに、A社は不具合の指摘をしなかったので責任なしと主張

裁判所の判断

この裁判でも、裁判所は判決に先立ってバグについての重要な見解を明らかにしていますので、そこから見てみましょう。

1. システム開発におけるバグの除去は第一義的に開発側の責任

2. バグの修補については、システムの納入後定められた期間内ないし一定の相当期間内に実用に耐え得る程度にまでなされるべき

3. 通常のシステムにおいて存在することが許されないような不具合については発注側の指摘を待つまでもなく開発会社が当然に自ら是正すべき

先程の運送会社の裁判における判例に先立つ見解よりも、発注会社側の保護に重きを置いているように読めますね。

その上での判決は、下記のようになりました。

本件においては開発会社の修補の機会は再三にわたって与えられているし、度重なる開発期間の延期等からして信義則上契約解除をするにあたり催告をしなくても不合理とは認められない特段の事情があるとして、開発会社の責任なしという主張を退けました。

裁判所の判断から学ぶべきこと

この判決は、開発会社にかなり重い責任を認める判決となっていると言えるでしょう。瑕疵担保責任の特徴は無過失責任であることです。
無過失とは仕事としては完成品を納品したのに(途中までしか完成していないのに強引に納品した場合には過失ありとなります)、発注側の指摘などで、当初の目的が果たせないと明らかになった場合に責任あり、と認めるのが無過失責任である瑕疵担保責任となります。

発注者にとってはこの判決は心強いものではありますが、常にこの無過失責任が認められるというわけではないので注意しましょう。

検収後に発覚した不具合の補修責任はどこまであるのかが争われた例

続いて、検収後に発覚した不具合について、その補修責任はどこまであるのかが争われた例をみてみましょう。

参考文献:『判例タイムズ 1127』

裁判までの流れ

1. 石材加工・販売会社のA社は、販売管理、製造、会計、給与等をコンピューターにより処理することができるシステム開発を開発会社B社に依頼

2. システムは納品されたが本稼働後も不具合が発生したため、開発会社に対応を求めたが、A社が納得する補修は結局不可能

3. A社はシステムの継続使用を断念して旧システムに戻し、B社に対しては代金の一部を未払いにする

4. B社はA社に対して残金の請求を求めて訴訟を起こす

5. A社は、システムは完成していないし、仮に完成していても、Bが修補をしないので契約を解除したので支払義務はないとして損害賠償請求(反訴請求)。

裁判所の判断

この裁判の争点は2つありますので、それぞれについての裁判所の判断を見ていきましょう。

1. この裁判で争われたシステムは完成しているのか未完成なのか
判決では、納品を受けた発注側の主観ではなく、「当初の請負契約で予定していた最後の工程まで終えているか否かを基準として判断すべき」だとして、本件システムは完成していると判断しました。

2. この裁判で争われたシステムに瑕疵はあるのかないのか
処理速度の不具合、通信費の増加などについては瑕疵があるとした上で、販売管理システムの瑕疵としては重大なものであり、この瑕疵により契約の目的を達することができないと判断しました。

なおかつ瑕疵の原因は本件システムの設計自体に問題がありとして、発注側の損害賠償請求を認めました。

裁判所の判断から学ぶべきこと

この事例では、完成品とは何かについて具体的指針が与えられたことが大きいでしょう。
納品時のトラブルの現場では「こんな不具合だらけのシステムは完成品とは言えない! 完成品をもってこい!」というようなやり取りが生じます。

この裁判では、こうした完成品の定義として、最終的に発注者が満足するかどうかではなく、「当初の請負契約で予定していた最後の工程まで終えているか否かを基準として判断すべき」という明確な基準を示しました。

つまり、契約書に明記された開発工程を終えていれば、バグがあっても完成品であり、そこに過失責任はなしと判断したということになります。

その上で瑕疵担保責任を判断するという手順になっており、この事例では瑕疵担保責任ありという結論になりました。

結果的には損害賠償請求も通ったわけですが、「当初の請負契約で予定していた最後の工程まで終えているか否かを基準として判断すべき」という裁判所の判断はとても重要です。

つまり、今回の判例に先立つ指針では、設計時に提示された工程を了承した時点で、「工程を終了した=完成した」とみなすことに同意したということにもなり得ますので、設計書を含む契約書の内容・表現については慎重に判断することが大切だと言えます。

【まとめ】

キーボードやマウス、コーヒー、カレンダー

以上、納品時の瑕疵担保責任について整理しながら、興味深い事例を検討してきました。

中小企業においては、社内にIT関係の専門部署や法務の専門部署などはない、社内に特に詳しい人間がいるわけでもない、というのが実情でしょう。
そうした中で、せっかく納品されたシステムを使い始めた途端「こんなはずじゃなかった!」となってしまっては、パニック状況に陥ってしまうのも無理はありません。

今回の記事では不幸にしてそういう状態に陥ってしまった企業の例を取り上げましたが、そうならないためには、単に技術的に優れたものを持っているというばかりでなく、お客様に喜ばれる信頼のおける開発企業を選定することが不可欠となります。

開発の初期段階で、発注側と十分にコミュニケーションを取り、要件定義や基本設計書を固めてく中で信頼関係を醸成していくことが可能な会社でないと、納品時のトラブルを避けることは難しいでしょう。

こうした信頼のおける開発会社を見つけたい、という場合、ぜひ開発会社の業界に精通した「アイミツ」にお声がけください。
御社にとってベストのパートナー選びをお手伝いさせていただきます。

いま知りたいこと
コンシェルジュが解決します!

コンシェルジュサービスは
3万社以上が利用している無料の相談サービスです。

コンシェルジュ

発注は時間も手間もかかりますよね?

コンシェルジュが解決します!

コンシェルジュに相談、あなたにあった業者を提案、発注の手間を削減!

完全無料

まずはお気軽にご相談ください