こんにちは。エムスリーキャリアでQAを担当している@tak_koheiです。
このエントリーは、エムスリーキャリア Advent Calendar 2019の12日目です。
「アジャイルテスター」とは?
弊社のQAチームメンバーがアジャイルテスト関連のイベントに参加するというので、「アジャイルテスターって具体的にどんなことをする人なんだろう?」というテーマで、社内勉強会の時間に「ミニ読書会」をやってみしました。全員のおぼろげだったアジャイルテスターに対する理解が少しだけ実像を結び、私たちにとって何が必要なのかディスカッションできたので、前回の記事と同様に進め方や気付いたことを共有しようと思います。
アジャイルテスター読書会やってみた
書籍
アジャイルな関連書籍を4冊ほど選び出しました。また、短時間で読んでもらえるように、あらかじめ書籍ごとに2~4ページの小さな範囲で読む箇所を決めておきました。
参加者
対象の書籍を読んだこと無い人5名
ファシリテーター1名(私)
進め方
- 参加者それぞれに担当書籍を1人1冊選んでもらう
- 主催が担当を決めるのではなく、自分で選んでもらうことを重視しました
- ただし早いもの勝ち
- それぞれの書籍で指定された箇所を読んでもらう
- 10分くらいで各自が黙々と担当の書籍を読みました
- 読んで気付いたことを付箋に書いてもらう
- 付箋は気付き1つにつき1枚で書いてもらいました
- たくさん書き過ぎて言いたいことがぼやけてしまわないよう最大3枚まで
- 気付きを共有してもらう
- 一人ずつ付箋をホワイトボードに張り出しながら説明してもらいました
- 担当した書籍にはどんなことが書いてあったか
- それを読んでどんなことを感じたか
- 一人ずつ付箋をホワイトボードに張り出しながら説明してもらいました
- 明日からの行動に活かしてもらう
- 学びや気付きを元に、明日から何かやってみよう、という付箋を一人ずつ書き出し共有してもらいました
読んでみてどんなことを思ったか共有
それぞれの書籍の読んだ箇所の抜粋と、参加メンバーの承諾をいただきましたので当日書いてもらった付箋をご紹介します。
エクストリームプログラミング
10章に「テスター」という節があるのでそこを読んでもらいました。
顧客は自分が求める一般的な振る舞いについてはよく考えているかもしれないが、テスターはそうした「ハッピーパス」を視野に入れながら、そこから外れたときに何が起きるかを質問するのが得意である。(中略)テストの自動化や調整などを行うこともできる。プログラマーがテストで行き詰まっていたら、ペアになって問題解決を支援することもできる。
「エクストリームプログラミング Kent Beck・Cynthia Andres共著 角 征典 訳 P.70 10章 テスター」より一部抜粋
読んでくれたメンバーから気付きの共有
どちらかというとプログラマ向けの書籍?だと思うのですが、開発チームの役割を解説した章の一番最初が「テスター」の説明になっていることが印象的ですね。初期段階からコミュニケーションをとって積極的に開発に関わるテスターの姿が語られていて、とても好きな本です。メンバーの気付きにも初期段階への参画やコミュニケーションについて言及がありました。
アジャイルの魂2016
西脇 春名さんの「あるアジャイルテスティングの物語」というエッセイを読んでもらいました。
http://shop.manaslink.com/items/3368905shop.manaslink.com
従来型の品質保証を行っていたときは別のフロアでしたが、近くの席で作業することで開発チームの状況がつぶさにわかるようになり、修正依頼などのやりとりをリアルタイムでスムーズに行えるようになりました。(中略)毎朝顔を付き合わせ、新しい機能の所感を伝えたり、質問をしているので、自然と開発チームとの信頼関係を構築することができました。
「アジャイルの魂2016 あるアジャイルテスティングの物語 西脇 春名 P.130 開発チームと信頼関係を構築できる」より一部抜粋
読んでくれたメンバーから気付きの共有
アジャイルジャパン2016に参加した際にいただいた本です。アジャイル開発で品質保証のスキル特性を持った筆者がどのような活動をしているかが具体的に例示されていて、とても参考になるエッセイだと思います。メンバーからもコミュニケーションや探索的テストの重要性について気付きを共有していただきました。
プログラマが知るべき97のこと
ジャネット・グレゴリーさんの「プログラマーとテスターが協力してできること」というエッセイを読んでもらいました。
プログラマがコーディングを始める前に、テスターは「どういうテストをするつもりか」という考えを伝えるだけでなく、同時に、プログラマに何か提案はないかと尋ねるのです。そうすれば、プログラマからは、テストカバレッジをあげるのに役立つ情報、あるいは、どれが必要なテストでどれが不要なテストかの見極めに役立つ情報が提供されることが多いのです。テストについて早い段階から知っていれば、プログラマは、これから書こうとするコードがどういうものなのかをかなり明確にしてからコーディングを始めることができます。それによってバグの発生は大幅に減らせるでしょう。
「プログラマが知るべき97のこと ジャネット・グレゴリー P.174 プログラマとテスターが協力してできること 」より一部抜粋
読んでくれたメンバーから気付きの共有
後述の「実践アジャイルテスト」原書の著者でもあるジャネットさんのエッセイです。テスターとプログラマが早い段階から協働することによって、実装されるコードとテスターが行うテストの両方の品質が向上することの解説が印象的で、メンバーからも同様の気付きを共有いただきました。
実践アジャイルテスト
「2.1 アジャイルテスターとは?」と「2.3.10 楽しむ」という節を読んでもらいました。
アジャイルテスターとは、変化に対応し、技術担当の人や業務担当の人たちと共同作業でき、テストのコンセプトを理解して要求を文書化し開発をリードできる、プロフェッショナルなテスターです。アジャイルテスターの特徴は、高い技術スキルを持ち、メンバーと共同作業を心得てテストの自動化を行うことです。アジャイルテスターはまた経験豊富な探索的テスターでもあります。顧客が何をしたいかを常に気にかけており、顧客のソフトウェア要求を深く理解することができます。
(中略)
スキルは重要ですが、しかし心構えはもっと重要です。ジャネットはよく言っています。「心構えがなくては、スキルは意味がない」。(中略)テスターはより大きな視点に立つことがあります。テスターはユーザーや顧客の視点からアプリケーションを見ています。このことは、テスターは顧客重視であるということを表しています。
「実践アジャイルテスト ジャネット・グレゴリー リサ・クリスピン著 P.20 2.1 アジャイルテスターとは?」より一部抜粋
みんなが協力しているチームで働くこと、プロジェクトの最初から最後まで働くこと、業務のステークホルダーが開発チームと一緒になっているチームで働くこと、チーム全員で品質そしてテストに責任を持っている場所で働くこと、これらのことは、まさにテスターのユートピアだと私達は考えます。みな仕事の中に喜びを見出していて、孤独ではありません。アジャイル開発はアジャイルテスターの仕事への情熱に報います。
「実践アジャイルテスト ジャネット・グレゴリー リサ・クリスピン著 P.31 2.3.10 楽しむ」より 一部抜粋
読んでくれたメンバーから気付きの共有
※書籍が2冊あったので2人の方に読んでいただきました。
言わずと知れたアジャイルテストの名著です。学びの多い内容が盛りだくさんですが、中でも「2.3.10 楽しむ」は本当に本当に大好きなお気に入りの一節で、読むといつも涙が出ます。読んでいただいたメンバーにも想いが伝わってくれたようで嬉しかったです。(ただし、涙が出ちゃうので私の前で音読するのだけは勘弁してください)
気付きを活かそう!
最後に読んでみて気付いたことや考えたことのうち、なんでも良いので明日からどんなことしようか、という考えを付箋に書いて共有してもらいました。イベントや書籍は参加したり読んだりして終わりだと勿体ないので、少しでもアウトプットして次の行動に活かしていくスタイルです。
参加者全員から共通して出た意見としては「プロジェクトの早い段階からQAがコミュニケーションを通じて関わっていくことの大切さ」でした。エムスリーキャリアのサービスはほとんどが漸進的な開発で進められているので、今後もより一層QAメンバーが開発チームの中でコミュニケーションの触媒となって活動しながら、より良い品質のサービスを素早く提供していけるようになりたいです。
今回の共有は以上です。また何か面白いことがあったら共有していこうと思います!