一審では多数の不具合が「瑕疵」であると認定されたのに対し、控訴審では、いずれも「瑕疵」ではないとされた事例。
事案の概要
求人情報事業等を行う原告(X)が、求人の募集要項である文字情報を自動組版でウェブにも反映させるシステム(本件システム)を導入するにあたって、被告(Y)との間で、Yの有するパッケージソフトをカスタマイズして本件システムを開発するという業務(本件開発業務)を行うという合意の下で、基本契約、要件定義個別契約及び開発業務個別契約(本件各契約。金額合計約4000万円)を締結した。
ところが、要件定義開始から2年以上経っても、システムが完成せず、要件定義のやり直しなどが行われ、追加費用・仕様変更に関するやり取りの折り合いがつかなかった。
Xは、Yが納期に納品を行わず、その後に納品された機能にもバグが生じたとして、本件各契約を解除し、支払済み代金の返還として原状回復請求(約2800万円)を行った(本訴)。
これに対し、Yは、システムは現実に稼働しており、一部の未完成があるとしても、その原因はXの協力義務違反によるものであるとして、開発業務個別契約の未払報酬(約1650万円)の支払いを求めた(反訴)。
原審(東京地判令3.5.24・平29ワ37261)は、本件システムには瑕疵*1があり、品質保証条項(基本契約17条)に違反しており、完成して納品したともいえないから、約定解除事由に該当するとして、本訴請求のすべてを認容した(ただし、Xが主張していた不具合のすべてを「瑕疵」に当たるとしたわけではない。)。
一方で、反訴請求については、Xの協力義務違反は認められず、棄却された。
Yが控訴したのが本件である。
ここで取り上げる争点
原審、控訴審ともに長期に渡る事案で(トータルで7年)、判決文もどちらも長いため、争点は多数ある。
(0) 説明文書の信用性(※事実認定の補足)
- 協議の過程でYが提出した文書(説明文書)には、「Redmineやメール等の内容がすべて当時の要件定義書(見積に反映された内容)に盛り込まれておらず,現在の不足(追加見積)箇所が出ていると認識しています」「この期間の遅れの要因
は,弊社の主担当社員の退職及び人員の不足と,前述の要件整備問題により開発中に度重なる仕様変更を要したことが大きかったと考えています。」などという記載があり、遅延や不具合の原因が、Yにあるかのような記載になっていたため(つまり自らの責任を認めるような内容)、この信用性が争点となった。
(1)本件システムの仕様が要件定義書によって確定していたか
- Yは、要件定義書に記載されたものは開発を終えたのにXが大量に仕様変更を追加したと主張したのに対し、Xは、要件定義書作成後も協議によって要件を確定させる合意があったと主張していた。
(2)本件システムに瑕疵があったか
- 原審の主な争点は瑕疵の有無であり、複数の不具合について瑕疵がの該当性が争われていた。
(3)本件各契約の約定解除原因の有無
- Xは、債務不履行(成果物の納入遅延、品質保証条項違反、瑕疵の修補義務違反)、「重大な損害を及ぼしたとき」、「所定の納期までに成果物を納入する見込みがない」など、多数の解除原因を主張していた。
(4)未払報酬請求の可否(反訴)
- Yは主位的に、Xに協力義務違反があったから未払報酬の全額を請求し、予備的に出来高請求として完成割合81.8%に相当する報酬を請求していた。
裁判所の判断
(0) 説明文書の信用性
裁判所は、説明文書について次のように認定した。
当時の要件定義書(見積りに反映された内容)に「Redmineやメール等の内容」の全てが盛り込まれていなかったことは,この要件定義書の交付を受けて検収していたXにおいても認識し,少なくとも認識し得たものである上,本件システムの開発が遅れた要因において,Xが要件定義書に盛り込まれていなかった事項についての要望を多数行ったことも影響していたことが認められるのであって,その責任の全てがYにあるとはいい難い。また,説明文書が作成された平成28年10月の少し前には,要件定義書に記載されていないが見積り時に要件化されていたとXが主張する項目が多数あることが表面化し,YとXが担当者レベルで要件定義の再整備に関するやり取りを重ねて,Yが要件定義書第2版を送付したという事実があり,説明文書は,このような経緯を踏まえて,Xが,本件開発業務に関し,追加費用が発生することになった経緯や作業遅延の理由等について文書で説明するよう求めたのに対して,Yが作成したものであることが認められる。上記のように紛争が顕在化した後,事態を打開し今後の交渉を進展させるために一旦は相手の言い分を認めて謝罪することは,交渉の過程で一般的にあり得ることである。
説明文書の内容をみても,Yは,遅れの原因の一つが主担当であった従業員が退職したことであるとして謝罪しているが,謝罪の対象は「結果としてご迷惑をおかけすることにな」ったことであり,もう一つの原因である「要件整備問題により開発中に度重なる仕様変更を要したこと」については,単に事実として指摘するのみで,責任がYにあることを認めたものではない。全体としてみると,責任の所在については,上記の従業員退職の点を除いて抽象的であるといえ,説明文書の主眼は,Yの責任体制(保守対応体制)や今後の進め方にあり,「なんとか着地点を見出して新システム全体が安定稼働し,貴社の競争力向上を実現する為のステップとしていきたい」というのが,当時のYの認識であったことがうかがえる。
(1)本件システムの仕様が要件定義書によって確定していたか
裁判所は、この点について一般論からして要件定義書等以外の要件が取り込まれることがあるとしても、それは例外であるとしている。
ソフトウエア開発の請負における業務の内容,すなわち開発の要件及び仕様に関する合意については,基本的に要件定義書や基本設計書が表示行為を組成すると解されるから,そこから要件等に関する双方の意思を認定するのが原則である。もっとも,要件定義書や基本設計書に記載されていない要件等であっても,双方が書面又は口頭の合意により事後的に契約内容に含めるということはあり得るが,特定の要件等について双方の意思が合致していることが明確な場合に限られるというべきであり,請負代金額についての確定的合意がされている場合は特に,ベンダーが一応の要件定義書を作成し,その後にユーザーとの間で協議をして詳細を詰めて確定させる旨のX主張の合意をすることは通常は想定し難いというべきである。
このように述べて、実際には、要件定義書に記載されていないが、口頭、メール、Redmineで要望した事項にYが対応し、その追加費用の説明を行っていなかったことから、Xも要件定義書に記載されていない要件も無償で対応してもらえるという認識があった可能性があるが、遅くともXY間の認識を整理して作成された要件定義書第2版を受領した後の仕様変更については追加費用が発生する可能性があることを認識していたと認定したとし、要件定義書のとおり要件を確定していたとした。
(2)本件システムに瑕疵があったか
本件では、5つの代表的なバグ(①システムダウン(タイムアウト),②特定文字列によるバグ,③通知メールが届かないバグ,④エラー表示のバグ及び⑤WEBサイト画面のバグ)の存否・評価が争われた。このうち、原審では、①、③、④、⑤が重大な瑕疵であり、②は瑕疵ではないと認定している。
このうち、①は原審では、対応時期が過ぎてもたびたび発生し、原因が究明されていないなどとされていたが、控訴審ではスケールアップや再起動によって解消されており、「処理時間についての要件は要件定義書には含まれていない」「処理速度に関する要件は非機能要件として定めることが通例であり,処理速度に関する考え方については,ベンダーがユーザーに確認して合意を取るのが通例であると考えられる」「YがXに対し,処理速度を具体的にどのように設定するか事前に確認しなかったことは不適切といえるものの,Yのみに責任があるということはできず,上記の点をもってバグであるということはできない」と述べ、処理時間に関する具体的な要件がない中でタイムアウトが生じることについて契約解除の原因である不具合の存在は認められないとした。
②は、原審同様に存在が認められないか、特殊文字をエスケープ処理しただけに過ぎないとして、バグには当たらないとされた。
③も、メールが届かないという不具合について、求人応募者から企業へメールが届かないという不具合が生じていたと認めるに足りる証拠はないとされた。
④のエラー表示については、郵便番号や日付のフォーマットの入力ルールに沿って入力すれば問題がないものであるからバグとは言えないとされた(その他のエラー表示に関する不具合の主張も存在が認められていない。)。
⑤は、ブラウザがIE9だった場合に生じる問題だとされているが、要件定義書には対応ブラウザの記載もなく、Yの落ち度であるとはいえないとされた。
以上より、代表的なバグの主張は退けられ、本件各契約の目的を達することができないような本件システムの重大な瑕疵はないとされた。
(3)本件各契約の約定解除原因の有無
Xは、多数の解除原因を主張していたが、このうち、納期どおりに本件システムの納品がなされなかったことについての解除についての部分を引用する。
開発業務個別契約書4条1項では,本件システムの第2フェーズ(WEB補強機能)の納期は平成27年1月31日,第3フェーズ(誌面関連機能)の納期は同年4月30日,第4フェーズ(経理関連機能)の納期は同年6月30日とされているが,(略)XとYとの間では,本件システム開発の内容について,要件定義書のとおりに要件の全てを確定して,その時点で仕様を凍結して開発業務個別契約書による本件各契約を締結したものであるが,XとYとの間で要件定義書の要件が十分に詰められていなかったことから,Xにおいて多くの追加の要望が出されたこと,リニューアル公開後にも対応の必要なバグが存在したことなどが原因となって,上記各フェーズの納期に従った本件システムの納品がされなかったものと認められる。
(ウ)そして,控訴人が上記(イ)の各納期に本件システムを納品しなかったことが納期の順守を定めた開発業務個別契約書4条1項及び業務委託基本契約書16条に違反するか否かについてみると,上記(イ)のとおり,納期に従って本件システムの納品がされなかった責任は,Y及びXの双方にあるといわざるを得ない上,XがYとの間で,平成27年1月以降も本件システムのバグの修正や追加要件等についてやり取りをしていたこと,平成28年6月から同年8月にかけて,要件定義の再整備に関するやり取りを重ねていたこと,XがYに対し,追加費用や作業遅延の発生理由等について文書による説明を求め,同年10月28日にYからXに対する説明文書及びバグ改修の進捗状況に関する報告書が交付されたこと,Xが同年11月7日に至ってYに対し本件システムの全機能の開発及びバグの改修を催告したことなどによれば,Xは,同年10月までの間は本件システムが納期に納入されていないことを認識しつつも,システムの要件の再定義や改修等に向けてYと協力して対応していたものであって,納期の延期について黙示的に承諾していたものといえるから,Yが上記(イ)の各納期に本件システムの各機能を納品しなかったことをもって,直ちに開発業務個別契約書4条1項及び業務委託基本契約書16条に違反したものということはできない。
つまり、契約上の納期には遅延していたものの、その原因は双方にあり、納期が経過した後も双方でのやり取りをしてYも協力して対応していた以上、納期の延期について黙示的に承諾していたから、債務不履行はなく、解除事由がないとされた。
(4)未払報酬請求の可否
裁判所は、完成が認められないから満額の報酬請求は否定したが、最判昭56.2.17に基づいて、完成できなかったことについて、請負人に帰責性が認められない場合においては、その工事内容が可分であり、注文者が既履行部分の給付について利益を有するときは、その利益の割合に応じた報酬を請求できるとした*2。そのうえで、利益の割合を6割だと認定した。
Xにおいて,平成28年1月30日,それまでYから提供されていた本件システムの機能を使用して××WEBを公開し,約1年間にわたって使用していたことが認められるのであるから,当該業務内容は可分であって,Xは既履行部分の給付について利益を有していたと認められる。
そうである以上,Yは,Xが有する利益の割合に応じた報酬を請求することができるというべきである。
Yは,この点について,81.8%の完成割合に対応する報酬の支払いを求めているが,同割合を認定すべき客観的証拠がないことは前記5(4)のとおりであり,本件開発業務の性質上,完成割合に応じたXの利益を直ちに認めることも相当であるとはいい難い。そうすると,上記のとおり,XがYから提供された本件システムの機能を使用して××WEBを公開し,約1年間にわたって使用していたこと,Yによる既履行部分について,Xによる本件各契約の解除時において,バグがあったとは認められず,これがあったとしても契約の目的を達成できないようなバグを生じていたとは認められないこと,Yは本件開発業務の完成割合を81.8%であると主張し,証拠(乙28,29等)を提出していること,その他,本件で認められる前記2(1)の事実関係を総合すれば,Xは,少なくとも6割の範囲で利益を有するものと認めるのが相当である。
そこで、業務委託料合計の6割から、既払い部分を控除した残額(約198万円)の限度で、反訴請求を認容した。
若干のコメント
本件は、よくあるシステム開発紛争の一つですが、最大の特徴が原審において契約の目的を達成できない「瑕疵」を複数認定して契約の解除を有効としたのに対し、控訴審では、いずれも「瑕疵」には当たらないという正反対の結論が出たという点が挙げられます。
いわゆるプロジェクト・マネジメントの巧拙については、評価者によって判断が分かれ得るところであり、一審、二審で結論が分かれるケースも珍しくないのですが(旭川医大事件:札幌高判平29.8.31、野村vsIBM事件:東京高判令3.4.21)、瑕疵か否かがここまで鮮明に分かれた事件はあまり例がないと思われます。
個々の判断の違いの詳細については、各判決文をご覧いただくとして、他に印象的だった点としては、
- ベンダが協議中に、一定の非があるかのような文書を提出していたことについて、謝罪することはよくあり得ることであり、責任を認めたものとはいえないとしたこと
- 処理時間については、非機能要件として要件定義段階で定められていたものではなく、一定の時間を要することについては瑕疵であるとはいえないこと
- 納期に間に合わなかった後に、双方で協力して対応していたから、ユーザも延期することについて黙示的に承諾していたといえること
- 割合的報酬請求を認め、その割合を「えいや」で6割としていること
があります。1は、すでに他の事案でもよく見られるところであり、状況、内容次第ですが、自己に不利な内容を伝えたとしても挽回できる可能性があるということを示しています。2は、非機能要件が問題となるケースが増えており、きちんと要件定義・設計段階で決めておくことの重要性が改めて認識できるところです。3は、遅延した後の、納期延長についての合意の有無は、事案によって判断が分かれており、予測可能性が乏しいです。4は、実質的には、過失相殺における過失割合と同等の機能を果たしていると感じます。