プログラムにはバグ等の不具合がつきものですが、場合によっては不具合のせいで責任問題に発展することもあります。
不具合に関する責任の一種、システム開発における「瑕疵担保責任」とは一体どのようなものなのでしょうか。
目次
システム開発における瑕疵担保責任とは
「瑕疵」とは「欠陥」という意味ですが、ここでは「そのものが通常備えているはずだと当事者が予期する性能や品質が欠けている状態」だと考えてください。
何かを売る人は、販売後に判明した欠陥を放置する、いわゆる「売りっぱなし」をしてはならず、売った後でも売物に対する責任を負う必要があり、これを「瑕疵担保責任」と言います。
ただし瑕疵担保責任が発生するのは、買主が欠陥を知らず、知らないことについて過失がない、言い換えれば「十分な注意をしていたけれど欠陥が隠れていてわからなかった」場合などに限られています。
瑕疵担保責任の内容
ソフトウェアに瑕疵がある場合、買主は売主に対して以下のいずれかを請求できます。
- 瑕疵の修補(瑕疵が軽微な場合や、瑕疵の修補に不相応な費用がかかる場合は請求不可)
- 契約解除と代金返還(瑕疵のせいで契約の目的を果たせないなどの場合に限る)
- 損害賠償(瑕疵が原因で損害が生じた場合)
- 代金の減額(2020年4月より新たに追加)
瑕疵担保責任の期間
ソフトウェアの場合、納品から1年以内であれば売主の瑕疵担保責任が問われます。
しかし2020年4月からは瑕疵担保責任という言葉が「契約不適合責任」という名前に変わり、「買主が瑕疵を知ったときから1年以内」であれば売主の責任が問われてしまいます。
ただし、「納品から5年」が経過すれば売主の責任は免除されることになっています。
瑕疵に該当する場合としない場合
もし「不具合=瑕疵」ならほとんど全てのプログラムが瑕疵担保責任の対象となってしまうはずです。
不具合が瑕疵と判断されるには条件があるので、具体的にどういったものが瑕疵と判断されるのか、例を交えて紹介します。
瑕疵担保責任が発生する場合
・単純なプログラムミスではなく、設計から見直さなければならないような不具合
例えば同種・同規模のシステムで通常要求されるような仕様を満たしていない場合や、通常必要不可欠とされる制御がないようなケースが該当します。
・不具合の数が多すぎてシステムの稼働に支障が生じるような場合
修正可能な不具合であっても、数が多すぎて、なおかつ修正して再納品した後でも、さらに多くの不具合が見つかるようなケースが当てはまります。
瑕疵担保責任が発生しない場合
・不具合を遅滞なく修補した、または代替措置を講じた
仮に不具合があったとしても、それをすぐに修正した場合は瑕疵に当たりません。
また、不具合を修正する代わりにユーザー側と協議をして、別の措置を講じて場合も同様です。
・特定の人物「のみ」が操作を理解できない
一般的な利用者が操作を理解できないのなら瑕疵に該当しますが、例えば「ものすごくコンピュータが苦手な人だけが操作できない」ような場合は瑕疵になりません。
・発注側等の指示によって生じた不具合
例えばユーザーのみが知っている情報を知らされず、間違った情報を元に合意した仕様で発生した不具合は、瑕疵として認められません。
瑕疵担保責任(契約不適合責任)の内容を知るべし
瑕疵担保責任を問われると、補修・返金・契約解除・損害賠償・代金減額等の対応をする必要があります。
しかし軽微な不具合などにまで責任が及ぶことはありません。
瑕疵担保責任の及ぶ範囲を知っておけば、クライアントからの不当な請求を退けることも不可能ではないので、ぜひ覚えておいてください。
出典:「e-Gov」 https://elaws.e-gov.go.jp/search/elawsSearch/elaws_search/lsg0500/detail?lawId=129AC0000000089
インフラエンジニア専門の転職サイト「FEnetインフラ」
FEnetインフラはサービス開始から10年以上『エンジニアの生涯価値の向上』をミッションに掲げ、多くのエンジニアの就業を支援してきました。
転職をお考えの方は気軽にご登録・ご相談ください。