ブログ
不具合と欠陥の違い
システム開発においてクライアントとの意識の違いがはっきりと感じられる場面が幾つかあります。
今回は混同されがちな「不具合」と「欠陥」について私なりの考え方を書いてみようかと思います。
二十数年IT業界に身を置き、様々な場面を経て身に付いた私なりの解釈です。
異論がある方もいらっしゃるかも知れませんが同じ業界でも分野、客層が異なればそれぞれの常識は全く異なります。
さて、本題。
まずは言葉の意味を調べてみます。
「不具合」の意味
http://kotobank.jp/word/%E4%B8%8D%E5%85%B7%E5%90%88
状態・調子がよくないこと。また、そのさま。「―な箇所を直す」
◆あからさまに「故障・欠陥」というのを嫌って「不具合」ということもある。
「欠陥」
http://kotobank.jp/word/%E6%AC%A0%E9%99%A5
必要なものが欠けていること。不備・不足のあるもの。住宅でいう欠陥とは設計や施工段階のミス、手抜き工事等で、あるべき住宅性能がなくなったり、そのために危険が生じている住宅のこと。具体的には、雨漏り、壁等の亀裂、建物や床の傾斜、振動など。
私達の普段の生活では「不具合」と「欠陥」の違いを意識して使い分けることはあまりありませんが、請負の受託開発では「不具合」か「欠陥」かの区別は瑕疵担保責任による損害賠償請求に関わるシビアな問題です。
「欠陥」という言葉の意味を私流にもう少し詳しく解説すると
「あるべき機能が不足している。満たすべき仕様が満たされていない。」状態、こうあるべきだという定義(仕様書)に対して適合していない状態のことです。
一方、「不具合」という言葉を私流に解説すると、
「欠陥」かもしれないし、そうでないかもしれないけれども兎に角クライアントにとって都合の悪い状態のことです。
システム開発の過程ではプログラム開発を行う前にどのような機能が必要か?どのように振る舞うべきか?どのような性能を満たさなければならないか?といった点についてクライアントと打ち合わせを行い仕様書を制作します。
仕様書を満たすが業務には使えないシステムが出来上がった時、クライアントは「欠陥」と受け取ってしまうことがあり、システム開発事業者との認識の違いが顕著になります。
経済産業省による「情報システム・ソフトウエア取引トラブル事例集」においても「システム開発のための作業はユーザとベンダの共同作業であり、ユーザはお金さえ支払えばよいというのものではない。」と書かれており、システム開発は「お客様との共同作業」であることを再認識しました。
システム開発事業者は仕様書を満たすシステムを制作することに対して責任を負い、
クライアントは仕様書を満たすシステムで業務が円滑に行えること対して責任を負います。
システム開発を依頼する経験が少ないクライアントの中には「そんなに深く業務のことを聞いてどうするの?」と驚かれる方もいらっしゃいますが、業務について詳細にお尋ねするのは「使えないシステム」が出来上がるのを防ぐためですのでお付き合い下さい。