2017/6/12追記

弊社で受託した開発案件に関しては、基本的には瑕疵担保期間を1年→2年にするというのがもともとの内容でしたが、先日の民法改正によって、元の内容(水平線以下の文章)は概ね無効になってしましました。民法改正に関しての詳細は、以下のページをご参照下さい。

民法改正がITベンダーに与える影響 – もばらぶん

ということで、今後は、弊社で受託した案件のバグ修正に関しては、基本的には無期限で対応しようと思います。


瑕疵担保期間とは

仕事で受託開発も結構やってます。業界の一般的な契約だと1年間(の事が多い)は「瑕疵担保期間」として、その間に発生したバグを無償で直しますが、その期間を過ぎると、どんなに重大なバグだったとしても契約上は直す必要はありません。

法律の専門家ではないのですが、ちょっと調べた限りだと、民法、商法に瑕疵担保責任の記載がありますが、契約当事者間での合意によって期間を変更することが可能のようです。1年というのは民法上の規定のようですが、個別契約でも、それに従ってなのか業界の慣例なのかは分かりませんが、1年とするケースが多いように思えます。

1年という数字は妥当か

さて、この1年の瑕疵担保期間ですが、ちょっと短いんじゃないかなと個人的に思います。どのようなシステムかにもよりますが、例えば会計関連のシステムであれば、決算処理は1年に1回しか行わないので、(受け入れテストとかはやるにせよ)バグを見逃す可能性も結構高そうですし、もう少し頻度が高い月次処理とかでも、その期間内では最大で12回しか実行しません。

逆に、毎日実行するような処理しかなければ、1年経っても出てこないバグは相当わかりづらいものでしょうし、1年経過後は有償対応というのはある程度納得感はあります。

とは言っても、OSのサポート期間(瑕疵担保期間とは異なりますが)が数年あることを考えると、1年間というのは総合的に考えてもやはりちょっと短いのではないかなと思います。

今後、しばらく瑕疵担保期間を2年にしてみます。

と、そんなことを思ったので、今後、テスト的に受託開発案件の瑕疵担保期間を2年間にしてみようと思います。

1年経過後に見つかるバグというのはそれほど数は多くないですし、お客様側にとっても、1年間保証が伸びるというのは安心なのかなと思います。