読者です 読者をやめる 読者になる 読者になる

『テストから見えてくる グーグルのソフトウェア開発』 その4

グーグルのソフトウェアテスト本のメモ、その4。とっくに読み終わってるんだけど、メモを書くのが遅れております…
4

テストから見えてくるグーグルのソフトウェア開発

テストから見えてくるグーグルのソフトウェア開発

第4章 TEM(テストエンジニアリングマネージャ)

要は、SETやTEの上司にあたる役職である。彼らが日々どんなことを考えているのか、実際のスタッフへのインタビューも交えて綴られている。人によって、自動化を重視してたりマニュアルテストを重視してたりで、同じ役職でも考えが違っていて面白い。

とはいえ、結局大事なことは、「サービスを知ること」と「スタッフを適材適所で配置すること」に尽きる気がした

以下メモ

  • TEMとして成功するための最初のアドバイスは「自分の担当製品を知れ」であり、第二のアドバイスは「部下をよく知れ」である。自分の製品を良く知っているTEMならもっとも優先順位の高い仕事が何か、適切な対処を必要としている部分がどこかもわかるはずだ。部下をよく知っているTEMなら、適切なスキルをもっとも必要としている部分をそのスキルの持ち主に担当させることが出来るはずだ。
  • 資源(要は人員)が足りなければ、責任が明確になり、プロジェクトのメンバーたちは仕事を自分のものと強く考えるようになる
  • TEMは人に頼ることを避けなければならない。仮にスターテスターが居たとしても、彼を良いように使うだけではいけない。そのテスターをスターに押し上げたものがなんであれ、それをツールの形にまとめたり、パッケージとして他のテスターを同じようなスーパーテスターに育て上げたりしなければならない
  • 害のあるプロジェクトに関わるのは避けよ
  • TEMは部下たちのインパクト(要はプロジェクトに対する貢献度)を計測できるようにしておくこと
  • TEMは、全体として自分の組織で見られるベストプラクティスの発掘に熱心で、それらを同僚に知らせることに積極的でなければならない
  • プロジェクトに参加するときは、最初の数週間は話を聞くために費やすべき。例えば、最初の5分で抗生物質を処方する医者のような人を誰が信頼するであろうか。まずは、話すのではなく聞き、試すのではなく尋ねましょう
  • 正しいスキルと正しい態度を持つ人々を集めよ
  • 何を解決すれば、私達テスターが対等なエンジニアとしての立場を確率出来るくらいのリスペクトが集められるのかを考えてみよう
  • 採用は妥協するな。頭数を揃えるために良くない人を採用すると、もっと良い人が現れるのをまつよりも、必ず良くないこと

になります

  • グーグルがしたことを真似ようと思っている会社は、スキル、人材の希少性、自動化、イテレート/統合の4つから始めるべきでしょう
  • ユースケースの20%が利用の80%を占める。その20%だけを自動化し、他のものは手をつけるな。
  • バグの検出ではなく、バグの予防に力を入れたことが会社に大きな利益をもたらしました
  • 製品を作るのは簡単だが、高品質な製品を素早く作るのは大変なことです
  • 価値を追加せよ
  • 「ピラー(柱)」という考え方を使っている。ピラーにはシステムピラー(カーネル、メディアなど)、フレームワークピラー、アプリピラー、マーケットピラーなどがあり、それらで組織わけをしていた。部下であるテスターがどのピラーが得意なのかを

把握し、チームを組織した

  • 時間の試練に耐えられない自動化を書くこと以上に、ひどい資源の無駄使いはありません。自動化はすぐに書けてすぐに実行出来ねばならない
  • 自動化は変化に弾力的に対応することが難しい事が多い。なので、手動テストも大事である。
  • 探索的テストは、製品を掘り下げてその内容を学習する最良の方法です
  • 日々のビルドをじっくり見て、中身を分析する。そうすることで、製品全体を手当たり次第に探索していくのではなく、日々の変化に商店を絞って、ずっと生産的な仕事ができます
  • チーム全体が成果物の品質の責任を負うようにする
  • マシンに仕事の90%をやらせて、人間の知性は最後の10%だけに使うようにします
  • ツールの目的は、プロセスを自動化して簡単にすることです。ただし、悪い振る舞いを自動化しないように気をつけましょう
  • テストでは、コンピュータ科学的な側面よりもソーシャルな側面の方がずっと難しいということだ。
  • 開発チームに孤立無援のテスターが組み込まれているのではなく、テスターのグループが一緒に座って互いのアイデアを消化しあうように
  • 優れたマネージャになる秘訣は、単純に部下をその人に合ったプロジェクトに配置すること
  • 変更が難しい部分のテストに、まずは力を注ぎましょう

第5章 グーグルのソフトウェアテストの未来

  • すべてのエンジニアのワークフローに品質を入れよ
  • テストは、品質そのものではない。品質は最初から組み込まれていなければいけないものであり、あとから付け足されるべきものではない
  • テストの価値は、成果物ではなく、テストという活動自体にある
  • 若手のデベロッパーや大学新卒の新人にとって、テスト開発は最初の仕事として、間違いなくもっとも良い
  • 私達の考えでは、テストエンジニアリングはテストデザインという仕事に変身する