tpi next入門
TRANSCRIPT
はじめに
このセッションについて
• 目的– TPINEXTの概要を知る– TPINEXTを使った評価を体験する
• 対象–テストの改善に興味がある人
• 注意事項– 30分の講義&ワークショップで概要に触れるのが目的です• 解説はアセスメントに絞ったスライドのみ扱います
–書籍のごく一部を扱っています。学ぶならまずは購入を
2
はじめに
このセッションについて
• 自己紹介–井芹洋輝–株式会社豆蔵。組み込みソフトウェアの開発やテストの改善に従事
– TPINEXTとの関わり• 日本語化を期に着手• TPINEXTファンデーション取得
3
概要
TPINEXTとは• テストプロセスの成熟度評価と改善の標準– 「ビジネス主導要因に基づき、組織のテストプロセスの成熟度を判断する際の標準」
– 「テストプロセスを改善するために現実的でテストに特化した測定値を設定し、実装するための標準」
• Sogeti社が策定
5
概要
TPINEXTの位置づけ• Sogeti社の体系・標準の一つ– TMap Next
• ビジネス主導、リスクベースのソフトウェアテストの方法論– TPINext
• テストプロセス改善の標準– PointZERO
• 欠陥、リスク軽減、コストの削減、生産性の向上などを扱う開発ライフサイクルの方法論
• TMap Next/TPINextは日本でも認定制度あり
7
概要
TPINEXTの文献• 「TPINEXTビジネス主導のテストプロセス改善」(TriFoglio)– pdf版の販売もあり
• TMap公式サイト– http://www.tmap.net/tpi-downloads–資料・ツールが公開されている(英語版のみ)
• TPINEXTでの評価・設定・メトリクス計算を支援するExcelツール
• キーエリアとチェックポイントの一覧
8
概要
TPINEXTを学ぶと何が良いのか?• 有望な自分たちのテストの改善手段–現場で取り組みやすい
• 現場主導でも取り組みやすい– チェックポイントとして明快な評価基準を提供– ニーズに合わせた段階的改善やスコープ設定の仕組みを提供– 組織、管理、技術等、バランスよく様々な領域をカバー
• 現場のエンジニア目線で親しみやすい– 問題の設定や改善アプローチに共感できる
–現場の本質的な改善を重視している• テストの教材としても有効–最新にして数少ない、日本語化されたテスト改善の標準
9
概要
TPINEXTが重視するもの• コントロールされた特定の改善ステップ
– 段階的改善をサポート• 実践事例ベース• 客観性
– 成熟度などの評価を客観的に実施できる• 選択肢と優先度
– ニーズに合わせた選択や優先付けをサポート• 詳細度
– ”とりあえずやるべきこと”が具体的にわかる• 現状のすばやい把握• 独立性
– 特定のプロセスや手法に依存しない• ビジネス主導要因の検討
– ビジネスゴールの達成を直接サポートする• 他のSDLCプロセスとの連携
– 全体のプロセスや、テストと他の活動を考慮する10
概要
関連用語• TPI– TestProcessImprovementの略称– テストプロセスの成熟度評価と改善の標準
• BDTPI– BusinessDrivenTestProcessImprovementの略称。– TPIを全体的に改善したもの。ビジネス主導要因に基づいたテーラリングや段階的改善などのサポートを強化
• ビジネス主導要因– 「管理者層が示す方向性」– 「ビジネス主導要因は、テストプロセスを改善するための理由、モチベーション、課題となるものであり、一般的には、結果とリスクと時間とコスト(の組み合わせ)で表現する」
• TPINEXT– BDTPIを基本モデルとした標準
11
TPINEXTの基本構成キーエリアとはグループ キーエリア
SR(利害関係者との関係) • 利害関係者のコミットメント• 関与の度合い• テスト戦略• テスト組織• コミュニケーション• 報告
TM(テスト管理) • テストプロセス管理• 見積もりと計画• メトリクス• 欠陥管理• テストウェア管理
TP(テスト業務の専門性) • 手法の実践• テスト担当者のプロ意識• テストケース設計• テストツール• テスト環境
16
TPINEXTの基本構成成熟度レベル• 各キーエリアの成熟度のレベル。• 成熟度レベル– 初期レベル
• 「アドホック」。テスト活動が体系化・文書化されておらず、属人的にテストが進められる
– コントロールレベル• 「適切なものごとを行う」。テストで行うべきことが行われていることを管理できている。
– 効率化レベル• 「ものごとを適切に行う」。行うべきことを、少ないコスト・時間でメリットを大きくするように、効率的に実施できている。
– 最適化レベル• 「刻々と変化する状況に絶えず順応する」。継続的に最適なやり方に改善し続けている。
18成熟度高
TPINEXTの基本構成理想の成熟度レベル
• コントロールレベルは基礎として達成を目指す• 効率化レベル以上は要求や制約に応じて達成を目指す
– ソフトウェア開発ライフサイクルのバランスを考慮• 達成・維持は大変• テストより開発の改善に注力した方が良い場合もある
19
TPINEXTの基本構成チェックポイント
• チェックポイント–キーエリアの成熟度を判定するための基準
• 各キーエリアごとに、コントロールレベル/効率化レベル/最適化レベルそれぞれで定義される
• 「達成した」「達成していない」の2値判定十分な証拠を提示できれば「達成」と判断
• 「対象の成熟度レベル」+「下位の成熟度レベル」のすべてのチェックポイントに達成したら、その成熟度レベル達成
21
TPINEXTの基本構成
チェックポイントの例(キーエリア「報告」)• 初期レベル
– なし• コントロールレベル
1. 報告には、時間とコスト、結果とリスクなどの側面が含まれている。
2. 報告の頻度や内容が、意思決定プロセスの利害関係者の基本要求に合致している。
3. 報告は書面によって行われている。
• 効率化レベル1. 効率的な意思決定に必要な利害関係者の報告要求を満たすことと、提供するための作業量のバランスが取れている。
2. 報告書には、テストプロセスの進捗やプロジェクトリスクを考慮して、テストの傾向と、テストプロジェクトからの推奨事項が含まれている。
3. 報告書には、テストのゴールやプロダクトリスクに関して、テストの傾向と、テストプロジェクトからの推奨事項が含まれている。
• 最適化レベル1. 報告は、現状あるいは将来のテストプロセスやSDLCの改善に利用するデータや測定値を提供している。
2. ソフトウェアプロセス改善用のデータや測定値をテストプロジェクト終了時にライン組織に渡している。
22
TPINEXTの基本構成チェックポイントの運用
• チェックポイントは、あるべき姿から測定可能な一部の属性を切り出したもの
–字面だけ達成すれば良いわけではない–各章節の冒頭の説明、改善提案、キーエリア達成のコツで説明される、本質的な改善達成が大前提
23
TPINEXTの基本構成キーエリア達成のコツ/改善提案• 改善提案–キーエリアの各成熟度レベルを達成するための改善のヒントや助言
–留意事項:チェックポイントの達成方法は様々。改善提案はその中の一つ
• キーエリア達成のコツ(Enabler)– ソフトウェア開発ライフサイクルの中で、該当成熟度レベルがどのようなプロセスや活動と関連しているかの解説
–改善をより的確に行うためのヒントとなる
25
3 7
95
95
3 2 4
95 65
15
95 0
95
95 2 5
95 8
95
3
TPINEXTの基本構成テスト成熟度マトリクス
28
成熟度レベルキーエリア
表中の番号:チェックポイント
TPINEXTの基本構成クラスタ
• チェックポイントをグルーピングしたもの–分類やステップ分けに用いる
• Ex)段階的改善のためのステップ分け• Ex)改善のスコープ設定
• 目的に応じてカスタマイズする
31
TPINEXTの基本構成2つのクラスタセット
1. 基本クラスタセット– BDTPIが標準として提示するクラスタ
• チェックポイントをA〜Mで分類– 用途
• 標準的な改善ステップを示す– A→B→…→Mとアルファベット順に改善していく– 重視すべきビジネス主導要因がなければ、これをそのまま適用可能– 「基本クラスタの構成は、テスト分野の幅広い経験に基づいている」
• カスタマイズのベースとする• チェックポイントの依存関係を示す
2. ビジネス主導クラスタセット– ビジネスのゴールに基づいて、基本クラスタセットをカスタマイズしたクラスタ
32
TPINEXTの基本構成基本クラスタセット
33
J
8 KDGL G
8 6
FBG
FBG
KMH A
FBGI CB
9 7
LG B
FBG
8
FBG 8I
FBG B
FBGE
FBG
J
0 0 3 5 5
G J J
1 2 2
0 1 1
0 2 2
0 2
1 1 2
1
0 2 2
1 1
3 3
4 4
3 4
5 5
0 0 2
0
2
0 0 1
1 3 4 4
3 4 4
3 3
3 5
3 4 4
4 4 4
5 5
0 2
1 21
4 5 5
4 5 5
3 3 5
3 3 5
TPINEXTの基本構成基本クラスタセットでの考え方の一部
34
J
8 KDGL G
8 6
FBG
FBG
KMH A
FBGI CB
9 7
LG B
FBG
8
FBG 8I
FBG B
FBGE
FBG
J
0 0 3 5 5
G J J
1 2 2
0 1 1
0 2 2
0 2
1 1 2
1
0 2 2
1 1
3 3
4 4
3 4
5 5
0 0 2
0
2
0 0 1
1 3 4 4
3 4 4
3 3
3 5
3 4 4
4 4 4
5 5
0 2
1 21
4 5 5
4 5 5
3 3 5
3 3 5
最適化レベルは最後に着手
テストの要求や目的(基本的にやるべきこと)、テスト戦略・プロセス(基本的な段取り)の整備は改善の大前提
ツールや環境の工夫は、マネジメントやテスト設計の基本ができてから着手
TPINEXTの基本構成クラスタのカスタマイズ
• クラスタはビジネス主導要因に応じて、スコープ分け・分類・依存関係定義を行う
• カスタマイズでは依存関係に注意–チェックポイントや基本クラスタセットのクラスタには依存関係が設定されている依存関係を壊すカスタマイズは推奨されていない
• 無料公開されている標準Excelツールが便利
35
TPINEXTの基本構成 補足
ビジネス主導要因
• 「管理者層が示す方向性である。通常は、組織のビジョンやビジネス戦略から導き出した方向性として提示するものであり、組織か業務レベルで達成すべき特定の成果を伴う」
• e.g.)優れたROI、開発期間の削減
36
TPINEXTの利用:ビジネス主導のクラスタ設定BDTPI• TPINEXTはビジネス主導要因を重視– BDTPI=ビジネス主導のTPI
• BDTPIのフローの例1. ビジネス主導要因を特定する2. ビジネスゴールをITゴールに置き換える3. ITゴールにとってより重要なキーエリアとそうでないキーエリアを特定する
4. チェックポイントのクラスタ配置を再調整する
39
TPINEXTの利用:ビジネス主導のクラスタ設定1.ビジネス主導要因を特定する• ビジネスからのニーズや要求の観点・分類を定義する– ※ニーズや要求をリストアップするわけではない
• TPINEXTの書籍での例)– 顧客志向と顧客サービスの改善– 外部の法や規制の順守– サービスの継続性と可用性の定着– (IT関連の)ビジネスリスクの管理– 競合するプロダクトやサービスの提供– ビジネスプロセスの機能性の改善と保守– (ITによる)ビジネス投資からの適切な利益– スキルとやる気のある人材の獲得、育成、維持– ビジネス要件の変更に対するスピーディな対応
40
TPINEXTの利用:ビジネス主導のクラスタ設定2.ビジネスゴールをITゴールに置き換える
41
顧客志向と顧客サービスの改善
外部の法や規制の順守
サービスの継続性と可用性の定着
…
ITサービスの信頼性と安全性の確保
P P P
外部の法や規制の順守
S P
…
P:Primary(最優先)、S:Supportive(補足)、空白:関連性少ない
ビジネスゴールの要素
ITゴールの要因
TPINEXTの利用:ビジネス主導のクラスタ設定3.ITゴールにとってより重要なキーエリアとそうでないキーエリアを特定する
顧客志向と顧客サービスの改善
外部の法や規制の順守
サービスの継続性と可用性の定着
…
ITサービスの信頼性と安全性の確保
H L N
外部の法や規制の順守
L H H
…
42
ITゴールの要素
キーエリア
H:優先度高、N:優先度中、L:優先度低
ビジネスゴール・ITゴール・キーエリアの関連性を明らかにするビジネスゴールの優先付けでキーエリアの優先付けを行う
TPINEXTの利用:ビジネス主導のクラスタ設定3.ITゴールにとってより重要なキーエリアとそうでないキーエリアを特定する
• ビジネスゴールの優先順位付けを行う– ビジネス主導要因ごとに優先度を設定する
• ビジネスゴールの優先順位に基づき、キーエリアの優先順位付けを行う
• 例)「サービスの継続性と可用性の定着」を優先する– ITゴールの優先付け
• 優先度高「ITサービスの信頼性と安全性の確保」– キーエリアの優先付け
• 優先度高「利害関係者のコミットメント」「コミュニケーション」「報告」・・
• 優先度低「関与の度合い」「テスト組織」・・
43
TPINEXTの利用:ビジネス主導のクラスタ設定4.BDTPI:ビジネス主導のクラスタ設定• 重要なキーエリアのクラスタを格上げする• 重要でないキーエリアのクラスタを格下げする• 無関係なチェックポイントをスコープ外にする
44
K
9ALEHM H
9 7
GCH
GCH
AL I B
GCHJ DC
8
MH C
GCH
9
GCH 9J
GCH C
GCHF
GCH
K
0 0 3 5 5
A H K Z K
1 2 2
0 1 1
0 2 2
0 2
1 1 2
1
0 2 2
1 1
3 3
4 4
3 4
5 5
0 0 2
0
2
0 0 1
1 6 6 6
3 4 4
3 3
3 5
3 4 4
4 4 4
5 5
0 2
1 21
4 5 5
4 5 5
3 3 5
3 3 5
TPINEXTの利用:プロセスに合わせたカスタマイズプロセスに合わせたカスタマイズ
• TPINEXTの書籍では、既知のプロセスやアプローチ(例えばアジャイル)への適用指針も解説
• Ex)アジャイルに適用する場合– 「利害関係者のコミットメント」の優先度を高める
• クライアントとの良好な関係の構築・維持を重視する一つの手段として、プロセスにクライアントを関与させる
• クライアントからのフィードバックの重要度を高める
45
TPINEXTの利用:改善フローの例改善フローの例
46
気づきを与える(意識づけ)
ゴール、スコープ、取り組み方を決定
する
現状をアセスメントする
改善を定義する
行動計画を立案する
行動計画を実施する
評価して再方向付けを行う
TPINEXTの利用:アセスメント2.情報を収集する/3.情報を分析する• BDTPIに基づいて情報収集、分析の観点を明確化する
–アセスメントのスコープをキーエリアやクラスタで明確化する
–対象のキーエリアごとに、どのような観点でどのようなアセスメントを行うか、具体的な方針を立てる
48
TPINEXTの利用:アセスメント2.情報を収集する/3.情報を分析する• 情報収集手段の例–成果物の監査– インタビュー(多面的なインタビューが有効)–複数のアセスメント結果のクロスレビュー
• 情報の分析– TPINextに基づいた成熟度レベルを分析する
• 収集情報に基づくチェックポイントを判定• チェックポイント結果からメトリクスを算出
– メトリクス例)スコープ内のチェックポイント達成率、優先度高のチェックポイント達成率、直近の目標に対するチェックポイント達成率、チェックポイント達成率の時系列推移や他との比較
–キーエリアを観点に、例えばSWOT分析を実施する49