「書籍『Agile Testing』を書いてから起きたこと」を観た後、みんなで「うっ」ときた話
Scrum Fest Osaka 2020 の新潟トラックで放映した
「付録A:書籍『Agile Testing』を書いてから起きたこと by Janet & Lisa(動画放映)」ですが、
ついに公式YouTubeに日本語字幕が付きましたね!
本編であるこちらの動画は、かなり抽象的で自分には難しかったです…!
そして放映後の約30分(!!)、新潟トラックの皆様がされていたやりとりが刺激的で、この録画が 1ヶ月後に削除されてしまうのは惜しい…!ここだけでもなんとか文章の形で残したい…!と思い、伊藤さんとブロッコリーさんから許可をいただき文字に起こしました。以下、当日のやりとりです。
※ 以下敬称略
「テスターではなくなった」とは
ブロッコリー:お疲れ様でした〜。あ、拍手とかありがとうございます。
伊藤:最後の「7時になったらバスが出るからみんな来てね」が大事なんですよね。
ブロッコリー:「講演が終わったからじゃあ解散です」ではなく、飲みましょうというところにつながっていくのが面白いですね。
この後ですが、質疑応答とか、それこそさっきの動画みたいに「自分のところではこうなんだよ」という話がもしあれば聞けると嬉しいかなと。
伊藤:ユアストーリーください。もしくは昨日の夜中の話とか (笑)
ブロッコリー:いくつかチャット (Discord) に質問ありますね。
伊藤:動画に「開発者でありテスターではなくなった」という話がありましたけど、ここもうちょっと深掘りします?
「わたしは開発者であり、テスターではなくなった。」ってところをもう少しちゃんと理解したいです(大事なこといったとおもう)
(Discordより)
伊藤:確か、テスターだけど開発チームの中に入って、ちょっとハブられ感があったんだけど、Janet とLisa の本をチームの全員で読んだら納得してくれて、今までテストやってた人という扱いだったけど「テストのコードをちゃんと書いてるじゃないか、あなたはテスターじゃなくて開発者だ」みたいな話だと思うんですよね。
なのでテスターという扱いよりも開発チームの中のひとりという感じですよね。
ブロッコリー:まさにあれですよね。Lisa と Janet がやってる Agile Testing Fellow とかもそうですけど、要は チーム全体としての Agile Testing という話を盛んに言っている、そこに紐付くんですかね。
伊藤:そうですね。Whole-Team、チーム全体ということですよね。
午後からブロッコリーさんがセッションする Agile Testing Condensed の中にも Whole-Team Responsibility といって、QAが責任を負うのではなく、何事もチーム全体でというような説明が結構本の中にされていたと思うんですよね。それとだいぶ似てるかなと。
ブロッコリー:確かに確かに。
永田:結構そういう感じの Agile Testiong というか、QAが入ってやってるところでそういう感覚が出ますよね。大なり小なり。
伊藤:みなさんどうなんですかね。
開発チームにテスターは含まれていないってコンテキストですかねぇ
(Discordより)
伊藤:開発チームにテスターは含まれて "いる" っていうコンテキストのはずですね。
ブロッコリー:含まれているっていうのは Janet と Lisa の話で、もともとの「開発者でありテスターではなくなった」というところは、「テスターではなくなった」という前の状態が「開発チームにテスターは含まれていなかった」ということになるのかなと。
伊藤:そういう意味で言うと「開発チームとは別にテスターがいた」という感じじゃないですかね。あとは「テスターに任せました」状態 なんだと思います。なのであの本を開発者全員に読ませたら納得してくれたといういい話なんですよね。
分断されてないってことですかね
(Discordより)
ブロッコリー:まさにそれが大事なところですかね。
「QA "さん"」と「エンジニア "さん"」
伊藤:例えば QA の方がいれば教えてほしいんですけど、たまに開発メンバーから「QA ”さん”」って呼ばれたりしません? なんかそれってちょっとサイロを感じますよね。
永田:まあ……その人がそういうような意識を持っていることを感じたらそうですよね。逆にいうとそこがリスペクトしているのかもしれない。コンテキストが違うわけですよ。
Generalized Specialization ってあるじゃないですか。QAさんというのは何かというところで「私はこういう価値を提供するのよ」と Janet が言ったわけですね。テスターにおいて、私はコードとかは書かないけれどもそれに代わる Testing という形でもって貢献しているんだ という自信、Specialization。それを周りが感じていれば、そういう Specialization を持っている人に「何かご意見ありませんか?」と訊いたりする。
リファインメントとかの時にも QA が出るんですけども……バックログをリファインするプロセスですね。そこは QA や PO にバックログについての意見を聞くみたいなところでありますし、普段の朝会でもそう。
ブロッコリー:そうですね。(QA ”さん” を) 遣ってる人は丁寧に言いたいんだと。その感覚は自分でもあります。
「エンジニアさん」「デザイナーさん」「CSさん」
(Discordより)
ブロッコリー:一方で「エンジニア ”さん”」は、ちょっと自分は「うっ」と感じる時ありますね。
いや、「エンジニア "さん"」ということよりも、「エンジニアで話すからQA は大丈夫です」と言われた時にうっと感じますね。QAもエンジニアであり……と思っているので。
あと前に「君は何をやってるんだ」と言われて、「まぁQAとか…テストやってます」という風に言ったら「いや、テストはみんながやるもんだろ。で、お前は何をやってるんだ」といった会話を海外でされたことがある、という話を聞きまして。
伊藤:海外の人がそう言ってきたんですね?
ブロッコリー:はい、そうです。
それこそさっきの Generalized Specialization もまさにそうですけど、あくまでもテストが得意な部分があった上で他の部分もできるとか、そういう風な話なのかなと思いますけどね。
わかる!
ここからは開発で話し合うんで〜とか
(Discordより)
ブロッコリー:あーそうですよね、「ここからは開発で話し合うんで」とか。
永田:ああ〜あるなあ〜
伊藤:あるあるある
永田:「開発で話し合うんで〜、じゃ、どうも」みたいな感じ。
ブロッコリー: (笑)
伊藤:あまり現場の話をすると怒られるかもしれない (笑)
「QA "さん"」は何を期待されているか
(気もち的にはわかるけど、一方で、それがわかるだけの開発スタックが自分にないっていうのもある。これは自分の技術不足だと思っている・・・
(Discordより)
ブロッコリー:現状としては技術不足って思ったときに次どうするかっていうアクションの部分かなと思っていて。もちろん頑張って学ぼうというのもひとつの選択肢だし、逆にそこはもう開発者のスキルを遺憾なく発揮してもらって、自分はその分他で貢献できることはないかとか。まあ全然、極めるも良し別の方法を考えるも良し、くらいな感覚ですかね。
永田:開発者がどんな期待を「QA "さん"」に持っているか というところですよね。どんな観点での情報が返ってくると嬉しいかなんですよね。それは彼らの会話とか方向性とかやっていることに対して、見守る……というか見ていく姿勢が大切なんだと思います。
ブロッコリー:今チャットに書いてくれている内容がいいなと思っていて、
得意分野を持ちつつ、隣接する物事に協力できるよう理解する、ということかなぁと思いました
(Discordより)
ブロッコリー:まさにそうですよね。
永田:そうだと思います。だからやっぱり寄り添うというか、しっかりそこんところを見ている。
で、好奇心とセンシビリティっていうの? こう、五感で感じるんですね。今だとリモートだからなかなか難しいんですけど、テスターによる匂いとか スニッフィング、嗅ぐ、という。
伊藤:永田さんよくスニッフィングって言いますよね。まあでもテストってやっていると勘というのがだんだん芽生えてきて、匂うんですよね。バグの匂いがする っていう。それはスニッフィングですよね。
開発者が「QAさん」に期待してること、となると「作ったものに対してテストしてほしい」で終わってしまうんですよね。それ以外の役割もあるんだよってことを発信していきたい
(Discordより)
伊藤:まさに私が言ってるのはそこで、「QA "さん"」って言われると「うっ」ってなるっていうのが、「あれ、なんかテストのこと考えているのかな、どこまでテストしたんだろ」という感覚に陥ってしまう。
ブロッコリー:自分の場合はそういうとき無邪気に入っていきますけどね。発信をするのもそうですし、それだけではなくて、それこそ開発がリファインメントやってる時とか「ちょっと混ぜてくださーい」って言って、入った時に「これテストの考え方でいくとこうですよ」って話をするよりは「あれ、これってどうなんですかね?」と開発者に投げかける。
その投げかける土台となるものはテストの……それこそ同値分割とか境界値もそうですし、状態遷移もそうですけど、そういうのは頭の中で考えつつ、この部分って怪しいかもしれないなと思って、ただそれを怪しいと指摘するというよりは「この部分ってどう考えてますか」って訊くように入っていく感じですね。
永田:それがいいと思います。それが一番。
ブロッコリー:午後話そうと思ってたことを少し話してしまった (笑)
永田:いいんじゃないですか (笑)。何回も何回も言えばいいと思う。
問いの技術
伊藤:やり方かもしれないですね。入り方の。
永田:今言った「質問で入っていく」っていうのはいいですよ。
伊藤:昨日の夜も言ってたことで「小姑」って名前になっていたとか。
Lisa も言ってましたよね、"You're impediment. (障害はあなただ)" ってマスターに言われちゃったーとか。
問いの技術
(Discord より)
チームの考えを促す、ですね。見えづらいやり方だけど大事
(Discord より)
ブロッコリー:まさにそうですね。それすごい大事だなと思っていて、ただ、それこそテストの設計技法とかそういうのに比べてちゃんと体系化して言えているわけではないので、なかなか示しづらいところではありますね。
永田:でもやっぱりそこをやっていきたいですね。で、作る前にその情報を促していって、はじめからそこに気づいてバグを組み込まないような、そんな風になっていくと嬉しいなと思いますね。
伊藤:Janetがドンピシャで言ってたのが「質問することを忘れてませんか?」と。どんどん PO に質問して、ストーリーを作っていってくださいって言ってたじゃないですか。まさにここも問いの技術ってなってるんですね。どんどん質問して、いい関係を構築していけるといいのかもしれない。
ブロッコリー:これがちゃんとスキルとして体系化されてないというか、体系化して言えない、ちゃんと定義できてないというところがあって。その結果何が起きてるかというと、「私はコミュニケーションが得意です」という言葉に丸まっちゃうんですよ。
伊藤:コミュニケーション、広いですもんね。
永田:実はですね、レビュー技術なんですよ、問いの技術って。
レビューって「指摘する」とかチェックリストで指摘するみたいな感じなんだけど、実は フォーマルインスペクション というやつが問いの技術ですね。指摘する人は質問で言ってくるんですよ。別に「ここがこうです! こう直してください!」じゃないんですよね。そんなこと指摘したってもしかして直らないかもしれない。質問して相手に気付かせて、そこで腹落ちさせて、直してもらう。リスペクトしないと、相手は学ばないですから。学んでもらって腹落ちして直してもらわないと次にまた同じ間違いをしますから。実はレビュー技術なんですよね。実は体系化してるんですよそこんところは。だけどそこのところをテスターの人は学んでない。
ブロッコリー:いやー、自分は JaSST Review やってるんで言うと、体系化まできちんとできているとは正直思っていなくて。
要はレビューの技術って、リーディング技法とかどういう風に読むかとかの技法はできているけれども、じゃあそれをどういう風に問いとして投げかけるかとか、どういう風に考えて「この部分って足りてないよね」とかを見つけるのは体系化できてないという意味で、「体系化して言えない」というところですね。
永田:反論するけど、実はそれは伝わってないだけの話なんですよ。
「実はそこは問いなんだ」というところは、IBMの細川さんがレビューでの研究会というのを SQiP研究会 でやっていたんですけど、彼から教わったのはその部分なんですよ。実は、フェーガンのフォーマルインスペクションの本質は質問なんだということ。そこのところが伝わってないんですよね。
ブロッコリー:そこの質問のところって、じゃあ具体的にどういう風に技術として定義されているのかとか、そういうところがまだメインに見える形じゃないかなというくらいで。
「コミュニケーションが得意です」への納得感はあるか
🥦 なんで体系化して言えないんですかねー 🤔 開発者に混乱させてしいまうんじゃないかなーって悩みあるー
それ納得感ないですよね・・・
(Discordより)
ブロッコリー:「それ納得感ないですよね」の「それ」がすみません、リアルタイムで追えてなくてよくわかってないです。
rina:こんにちは。
「コミュニケーションが得意です」という発言のところだと思います。で、それを開発者に言うと「えっ、あなた QA でしょ?コミュニケーション得意ですって意味わからなくない?」って納得してもらえないのは私の体験も同じで、絶対そんなの通用しないというのが肌感でわかるよという意味で書きました。
ブロッコリー:結構隔たりとしてある感じなんですかね? 必要な技術としてという話とコミュニケーションが得意という話との隔たりがあって、なんでそんな「QA なのに」とか……そういう感じですかね?
rina:あの、(開発者とは) すごく仲良いです (笑)。すごく嫌なことばかり書いてる感じになっちゃってるんですけどそうじゃないです。チームはとても仲良いですし私をチームの一員だと思ってくれてます。
その上で「あなたはプロの QA です。何ができますか?」「コミュニケーションです」って……エンジニアだったら Golang Specialist とか何々のスペシャリストだとか (があるのに)、「あなたは何ですか?」「コミュニケーションのスペシャリストです」「そうだよね」ってなりますか? と。
ブロッコリー:そうですね、納得感ないですね。ありがとうございます。
永田:奥深いですね、「コミュニケーションです」ってね。
rina:でも大事なのもわかってます。JSTQB にもコミュニケーションってすごく出てくるんですね。なので大事な要素であるのは十分把握しているけど、それを知らないエンジニアにとっては納得できないですよね。
永田:私も最初分からなかったですね。だから要求仕様書とユーザーストーリーの違いって何ですかって Janet に訊いた時、「ユーザーストーリー+コミュニケーションだ」って言ったんですよ。
初来日した時かな、俺が質問したら……その時Agileって何だよみたいな感じだったんで。で、訊いたらそういう風に返ってきて、「コミュニケーションって何だよ」みたいな (笑) すごく疑問に思ったことはあります。今だと少し分かるんですけど、でも言葉で説明するのが難しいですね。
問いの技術はコミュニケーションだけの話じゃなくって、でも表面的にはコミュニケーションだけのように見えるので、コミュニケーションも含めた複合技術だって認識も体系化とか学習しようとする気持ちも認められにくいのかなぁ?
(Discordより)
ブロッコリー:まさにそうで、結局問いの技術っていうか、問いの構成をするとか問いのきっかけの部分は表面に現れにくいので、最終的にアウトプットとして出てくるのが言葉であったりコミュニケーションであるので、結果として「コミュニケーションが大事」という話に丸め込んじゃう感じがしますね。
後からふりかえって「あの時指摘してくれたから助かった」と思ってくれるかもしれないけど、現在進行形だと「なんかやたら質問してくるガヤ芸人」って思われてそうなんですよね
(Discordより)
ブロッコリー:要はそれはアウトプットとして見えるのが「喋っている状態」なので「ガヤ芸人」と思われていそうというのは確かにそうだなと思いました。
永田:だから質問の目的とかなんか、そういう風な意図が相手に見えないと「何でいろんなこと訊いてくるんだ」と。
ブロッコリー:そういう意味だと次の書き込みで、
レビューは指摘じゃなくて、自分の気になることを質問して、相手の想定外や抜け漏れを引き出すものと理解していますし、そう伝えています。
(Discordより)
欠けてる箇所を補えると、相手にとって価値が高いですよね。そこ得意なりよく知ってないと不足はみえない
(Discordより)
ブロッコリー:そこまで含めてきちんと伝えるといいのかなって感じですかね。
永田:言い換えると、相手に気付きを与えるような、まあ自分は問題点がわかっているんだけどそれを直接言わないで、相手にそれを気付いてもらうんですよ。それを質問という形で言う技術がレビュー技術なんですよね。
山口:何か個人的に聞いてて思うんですけど、それ分解能が粗くて、ただそれを伝える側が下手なだけかなって。
ブロッコリー:伝え方ですか?
山口:伝え方じゃなくて、その問題の分岐の仕方が雑すぎる。
ブロッコリー:構成の部分?
山口:じゃないじゃない。コミュニケーションって何なのというところの分解能がすごく低くて、例えばブロッコリーさんが「コミュニケーション高い人」「能力高い人」と言われた時に、じゃあ何がすごいのその人っていうのが具体的に細かく語れるんだっけっていうのが、今の話を聞いてる限りは粗くて、そりゃ相手に伝わらんよという。
丸め込みすぎってことですかねー 🤔 (抽象化しすぎともいう
(Discordより)
山口:うん、抽象化しすぎだと思います。今の話もそうだし、相手に言われる時ってのも多分同じ。
言語化しろと
(Discordより)
山口:そうですね、言語化。言語化できてるんですけど、それが粗いと僕は思います。コミュニケーション能力が高いなんて僕はあまり言うことなくて、それ何が高いのか全然伝わらないから。
ブロッコリー:まあ言わないっすね、コミュニケーション (能力) 高いですって。
山口:「コミュニケーションが大切なんですよ」なんて言うことなくて。何が大切なのか聞いた人は全然わからないから。
ブロッコリー:いや、コミュニケーション得意なんですよって言う人が結構いるなっていう認識でいて、さっき話しただけですね。自分ではあまり言いたくないな……
山口:さっきの QA の人が〜っていう話も、僕はあまり……じゃあ伝えるだけの何か、さっきの質問をしてもうるさいって思われてしまうってことはアウトカムが出てないんですよね、その質問は。ってことは、そりゃ相手からしたらうるさいだけですよね。あ、そうだわー!っていう気付きってのが一切無い。そりゃ言われたら辛いっすよね。なんて思いますけど、個人的に。
永田:ほんと、刑事から尋問されているみたい。そんなだったらうるさい、みたいなね (笑)
山口:いつも、相手にとって自分が言う言葉はどう伝わるのかっていうのを見るって形ですね。
伊藤:「ひぇ〜」ってコメントが (笑)。ありがとうございます、こういう話がパネルディスカッションで聞けるかなーと。なんか質問したらすごくいろんな回答が出てくるので。
時間としてはあと2分で終わるような会話ができればいいなと思うんですけど……今の山口さんのコメントで、ちーんってなってるから (笑)
ブロッコリー:あ、ひとつお伝えしておくと、「うっ」ってコメントされている方が何名かいますけど……昨日の基調講演でこういう風にいろいろ言われて「うっ」となった瞬間こそ成長のきっかけになるって話ですが、今言った色々な議論の中で自分自身で「うっ」って思った部分がもしあれば、もしくは動画とか見ててもそうですけど、「うっ」っていう話があったら、それはぜひ成長の機会としてみなさんの、今日は土曜日ですけど、週末以降……週明けですか、月曜日からの業務でぜひ生かしてもらえたらなと思います。
伊藤:いや素晴らしいまとめです。ありがとうございます。ブロッコリーさんに拍手!
永田:イェ〜〜 (拍手)
ブロッコリー:適当なまとめ (笑)
以下、終盤の Discord のコメントより。
伝わらない言語化は ゼロキロカロリー
相手に意図が分かってもらえるとか、伝わらない相手には質問の背景が伝わるような情報の付与とかが必要で。
でもそれって相手の理解度合いとか、相手の構造・思考を推測できているかとかもかかわってくるので、ほんと分解能(言語化を諦めた)
気付ける位置に中間質問を置いていく技術も必要ですよねーと思う。
役に立たない行為は邪魔になる(雑
効果が遅効性の場合もあると思うなぁ
遅効性のものはありますが,それはそのような信頼がたまらないと厳しいでしょうね.大学の講義みたいな.
効果が遅効性のものと、効果が即効性のものを同時にできると楽しい。
遅効性のものはサブリミナル効果のように使うようにしていますー
けど遅効性のものは個人的にはまだ伝え方のレベルが低いんじゃないかな、って思います.
そうですね。でも高いレベルのものを受け取れない人もいると思います。(自分でもちょっと分かんなくなってきた
伝え方のレベル=相手が受け取れるように調整できるか?の調整力≒分解能の上下を操る力…みたいなのが高いか低いかって話ですかね?
(私も何が高いか低いか分からなくなってきたので、手探りのコメントですw)
以上、書き起こしレポートでした。
定期的に読み返して「うっ」となろうと思います。
伊藤さん、ブロッコリーさんのレポートもどうぞ。
Janet&Lisaの日本語字幕付き動画が公開されました #scrumosaka ついでにスクフェス大阪の振り返りも!