航空や医療といった別の業界について学び、別の分野を研究することで得られるものがある、とPoppuloのソフトウェアテスターであるConor Fitzgerald氏はRebelCon.io 2019で語った。航空には失敗から継続的に学ぶ歴史がある一方、医療では文化とバイアスが、学びと継続的な改善の障壁であるように思われる。
Fitzgerald氏の航空への興味はコーチングコースに始まっている。例えば、非難のない文化へのシフトなど、インストラクターが航空における文化の変化を何度も引用していたからだ。チェックリストが航空業界の優れた安全記録にどう貢献したかを学ぶのに、いかに興味をそそられたかを述べた。
救急法のコースでFitzgerald氏は、医療はヒューリスティックス、記憶術、オラクルを利用していると気付いた。彼は、医療で使われているもので、他にもソフトウェアテスティングに有用なものはないかを研究することにした。
Fitzgerald氏はまた、経済学やヨガを含む分野の種類を調査した。経済学からの学びに対する考察は、大学院ビジネスコースの研究と、経済学に関する文献およびポッドキャストからきている。彼は以前からヨガに取り組んでおり、”ヨガは他にカバーされている領域と全く異なっていますが、極めて貴重な洞察を示してくれます”と述べた。
航空業界は興味深いものだ、とFitzgerald氏は言う。チェックリスト、ブラックボックスレコーダ、非難のない文化、コックピットの再設計、Crew Resource Management (CRM)の利用を通して、失敗から継続的に学ぶ歴史がある。これらの学びは優れた安全記録につながっている、とFitzgerald氏は論じた。
彼は、今日世界で最も安全を最重視している業界のふたつである医療と航空について、両者の違いをはっきり示している書籍2冊を引き合いに出した。Atul GawandeによるChecklist Manifesto、Matthew SyedによるBlack Box Thinkingである。これらの業界には多くの類似性がある、とFitzgerald氏は述べた。失敗は重傷や失命につながる。両者とも非常な複雑性を取り扱うものであり、伝統的に外科医とパイロットはヒーローのステータスを保持してきた。
航空と違って医療は、失敗からの学びや継続的な改善という文化を持ってこなかった。このことは、米国で3番目に多い死因である、心臓病と癌における予防可能な医療ミスにつながっている、とFitzgerald氏は論じた。2013年の米国の医療データに基づくと、これはジャンボジェット2機が24時間ごとに空から落ちてくるようなものだ、と述べた。
Fitzgerald氏は、非難する文化を含め、医療が失敗から学ばないのには複数の理由があるように見えると述べた。中核となる問題は認知的不協和のようで、そこでは反対証拠は見直されるか、無視される。認知的不協和に苦しんでいるのは医療従事者だけではない。政治家や経済学者といった他の分野でも広くに渡って見られる。
本質的に、自分たちの判断に乗ってきたほど、疑問を呼ぶような新しい証拠を操作する傾向にある。認知的不協和はフィードバック、改善、イノベーションを棄却する、とFitzgerald氏は述べた。
InfoQはConor Fitzgerald氏にインタビューを行い、他の分野、業界からの学びについて聞いた。
InfoQ: 他の分野や業界を学ぼうと思ったきっかけは何ですか?何から始めましたか?
Conor Fitzgerald氏: 始めは、長年に渡って読んできた、異なる分野や業界をカバーしている複数の書籍から興味をそそられました。例えば、わたしはFreakonomicのポッドキャストを聴くのが本当に好きで、Malcolm GladwellのOutliers、Tipping PointとDavid vs Goliathなど、経済学に関する何冊もの有名な本を読んできました。加えて、わたしの以前のテストの役割が、通信、金融、ゲーミングなど、興味深い数々の業界で働くことを含んでいたのです。どれも全く異なっていました。
より深い研究のための本当の触媒は、わたしが従事していた2つの大きなソフトウェアプロジェクトが失敗したという事実でした。2つ目のプロジェクトが終わった後、わたしは成功するプロジェクトの要因を省察し始めました。
省察では、異なる業界の異なる文化が、ソフトウェアの品質と、最終的にソフトウェアプロジェクトの成功の両方に重要な役割を果たしているようでした。
InfoQ: 文化と品質はどう関連しているのでしょうか?
Fitzgerald氏: Henry Fordの有名な言葉があります。”品質とは、誰も見ていないときにきちんとやることである”。わたしたちは文化を習慣として、”きちんとやること”の習慣として見ることができます。そして航空業界は、品質の文化とはどういうものかという素晴らしいテンプレートを提供してくれるのです。
チェックリストを利用すれば、重要なステップを忘れません。非難のない文化には、他人を指差すことなく、成功や失敗もなく、ただ学びがあるのみです。クルー・リソース・マネジメントは、オープンで誠実なコミュニケーションにフォーカスし、ヒーローさよりもチームワークにフォーカスしています。
InfoQ: テスティングでヒューリスティックスとオラクルをより良いものにするにはどうしたらいいでしょうか?
Fitzgerald: ヒューリスティックスは、問題解決や意思決定には誤りを犯しがちな方法論で、単純な用語でいうと”経験則”です。ヒューリスティックスは、テスティングの知識と経験を高めることでテスターとして改善できるだけでなく、さらに重要なことには、機能にある潜在的な問題があなたがどうやって見つけたか、その背景にある論拠を他の人とコミュニケーションしやすくしてくれるのです。
Elisabeth HenricksonのTest Heuristics Cheat Sheetは、テストヒューリスティックスを学びたい人にとって、素晴らしい始点となります。
オラクルは単純に、問題に気付かせてくれる原理または機構です。Katrina Clokieは、”オラクルは、ここに問題があるという本当の根拠に気付かせてくれる”と述べています。ヒューリスティックスと同じく、2つの利点があります。テストを始める前にオラクルを考えたら、考慮すべきリスクの種類をより広く、調査すべきより面白い領域を考えられるでしょう。
Micheal BoltonのFEW HICCUPPS mnemonicはオラクルを考えるのに便利です。
InfoQ: 学んだことは、テスターとしての役割にどう影響しましたか?
Fitzgerald氏: 最も大きかったのは、チームテスティングを通してコラボレーションとコミュニケーションにより深いフォーカスを置くことでした。
Five stages of test collaborationで最近書いたブログでは、ソフトウェア開発プロセスを通したコミュニケーションとコラボレーションを改善する実践的な方法を扱っています。
- 解決されるべき問題をチームが理解し、リスクとユーザに関する議論をプロジェクト初期に持つようにすること。
- 可能なら、機能の開発中に顧客のフィードバックを取り込むこと。
- ペアリング、モビング、チームワークスルー、バグバッシュにフォーカスすること。
- 顧客によるベータ・テスティングのための機能がリリースできる段階で、チーム全体で意思決定すること。
- テスターはコーチングについてもっと学び、このスキルを他の人にテスティングの技術をコーチするのに使うこと。