今回、若干毛色を変えて、テクニカルで概念という話を。
あれ、あんまり毛色変わってないかも?
TPI NEXTというフレームワークがあります。
Test Process Improvement(テストプロセス改善)というものです。
どう使うかは、詳細に解説しているブログや書籍がありますので、最後に記すことにして、今回衝撃を受けた一説があったために紹介したいと思い、筆をとりました。
そもそも、「テスト」ってなんでしょうか?
我々に馴染みが深いのは、定期考査や学力テストなど、自身の正答数や率を理解度と変換して点数にする事、ではないでしょうか?
では、ITシステムやITサービスにおけるテストとはなんでしょうか?
僭越ながら私の理解を言葉にすると、「ちゃんと意図した通りに動き、また意図しない動きをしないことを保証するもの」です。
つまり、この「テスト」をパスしたものは間違いなくこちらの意図した通りに動き、また意図しない結果を出さないー別の言い方をすれば、未定義のアウトプットを出力しないーことを保証する活動、それがテストだと認識していました。
しかし、このTPI NEXT、違いました。
引用します。
テスト作業とはテスト対象に要求された振る舞いと実際の振る舞いの差異を把握することである。
テストとは、「こうあるべき」という理想の姿と「こうなった」という現実の姿の差異を把握するためのものである。
テストの結果は良し悪しではないと断言しています。テストの結果は、「差異の把握」でしかないと、そういっています。
今の日本の教育の現場が聞いたらひっくり返りそうな話です。点数をつけて優劣を競う。それが今のテストの在り方です。教育の現場を揶揄することは本意ではないのでこの辺りで留めます。
さらに続きます。
高品質のプロダクトを納めるために、テスト作業が唯一の方法というわけではない。テスト作業は、ITシステムの品質強化全体に貢献する道具の1つにすぎない。
品質への対策には、3つの種類がある。
予防措置:目的は、不十分な品質を防ぐこと。
検出措置:目的は、不十分な品質を発見すること。
是正措置:目的は、不十分な品質を是正すること。
テストは、不十分な品質を「防ぐ」「発見する」「是正する」この3つだと言っている・・・わけではありません。
若干ミスリードですが、品質への対策は「防ぐ」「発見する」「是正する」の3つであり、テストは、この3つのどれを目的とするのかはテストを使う側、つまり、私たちにゆだねられている。そうとらえるべきテキストです。
当たり前ですが、予防の方がコストも効果も高いことはご理解いただけると思います。
「あ、やっちゃってた!」と気が付いた時にはリリースまで時間がなく、修正のために残業に次ぐ残業なんてのは、あるある話ですよね。
つまり、TPI NEXTは、予防措置、不十分な品質を防ぐテストプロセス改善であり、そのフレームを提供してくれているのです。
これは、色々話に繋がる示唆だと思いませんが?
例えば、ザッカーバーグの名言「完璧に作るより、まず終わらせろ」にもつながりますし、前回から申し上げている「価値を生まない無駄を見つける」や「品質を工程で作り込む」というトヨタ生産方式やリーン生産方式の概念にもつながります。
とにかく、早く不十分な品質を見つけることが重要であり、早く見つけることは「予防」することに他ならないのです。
トヨタのアンドンは「工程の中に入り込むプロセス上の不十分な品質を発見する」ツールであり「不良を後工程に残さない」ツールです。
Netflixのカオスモンキー。これもそういうツールです。彼らがお客様に提供する価値ー即ち、感動ーを提供できなくする不良をあえてコントロールされた不具合として発現させ、不十分な品質が潜む可能性を予防しています。ま、本番環境のノードをのべつくまなく停止させるなんてそんな乱暴なことよく考えつくと思いますが。(笑)
※ここでいうツールは手段と読み替えていただいてもOK。
TPI NEXT、まだ1/3しか読んでおりませんが、冒頭から、これから先の世の中に必要なスキルだと感じずにいられません。
あ、読んだ感想なんかもあげたほうがいいのかなぁ。
TPI Next: Business Driven Test Process Improvement
- 作者: Gerrit De Vries,Ben Visser,Loek Wilhelmus
- 出版社/メーカー: UTN Publishers
- 発売日: 2009/11/20
- メディア: ハードカバー
- クリック: 1回
- この商品を含むブログを見る