QAエンジニアをやっていて言われたことがあるであろうことの1つに「QAエンジニアならではの視点で見てほしい」があります・・・がQAのみなさんどうでしょうか。私は1度や2度ではないので、皆言われているのかと思っています。
QAならではの視点、というのもわかるようなわからないようなふんわりワードなので、ちょっと考えてみたいと思います。
QAならでは=開発者や他ロールが思いつきにくい
ということなのかな?と想像しています。他のロールでは代替しづらい、QAが居るからこその視点、ということでしょうか。このようなコメントをもらうのは、ほぼ「テスト観点」について言われる場合のような気がします。
つまり、開発者だけでテストしていたときには思いつかなかったような点について指摘してほしい、ということでしょう。
一般論&実体験として、開発者のテストに漏れがちな観点はたとえば、
- 複数画面や状態を遷移するテスト
- 異常系、エッジケース、いじわる観点など
あたりでしょうか。
Geminiにも聞いてみた。
結果は以下。
ユーザーはソフトウェアQAエンジニアであり、仕事で「QAエンジニアならではの視点」での指摘を求められることが多いようです。この「QAエンジニアならではの視点」が具体的にどのような内容を指すのかを知りたいと考えています。
考えられる「QAエンジニアならではの視点」は多岐に渡りますが、主なものを以下のように整理できます。
- ユーザー視点・利用者の視点: 実際にソフトウェアを利用するエンドユーザーの立場になって考える視点。
- 品質保証の視点: ソフトウェアの品質を様々な側面から評価し、保証するための視点。
- リスクベースの視点: ソフトウェアに潜むリスクを特定し、その影響度や発生可能性に基づいてテスト戦略を立てる視点。
- 網羅性と効率性の視点: 限られた時間やリソースの中で、可能な限り多くの問題を検出し、効率的にテストを進める視点。
- 再現性と客観性の視点: 問題を特定するだけでなく、その問題を再現可能な手順で示し、客観的な証拠に基づいて報告する視点。
- 開発プロセス全体の視点: ソフトウェア開発の初期段階からテストに関わり、品質をプロセス全体で作り込む視点。
- 非機能要件の視点: 機能だけでなく、性能、セキュリティ、使いやすさ、信頼性など、非機能的な側面も評価する視点。
- 変化への適応の視点: 仕様変更や環境変化に柔軟に対応し、テスト戦略を適宜見直す視点。
- コミュニケーションの視点: 開発チームや関係者と円滑にコミュニケーションを取り、品質に関する情報を共有する視点。
- 継続的改善の視点: テストプロセスや品質保証活動を振り返り、改善点を見つけて実行する視点。
これらの視点を具体的に説明することで、ユーザーの疑問に答えることができると考えられます。
なるほどわかる気がする。ユーザーや利用者視点、というのは確かにそうです。作った本人たちでない、良い意味での第三者的視点を持つことが期待されている場合もあるでしょう。
品質保証の視点、は置いておくとして・・・
リスクベース、非機能要件あたりも確かに「QAならでは」に当てはまりそうで、最後の「継続的改善の視点」は、おそらく言っている側はそれほど期待していないもののQAエンジニアとしては常に持っておきたい視点、ですね。
まとめ
QAエンジニアならではの視点とはこういうことである!というのをこの場で定めるつもりはありません。言っている人によって違うからです。
大事なのは「QAならではの視点で見てくれ」と言われたときにハイワカリマシターするのではなく「それってどういうことですか?」と深堀りすること、ですね。そしてその際には上記のような視点をいくつか例に出して「このへん?」と問いかけてみるのもいいでしょう。
さらに、その先ではそのQAならではの視点はずっとQAが提供しつづけるのか、それともQAエンジニア以外もQAならではの視点(っぽいもの)を出せるようにしていくのか、という議論に及ぶでしょう。後者が、このブログでもたびたび登場しているQAイネイブリング活動の一部、ですね。