プログラムのバグの法的扱い(東京地判平9.2.18)

 事案  貨物運送業を営む原告は、輸出入・販売を行う商社である被告との間で、運送システム等の開発委託契約を締結した。開発そのものは、被告から別のシステムベンダ(訴訟で補助参加人となっている。)に再委託され、システムは原告の検収(どの程度の確認が行われたのかは不明であるが)も終えてテスト稼働に入っていたが、本稼働には至っていなかった。その後、原告はシステムに月次更新の処理遅延や運賃修正の計上漏れなど、大小合わせて60項目を超える不具合があるとして契約を解除し、支払済みの代金等2億7000万円余を損害賠償請求した。
 主な争点は、原告が主張する不具合の存否と、それがプログラムの欠陥(瑕疵)と評価できるか否かである。

 判旨  訴訟では、原告と補助参加人が中心となり、本件システムの検証実験が二年余にわたって行われ、稼働上の問題点とその解決方法についての認識の一致を見た(このような経緯自体、非常に特異であるが)。
 それを前提として、原告が主張する不具合はそもそも存在しないか、存在するとしても、「コンピューターソフトのプログラムには右のとおりバグが存在することがありうるものであるから、コンピューターシステムの構築後検収を終え、本稼働態勢となった後に、プログラムにいわゆるバグがあることが発見された場合においても、プログラム納入者が不具合発生の指摘を受けた後、遅滞なく補修を終え、又はユーザーと協議の上相当と認める代替措置を講じたときは、右バグの存在をもってプログラムの欠陥(瑕疵)と評価することはできないものというべきである。これに対して、バグといえども、システムの機能に軽微とはいえない支障を生じさせる上、遅滞なく補修することができないものであり、又はその数が著しく多く、しかも順次発現してシステムの稼働に支障が生じるような場合には、プログラムに欠陥(瑕疵)があるものといわなければならない。」という観点からすれば、プログラムの欠陥とは評価できないとして、原告の請求は棄却された。

 コメント  プログラムのバグの法的扱いについて言及した、良く引き合いに出される裁判例です。一言で言ってしまえば、「プログラムにバグはつきものであるから、バグであっても法律上免責される場合がある」というもので、そのこと自体に余り異論はないものと思われます。
 ただ、判旨だけ見ると、バグを債務不履行の問題として捉えているのか、瑕疵の問題として捉えているのか、いま一つ判然としないところがあります。原告は「本件システムのプログラムの完成不能」と履行不能を主張しているようですし、裁判所も併合されている別事件についての結論部分では「前記二のとおり、本件システムに不具合が存在することは被告の債務不履行とはいえず」と債務不履行に言及しています。にもかかわらず、良く引用される上記の判旨部分では「欠陥(瑕疵)」という言い方をしています。考えられるのは、本件での解除事由は債務不履行であるが、(一般論としての)規範定立の部分では債務不履行を導く「欠陥」と「瑕疵」を(法律上の責任原因という意味で)特に区別しなかったということですが、(瑕疵は債務不履行の一場合であるとはいえ)両者は要件も効果もはっきりと別物ですから、同じ切り分け基準が妥当するというのも変です。
 実際、「構築後検収を終え、本稼働態勢となった」ことは通常、システムの完成(債務の履行)を窺わせる有力な事情ですから、むしろ瑕疵について判断しているようでもあります。また、「不具合発生の指摘を受けた後」との限定は、ベンダの側に積極的なバグの探知義務はないことを意味していますが、この義務は要するに「テストの義務」ですから、システム完成後の瑕疵の問題でないと話が合いません。完成前であれば、指摘を受けないバグについても当然に潰す義務があると言うべきです。
 さらに言えば、前段の既に対応済みである状況と、後段の稼働に支障がある状況との間には、随分と開きがあります。「遅滞なく補修を終え、又はユーザーと協議の上相当と認める代替措置を講じたとき」とは、要するにバグは既に適切に対応済みということですから、瑕疵を問題にすべき場合でもありません。これに対して、「バグといえども、システムの機能に軽微とはいえない支障を生じさせる上、遅滞なく補修することができないものであり、又はその数が著しく多く、しかも順次発現してシステムの稼働に支障が生じるような場合」という状況は、多数の潜在バグの存在とテスト工程での何らかの「欠缺」を窺わせるもので、こちらは未完成レベルと言えそうです。特に、判決に至るまでには、検収後にトラブルが生じ、その対応があり、これが紛争化して交渉があり、訴訟提起して延々と争う、とこの間で最低でも2~3年は経過しているわけですから、もし、これだけの時間が経過してもなお、後段のような状況にあるのであれば、そのシステムは完成不能と言うほかありません。前段と後段の狭間に落ちるようなケース、例えば重大な支障を生じさせるほどではないが、遅滞なく補修されなかったり数が多かったりするような場合は、ひとまず瑕疵と評価し、しかし解除や損害賠償の効果は限定するくらいが妥当でしょうか。
 各当事者の主張も見ればもう少し明確になるのでしょうが、やや消化不良の感が残ります。