[IT業界]製造業とソフトウェア開発における品質保証(品質管理)の違い

ソフトウェア開発の会社において、品質保証部門(もしくは、独立したチーム)を持っている会社というのは、決して多くは無いかもしれませんが珍しいというほどでもないと思います。
(品質管理という表現を用いることもありますが、この表現の違いについての私の考えについては、最後に書きます)

私が勤めている会社でも、品質保証チームはあります(というか、私の配下です)。

ただ、製造業の品質保証部門並みの権限を持っているケースというのはほとんど無いのではないでしょうか。
(※ソフトウェアの世界でも、銀行のATMや医療機器の組み込みソフトなどのミッションクリティカル分野では話も違ってくると思いますが、このエントリーでのソフトウェア開発は、そこまでミッションクリティカルではない通常の業務アプリケーションなどを指しています)

ここでいう権限というのは、「品質保証部門の検査でNGとなったものは、たとえ社長が出すといっても決して出荷されない」というものです。品質保証部門があるからには出荷基準もあるとは思いますが、その基準というのは製造業のものと比べればかなりゆるいものでしょうし、温度感にはかなりの差があります。

また、出荷前テストのありかたについても大きく違うと思います。
製造業のそれは、出来上がってきた製品を文字通り出荷前に検査するだけです。
ソフトウェア業界で一般的にどうかはわからないのですが、私の会社では出荷前の2〜3ヶ月は品質保証部門にも入ってもらってテストとデバッグを行っています。
ですので、出荷基準を満たしているとは言っても一発勝負で合格しているわけではなく、2〜3ヶ月かけて出荷基準内に収束させているということになります。

。。。と、製造業とソフトウェア開発での品質保証部門のあり方の違いについて書きましたが、決してソフトウェア開発においても製造業と同じようなスタンスにするべきだというつもりはありません。
品質の重要性を軽視するつもりはありませんが、狭義の品質(不具合が少ないこと)は製品の魅力の1要素に過ぎません。新しい機能や製品をスピーディに出していくことも必要ですし、豊富な機能や使い勝手の良さというのは広義の品質に含まれます。そういった「機能拡張のスピード感」と「不具合にかけるコスト・時間」とのバランスを考えていかなければならない問題だと思います。

そういった意味では、ソフトウェア開発においては品質は保証するものというよりは管理(コントロール)するものと考えているので、品質保証という言い方よりは品質管理という表現のほうが好みです。
#私の会社では品質保証チームという名称ですが。。。