テスト開発方法論や各種手法の適用と展開

この10数年ほどでテスト開発、テスト設計という概念が普及し、HAYST法(富士ゼロックスの秋山さん・吉澤さん・仙石さんが提案)、ゆもつよメソッド(日本HP湯本さんが提案)、NGT/VSTeP(電気通信大学にしさんが提案)などテスト開発方法論の詳細情報や実践事例も増えつつあります。

 

これらの概念や方法論にいち早く目を向け、それを理解し、実践しはじめた組織やチームが増えてきたなぁと実感する一方で、現状では組織の中の数人、チームの中の一人、のような比率にすぎずに周囲から浮いた存在になってしまう、現状からどのような段取りで変えていけば組織・チームとしてシームレスに移行できるのかがわからずに悶々とした日々を送る、結果的に既存のテストプロセスを変えられず、混乱したチームの状況に苦しんでいる組織やチーム、エンジニアも多いのではないかと推察しています。

 

いち早く方法論や手法の価値に気づき、情報収集・学習・一部実践などを重ねて自ら実践できるレベルに達した先行者のみなさんが次に迎えるステージはチーム・組織への展開です。

自分だけが新しい概念や方法論・手法が実践できても、チームや組織としての成果物がばらつき、かえって(一時的に)混乱する要因にもなりかねませんし、下手をすると異端児扱いされ、向き合ってもらえなくなる可能性もあります。

事務的な作業と違い、周囲の関係者に口頭や文書で教えればいい・・・と言うほど簡単に拡げられるものではないのです。

 

一般的に、人間は頭でわからないものは基本的に受け付けないものです。

新しい方法論や手法に興味を示して早速情報を収集し、その価値を把握するのは、普段から問題意識が高く、常に関連情報を収集→試行→実践と進めて自分のものにする一部の有識者の方たちと、さまざまな新しい知識だけを貯め込み「知ってる」ということだけがステータスになっている方たちです。

それ以外は当初は見向きもしないのがほとんど。

実践例や書籍が出ても反応はあまり変わらず、メディアなどが大々的に取り上げたり、顧客や関連組織が実践していてその適用に圧力がかかってはじめて形式的に適用しようとする、というのが(一般的な)実態ではないでしょうか。

 

また、多くの人たちは、新しい概念や方法論・手法の価値を簡単には理解できず、既存のやり方に固執しようとするもの。

人間は習慣の動物。最適より習慣を好む傾向があります。

どんなによいことだと頭でわかっても悪い習慣は簡単に変えられないことが多いのです。

さらに、適用したくても混乱の淵から脱しない限り、毎日が大変な状況で手も付けられない、という組織やチームもあります。

テスト設計のしそこないなどから多くの手戻り(仕事のやり直し)を発生させ、高稼動状態を続けている組織やチームでは、新しいことの試行・取り込みは(余裕が全然なくて)できない、ということです。

(こうやって、いつまでも混乱したままの組織やチームが出来上がります)

これらの「壁」を打破しない限り、 チーム・組織での実践は実現しません。

 

このような状態におけるアプローチには例えば次のような工夫が必要です。

(1)関係者が改善に参加したくなる理由から始める

(2)全員参画でのぞむ

  各メンバーの実務における困り事を把握し、チームや組織で共有してからスタートする

 その解決のために改善を行う

 (自ら言い出したこと・自分にメリットがあることには取り組む姿勢を持ちやすい)


(3)存在するたくさんの問題から「取り組むべき」問題や狙いを絞り込む

 解決すると効果的な問題を特定し、使えるリソース(通常は少ない)を集中投下する

 特定した問題を具体的に把握し、改善の狙いや目標を明確にする

 

(4)改善による混乱を可能な限り回避する

 大混乱な状況での改善は回避する(当初の改善は不慣れなため負荷が大きくなる)

 現状の作業方法や成果物をできるだけ大きく変えずに最低限の見直しで効果が出るように仕立て直す

 当初は可能な限り簡単に効果が出る方法を採用し、そのあと徐々に高度化させていく

 改善開始から完了までのリードタイムをできるだけ短くする(改善対象を充分小さく絞り込む)

 部分試行など小さく開始し、改善手段をより磨きながら段階的に展開する

 これを繰り返しながら徐々に「あるべきプロセス」を作り上げていく

 当初はイベント的に改善を開始するが、最終的には普段の業務運営の中に改善機能を埋め込む

 (イベントではなく、業務運営の中であたり前に問題発見解決や改善が行えるようにする)

 

(5)メンバーが改善の効果や手応えをリアルに実感しながら進める

 改善により困り事が減った、なくなった、ということを事実情報で把握し、チーム・組織で共有する

 できるだけ短期間で「うまくいった!」ことを共有し、リアルに実感する

 うまくいかなかった場合でもその理由を特定して、次はこうすればうまくいくという見通し(手応え)を共有する

 

思いつくものをざっと書いてみましたが、一つひとつはそう難しくなさそうに見えるものの、これをよどみなく、機を逸さず確実に行うのは簡単ではありません。

これらの実践を可能な限り成功裏に進められるように考案したのがSaPIDと問題モデリングです。

そしてまさにいま、テスト開発方法論や手法を活用したテストプロセス改善に取り組むチームをSaPIDと問題モデリングで支援している最中です。


テスト開発・テスト設計の方法論や提案されているさまざまな手法を実務に適用し、チーム・組織に展開して効果を獲得するために、これらのポイントを参考にしてもらえればうれしいです。