開発者といっしょに「品質」のお話をしてみよう!

2020.05.22

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

まえがき

事業開発部でQAエンジニアをしている長友です。

これから品質やソフトウェアテスト関連で何回かにわたって投稿します。 お近くの開発者の方と一緒にお話されるきっかけになったらと思い書きます。

では、その最初として、「品質とは?」という内容です。

エンジニアの皆さん、そしてQA担当者の皆さん、今どんな状況でお仕事されているでしょうか。在宅勤務をされている方も多いかもしれませんね。私も在宅勤務で仕事をしています。
QA担当者の方々は、いつものように開発のエンジニアの方々のところに行って、仕様のことや不具合のことなどいろいろ聞けない状況で困ってたりしませんでしょうか。
オンラインで適宜会話ができているといいのですが、こんなときだからこそ、エンジニアの皆さんとちょっといつもより気楽な気持ちで、品質とかテストのこととか話してみてはいかがでしょうか。

「品質」ってなんだろう?

皆さん、品質ってなんだろうって考えたことありますか?

品質に関して、「JIS Z 8101:1981」というJISの定義もありました。(今こちらは廃止されています。)
また、いろんな有名な方々が定義をあげておられていて、どんどん移り変わってきていると感じています。
そして、仕事柄、品質関連の講演などもいろいろ聞いてきました。
そんな中で私がいいなと感じしっくりきているものは、Gerald M. Weinbergの定義です。それは、以下のような内容です。

「品質は誰かにとっての価値である」

これは、誰かによって品質がいいとかよくないが決まりますよと言っています。
誰かとは、通常はお客様と考えられます。
そして、ときにはその誰かがエンジニアさんのことであったりもすると思っています。

「誰か」とは?

私の所属する部署で開発している prismatix ではどうなんだろうとふと考えてました。
各お客様が誰かだろうというのは考えられます。
ただ、私が最初に思い浮かんだのは、プロダクトオーナーかなという思いでした。お客様がこの誰かにふさわしくないと言っているのではないです。
最終的にはお客様がご自身たちに価値を提供しているかどうかによって、サービスのよい悪いを判断してくださるのですから、そこは大事なところだと思っています(もっと言ったら、お客様のお客様まで考えないといけないのではとも思っています)。

これは、prismatix はプラットフォームを提供しているから、お客様のいろんなご要望などを聞いて、そして考えて、こうしたものを作ってほしいと最初に出されるのがプロダクトオーナーの方なのかと思ったからです。
そう考えたら、こんなときはどうなるんだろうとか、こういうのはどうされたいと思っているのだろうとかわからなかったときには、プロダクトオーナーにまずは聞いてみたりするといいのではないでしょうか。
それで、この前、プロダクトオーナーにお聞きしたら、さっくりしたものを各チームのみなさんに渡して、チームリーダーの方にも仕様など考えてもらっていますとおしゃっていました。
ということは、仕様のことはチームリーダーの方に聞いてみないとですねと話ました。
もっと具体的なここはこうするとどうなるのか疑問に思ったときには、実際に仕様をもとにまた設計など考えてコードを書かれている方にも聞いてみないといけませんね。

ふとそうしたそれぞれの方々が、それぞれのところでの品質をよくするためには、やはり誰かをイメージしてその方の価値を考えていかないといけない。そして、疑問に思うことはどんどん聞いて解消していけるそんなチームがいいんだろうなぁと。

「誰か」=エンジニアさん?

また誰かがエンジニアの方の場合もあるということについては、作ったものを次に使われる方がいます。
作ったものも、デプロイする環境を構築してもらうには、運用の方にお願いしないといけません。そうなると、運用の方もその誰か=お客様になるということです。
「次工程はお客様」という言葉もあります。
運用の方だけでなく、その後のサポートをしてくださる方もやはり誰か=お客様ということです。

品質について話して壁を解体しよう!

話が跳びます。最近以下の記事をエンジニアの方が、私も見ている社内のチャットに共有してくれました。
品質のアジャイルなあり方:「QAを含むOneチーム」「品質スプリント」「プロダクト品質チャンピオン」
この連載記事の最初の記事に「障壁の解体」というパターンのお話があります。
開発チームの内部にいない、QA担当者などの方々との間に、物理的、経験的、また文化的なことが作用して、自分たちとは異なる人たちという気持ちが生まれて、障壁ができる。そして、その障壁を解体するためにはどうしたらいいかについて書かれています。
詳細はこちら(全文を読むには無料会員登録が必要です)
記事に描かれている絵を見るとわかるのですが、それぞれの間に壁があって、それも相手の方が見えない壁です。こうした壁ができてしまわないようにしていきたいと思いました。

品質について考えるときに、誰かが思い浮かびましたか。また、他の方々はどんな誰かを思い浮かべたか聞いてみましょう。
へー、そういうのもあるねとか、ワイワイガヤガヤしていったら、障壁なんてもともとなかったのかもしれないですよ。

品質“実質”無料

この記事を書く前に、社内用のブログを書きました。そのときに、何を書いたらいいかと考えていたときに、最初に思う浮かんだのが、t-wadaさんがいいよと講演でおっしゃっていたshimashimaさんの「品質“実質”無料キャンペーン」です。

その内容は、だいたい以下です。

品質を向上させると、エンジニアの方々などの手戻りの作業を減らします。 手戻りが減るとやり直しを減らします。 品質向上のためのコストが、品質向上の結果減るやり直しにかかるコストを上回ることにより、結果的に品質が実質無料になります。

エンジニアの方々などにとっても、不具合修正に悩まされるより、機能追加などをする時間をたくさんとれるようになった方がうれしい。 お客様にとっても不具合や障害がなく機能追加などで利便性があがれば満足感も増えるということなります。 また障害がなければ、担当の方々などもゆっくり眠れて安心だったりします。

その品質向上の活動をQAチームは無料で支援します。 過去を責めたり否定したりせず、みなさんが主役。 エンジニアのみなさんにお客様に価値を届けるための本質的な時間を増やします。 そして、プロダクトチームの活動が楽しくなってもらって、その価値を創り出すサイクルを早めます!

これは、「QUALITY IS FREE」というフィリップ B. クロスビーの本の題名をもとに考えらています。
日本語訳の本のタイトルは「クオリティ・マネジメント」となっています。
「よい品質というものは、お金をかけなくても、誰でも自由に手に入れられることができるばかりか、無限の利益の源泉である。」ということが書かれています。

本当にそうだなぁと思っています。
私もこうした活動を見習って、エンジニアの方々といろいろ話をしていこうと思います。

皆さんも今回の記事を見て、QAの方々や開発をされているエンジニアの方々、また他の方々とも、いろんなお話をしてみてください。
きっと今の状況が変わったあとにも続く、良い関係が築かれていきますから。

QA担当者の皆さんや、開発のエンジニアの皆さんが、それぞれで頑張るだけでは、品質はよくならないです。一緒にボートのオールを漕ぐように息を合わせて、誰かをお互いに確認し合うことで進むべき先を見据えて、進んでいきましょう。

今回はここまでです。

また次回をお楽しみに!