検索検索
English

〔前編〕製品・サービスの競争力に直結する「品質」を上流からつくり込む

【LifeKeeper のプロフェッショナルたち #6】サイオスが提供するHAクラスターソフト「LifeKeeper」。その品質を高める全社的な活動を展開するのが品質保証部です。同部の部長である村岡伸彦に、取り組みを支える信念や、現場を巻き込むために心がけていることを尋ねました。

ピープル2017年2月10日

品質は、ユーザーにとっての「利用価値」

‐ サイオスは、ソフトウェアを開発・提供するメーカーとして「品質」をどのように考えているのでしょうか?

村岡:ソフトウェア開発における「よい品質」とは端的に言うと、利用者にとって「使える」、「役立つ」こと。要は「使っていただいてナンボ」です。品質とは、使うことで初めて手にできる 「利用価値」であり、利用者が意図する結果をもたらすものであるかどうかです。品質の良し悪しを最終的に判断するのは、製品やサービスを提供する側ではなく、利用する側にあります。

こうした考えに基づいて、われわれ品質保証部は社内の開発・マーケティング・営業の側ではなく利用者の立場に立って品質を向上するさまざまな活動をおこなっています。


「品質保証部は社内の開発・マーケティング・営業の側ではなく利用者の立場に立って品質を向上する活動をおこなっている」と語る品質保証部長の村岡伸彦

サイオスの開発するLifeKeeperでいえば、ミドルウェアやアプリケーションに障害が発生した場合に、待機系に適切にフェールオーバーするというコア機能の保証はもちろん、LifeKeeper自身が お客様の利用環境下で安定して動作するという信頼性の高さが、目指す品質目標の柱になります。

LifeKeeperは、LinuxやWindowsなどのOSレベルの機能を利用して動作します。言い換えるとLinuxであればさまざまなディストリビューションの最新バージョンのOSの仕様に対応しなければ最悪の場合、期待した通りに動作しなくなる可能性もあります。LifeKeeper自体は成熟した製品ですが、変化していくお客様の利用環境に常に合わせていくことをメーカーとして掲げています。

‐ 品質はまさに、市場におけるサイオス製品・サービスの競争力に直結するということですね。

村岡:その通りです。それを支える上で重要な役割を演じるのが、品質保証業務です。サイオスでは経営幹部を含むメンバーで構成するステアリングコミッティのもとで、品質保証を全社的な活動と位置づけて取り組んでいます。「サイオステクノロジーの製品・サービスを、ユーザーが安心して利用し続けられるように、自社・パートナーが安心して販売・保守できるように、品質保証をする仕組み(基準・プロセス)を作り、運用・維持する」というのがコミッティで定めた品質保証方針です。

ここでいう「製品」というのは主にパッケージ型で提供されるソフトウェアを指しており、「サービス」というのはSaaSなどクラウドサービスの形で提供されるものを指します。

私が統括する品質保証部のミッションは、この方針に沿って、製品・サービスに対する全社標準の品質保証の仕組みを構築し、そして各製品・サービスを開発する部門が導入する品質保証活動を推進、支援、管理します。また品質保証活動の監査をおこなって課題を指摘、改善施策を提案し、さらにその品質保証活動を持続できる人材を育て、組織を訓練して、社内に定着させることです。

一般に品質保証と聞くとイメージされる、開発プロジェクトにおける品質管理や、開発した製品のリリース前におこなう受入テストなどは、品質保証部が手掛ける活動の一部にすぎません。

‐ サイオスでは新製品・サービスを含むさまざまなソフトウェアの開発が日々おこなわれています。開発現場にも新しい人材が加わり、海外の開発チームや、社外の開発パートナーとの協業もあります。変化に富んだ現場に品質保証を根付かせるためのポイントは何でしょうか?

村岡:品質保証は一度きりの活動ではありません。製品・サービスごとに目指す品質目標を定義し、それを達成するための計画を定め、実行、チェック、フィードバックする。そのPDCAサイクルを繰り返すことで現場に徐々に浸透させていきます。

仮にいま目の前に、速やかに解決したい顕在化した品質課題や、高い品質リスクを抱えている製品があれば、その解消を最優先にして事実調査、原因分析、再発防止といった必要な施策を講じ、事態を収束させます。

次に、目に見える品質課題がなくても予防的に先手を打って、製品・サービスの潜在的課題や社内プロセスの課題を発見し、解決していきます。

ソフトウェア開発を経験された方は分かると思いますが、製品に潜むバグをゼロにするというのは、よほど単純なソフトウェアでない限り困難です。起こりえる条件を想定して開発やテストをおこないますが、すべてのお客様の利用状況に合わせてテストをおこなって問題を抽出・解決することは費用面、技術面からも適切な方法ではないとされています。

したがって品質保証のゴールは、バグをゼロにすることではなく、製品・サービスがお客様の利用する場面で「使える」「役立つ」品質を持っていることを確かにすること、また利用する上で想定されるさまざまなリスクを可視化・把握し、それらを適切にコントロールすることにあります。サイオスでは、国際標準のマネジメントシステムに基づいて、品質保証・品質改善の活動を展開しています。

品質を追求する行動には必ず意味がある

‐ 品質保証は、部署単独の取り組みではないのですね。

村岡:大切なことは、製品・サービスの開発に関わるすべての関係者、企画、開発、テスト、リリースすべての担当者が、「品質保証に取り組む意味を理解して行動する」、より具体的には「自らの行動を理解したうえでよい方向に変えていく」ということです。開発はチームでおこないますがこの考えに基づくと、開発者一人ひとりが目標と行動の意味を理解した上で、必要であれば自らの行動を変えていくことが大切であるということになります。漫然と作業をしていては、よい品質は得られません。開発プロセスの上流から「目標とする品質」を常に考慮して作り込んでいくことが必須となります。

これは結果的に開発における手戻りを減らすこと、開発生産性を高めることにつながります。テストで品質上の課題を指摘されてから初めて原因分析を始めて、作り直す、というのでは、大きな手戻りが発生し、製品自体のリリースの遅延を招くことにもなります。利用者の視点に立ち、求める品質目標の達成に向けて必要な経営資源を集中し、その品質を確保することが重要です。

目標や現状を可視化・共有するのには、もう一つの理由があります。ユーザーあるいはビジネスパートナーに対して、事実に基づいて品質についてのアカウンタビリティ(accountability)を果たすことです。「こういうミッションクリティカルなシステムでLifeKeeperは使えるのか?」「はい。こういう条件であれば使えます、理由は○○○です」といったロジカルな説明があればお客様もご納得し、安心して導入いただけます。また万一、重大な問題が発生しても、あらかじめ本当に優先すべきことを理解し、準備ができているので、速やかに対応でき、会社としての信頼につながります。

誤解を招くといけませんが品質保証では「開発におけるミスを許さない」ということではありません。人はミスも、失敗もするのが当たり前です。大切なことは、ミスや失敗がそのままお客様のところへ流出しないようにすること、漫然と繰り返さないようにすることです。ソフトウェア製品の場合はチームで作っているので、ミスが起きたらチームとしてそれを放置せず、再発しないように、原因を探り、対策を立てる、そしてチームメンバーの一人ひとりが行動を変えていくことが品質保証の仕事になります。ミスを起こした個人を特定して、原因として納得することは根本的な解決策になりません。チームには人の出入りもあるので、それぞれの学習、経験の積ませ方や引き継ぎの仕方も大切なポイントになります。

⇒〔後編へ続きます。〕製品・サービスの競争力に直結する「品質」を上流からつくり込む 『世の中を感化(インフルエンス)する製品の開発』

記事の関連情報