ソフトウェアの品質を学びまくる

ソフトウェアの品質、ソフトウェアテストなどについて学んだことを記録するブログです。

【翻訳】モダンテスティングの原則

 同僚に紹介してもらった「Modern Testing Principles」、わかりやすくていいなと思ったので、許可を得て翻訳してみました。原文のブログ「AB Testing」は、ABテストとは関係なくって、PodcastとSlackを主宰しているAlanさんとBrentさんの名前からですね。

www.angryweasel.com

 なお、Work in Progressということで今後も変更されていくようなので、現時点での原文を引用しておきます。

  1. Our priority is improving the business.
  2. We accelerate the team, and use models like Lean Thinking and the Theory of Constraints to help identify, prioritize and mitigate bottlenecks from the system.
  3. We are a force for continuous improvement, helping the team adapt and optimize in order to succeed, rather than providing a safety net to catch failures.
  4. We care deeply about the quality culture of our team, and we coach, lead, and nurture the team towards a more mature quality culture.
  5. We believe that the customer is the only one capable to judge and evaluate the quality of our product
  6. We use data extensively to deeply understand customer usage and then close the gaps between product hypotheses and business impact.
  7. We expand testing abilities and knowhow across the team; understanding that this may reduce (or eliminate) the need for a dedicated testing specialist.

 では以下、翻訳です。
 誤訳や改善点あれば、Twitterなどでご指摘ください。

翻訳

モダンテスティングのミッションステートメント

 リリースに足る*1品質の達成を加速すること。

モダンテスティングの原則

 これらはまだ仕掛かり中であり、コメントを歓迎します。また、より踏み込んだ議論のために、slackグループに参加してください。
 モダンテスティングの7つの原則は、以下の通り。

  1. わたしたちは、ビジネスの改善を優先する。
  2. わたしたちは、チームを加速させる。リーンシンキングや制約理論(TOC)といったモデルを利用して、システム*2のボトルネックを特定し、優先順位をつけ、軽減するのを助ける。
  3. わたしたちは、継続的な改善の力である。欠陥を捕まえるセーフティネットを提供するよりも、成功するための適応・最適化を助けるのだ。
  4. わたしたちは、チームの品質カルチャーに十分注意を払ったうえで、さらに成熟した品質カルチャーに向かうために、チームを助け、導き、育てていく。
  5. わたしたちは、自分たちのプロダクトの品質を判断・評価することができるのは、唯一お客様のみであると信じる。
  6. わたしたちは、広くデータを用いてお客様の使い方を深く理解し、プロダクトの仮説とビジネスインパクトの間にあるギャップを小さくしていく。
  7. わたしたちは、テストに関する能力やノウハウをチームに広める。そのことが時に、テストのスペシャリストを専任でおく必要性を減らして(あるいはなくして)しまうことを理解したうえで。

所感

 これを読んで、「当たり前のことしか書いていない・・・」と感じる人と、「はあ?」と感じる人がいるかもしれません。カルチャーやコンテキストによっては、この原則と真っ向からぶつかると思います。たとえば以下のような風土・考え方をもつ組織とは、合いそうにないですよね。

  • テストチームの第一の目的は、できる限りたくさんのバグを見つけて、外部品質を高めることである。
  • 開発チームは自分たちで品質を判断できないので、テストチームが判断する必要がある。
  • QA組織は、開発組織と独立した部門であり、開発の最後に品質保証の活動を行うものである。

 どっちが正しいかはわかりませんし、状況によるのかもしれませんが、どっちが楽しそうかといえば、「モダンテスティング」の方が楽しそうだなーとわたしは思います。

 これらの原則から感じられるのは、「お客様」「チーム」という2つの視点ですね。
 特にわたしが好きなのは、7です。テストチームは、テストをする人のポジションを守るためにあるものではなく、お客様のビジネスとチーム全体をよくするためにあるもの。「テストチーム」を守るために、テストの技術を秘法にするのでは、チームの加速に寄与することなんてできない。7が、自分自身の否定につながると感じるなら、それは成長のための学習を怠っているからでは?と言われているように思います。

 あ、リーンシンキングとTOCですか? もちろん書籍を持っていますよ。

IMG-1985

 持ってはいます!
 ・・・成長のための学習を怠っているなあ。(ザ・ゴールの焼けた背表紙を見つめながら)

ザ・ゴール ― 企業の究極の目的とは何か

ザ・ゴール ― 企業の究極の目的とは何か

リーン・スタートアップ

リーン・スタートアップ

  • 作者: エリック・リース,伊藤穣一(MITメディアラボ所長),井口耕二
  • 出版社/メーカー: 日経BP社
  • 発売日: 2012/04/12
  • メディア: 単行本
  • 購入: 24人 クリック: 360回
  • この商品を含むブログ (95件) を見る

*1:「Shippable」(出荷可能な)意訳です。定訳あるでしょうか?

*2:ここでいう「システム」とは、コンピュータシステムではなく、開発チーム・プロセスのことを指していると考えています。