連載っぽいものの続きです。
前回は「QAエンジニアは「開発者の品質意識が~」と言うけれど、それって品質意識というふわっとワードにおさめておいてもしょうがなくて、具体的に何してほしいのかは自覚的でないとね」といった話をしました。
今回はその続きで、品質意識というものがあったとして、それを高めるためにQAエンジニアは何ができるのか?について考えてみましょう。
品質意識のギャップを埋めることは、行動・発言・態度を変えること
前回も使った図を再掲します。
品質意識というふわっとワードで考えると、それを低い状態から高い状態に変えるにはどうするの?もふわふわしてしまいます。
そこで、その裏にあるはずの「品質意識が低いと判断するに至った元行動」を考えてみよう、というところから話しが始まっていました。
なので、品質意識を高めようと思ったら、まずは元行動を理想状態にもっていく必要があると考えています。
具体的な行動としては、たとえば
- 開発者が単体テストを書いておらず、テストエンジニアによるシステムテストに頼っている状態を抜けだし、単体テストのカバレッジを高めてシステムテストの割合を下げる
- 「品質を担保するのはQAの仕事」という意識を変えて、開発者が自分の仕事についても品質に関する視点を持つ
などでしょうか。後者はまだふわっとしていますが。
QAエンジニアは直接的に行動を変えることはできなさそう
1回目の記事に対して、秋山さんからXでコメントをいただいていました。
興味深い記事をありがとあございます。
— あきやま (@akiyama924) April 23, 2025
「QAエンジニアができるアクション」ほとんどないかなあ。
これはわりとそうだなぁと思っていまして、たとえば先の例でいうと、「QAが単体テストをごりごり書いてテストカバレッジ上げて、システムテストの割合を下げました」はほぼ実現しないですし、実現したとしても健全ではないですよね。
健全でない、というのは、もしそうなったとしても一過性だからです。つまり、開発者が自ら単体テストを書いてカバレッジを維持するなど「継続的な状態」にもっていかないといけません。この「継続性」が、品質意識という部分に含まれているんだと私は考えています。意識があるor高いというのは、いちいち言われなくたってやるよね、あたりまえだよね、ということです。
QAエンジニアが自分の手を動かしてなんとかしました、では品質意識の向上という意味ではまだ途中です。また、たとえば「やれ!」と言って相手が従っている状態になっても、それはそれで品質意識が高まったとはいえません。
だとするとQAエンジニアが直接的に開発者や組織全体の行動を変えて「品質意識を高める」というのは難しく、できることとしては
- 背中を見せ続ける
- 仕組みやプロセスを整える
- 促すための施策を行う
あたりになるのかな・・・と思っています。
私自身が(開発者の品質意識はもともと低くなかったものの)効果があったなと感じるのは、3番目の「促すための施策」と2番目の「仕組みやプロセスを整える」あたりです。
開発組織での品質関連の活動を進めるために半期毎の目標設定と絡める - テストウフにも書きましたが、開発組織に対して半年に一度品質関連の取り組み状況に関するセルフチェックをしてもらっています。
このセルフチェックで、たとえば「半年前と状況全く変わってないな」とか「やろうと思ってたやつをやってなかったな」とか、逆に「半年頑張ったから、ここの点が上がったな」とか。そういった可視化ができるようになっています。
よく計測できないものは改善できない、なんて言いますが、品質意識についても同じだと思っています。意識の高低というのは直接的には測れないので、「高かったらこのような行動にあらわれているはず」という行動・施策ベースで実施状況を可視化することで、間接的に測れるようになります。
幸運なことに一緒に働く開発者や組織のみなさんは真面目でいい方たちばかりなので、「なんだこんなもの!」とは(直接的には)言われません。むしろ、可視化の仕組みを作ったことで自主的に「ここ改善しよう」というアクションが生まれています。
なので、QAとして何かを頑張って変えるというのも場合によっては大事ですが、ひとまず品質意識に関するAs-Isを見えるようにするだけでも、意味があるのかなと思っています。
連載としてのまとめ
「開発者の品質意識が低い!」と言ってるQAの方がいますよね、というところから考えをスタートしました。だいたいは嘆いていても仕方ないのでQA側ががんばってその「品質意識」を高める努力をする必要があります。本業ですしね。
ただ、高めるうえで「品質意識」を「品質意識」の抽象度のまま扱っていると難しい。まずは自分たちが「品質意識」というワードで抽象化しているものが具体的には何なのか(≒開発者などに、何をどうやってほしいと思っているのか)をあきらかにしたうえで、そこを改善していくことが結果的に「品質意識を高める」ことに繋がるのではないか、と思います。
そして、品質意識を高めるうえでQAがこうやったら良くなる!というアクションはなかなか考えづらいので、組織全体で自ら改善していく向きに促す動き方が増えそうです。促すうえで、私個人としては「可視化」がある程度有効だと考えていて、真面目な開発者に対してはアレやれコレやれというよりも、現状を把握してもらえばそれだけで改善が進む部分もあります。
という話でした。