Motivational Agile Me

1976 Tom GIlb, “Software Metrics” “”メトリクスはソフトウエア開発チームに システムの品質を望まれるレベルにして いく意欲を起こさせる力がある” Iterative and Incremental Development: A Brief History, Crai...

0 downloads 261 Views 3MB Size
Motivational Agile Metrics 改善をモチベートするメトリクスでチームが変わる IPAセミナー(3/12(火)) ~組込みソフトウェア開発 定量データ活用推進セミナー~

1

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

2

自己紹介 永田 敦 サイボウズ株式会社 開発本部 アジャイルコーチ WingArc1ST

ソフトウェアテスト改善 ソフトウエアプロセス改善 アジャイルソフトウェア開発改善サポートおよびコーチング JSTQB Advanced Level Test Manager Agile Inspection Maestro SQiP 研究会第4分科会主査 派生開発推進協議会運営委員 Agile流派 Evolutionary(EVO)

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

Cybozu

開発の管理、要求管理、業務オペレーションを自社製品で行っている 3

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

アジェンダ アジャイル開発へのモチベーション PDSAサイクル スクラムフレームワーク OODA Motivational Agile Metrics まとめ



  

 

4

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

アジャイル開発へのモチベーション プロジェクトを成功させたい

5

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

An Agile way, kenji Hiranabe, https://anagileway.wordpress.com/2015/12/04/what-is-enterprise-agile-1/ 6

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

プロジェクトの成功率

Standish Group 2015 Chaos Report

7

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

プロジェクトの成功率 アジャイル対ウォータフォール

Standish Group 2015 Chaos Report

8

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

プロジェクトは失敗する ソフトウェア開発プロジェクトは毎回違う



   

要求と価値 必要とされる技術 環境(内部環境、外部環境) 組織(チーム)

ソフトウェアは目に見えない 初めから本当の要求を正確に獲得し、表現伝達する ことが非常に難しい それに必要な情報が初めからわかっているわけでは ない 初めから、すべてのリスクを認識することが難しい

 

 

9

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

プロジェクトの失敗から学ぶ

ベストプラクティスからは学べない 銀の弾丸はない

自らのドメイン、コンテキストから、 経験的に学んでいく必要がある

エンピリカル・プロセス 10

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

エンピリカル・プロセス 今日のソフトウェア

サイズが著しく増えた 例:自動車 1000万行 20年間で100倍 複雑度が著しく増えた

不確実性の増大 プロジェクトのすべてを予測し、計画することが困難 プロジェクトを逐次評価し、アダプティブに改善する 11

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

プロジェクトの評価と学び ウォータフォール 評価、学びまで含めた1プロジェクトの期間 開発 評価 開始

開始

評価

評価と学び

アジャイル 開発 開始

開発

評価

評価 学び

開発

評価

評価 学び

評価

終了 開始

評価

評価 学び

How quality is assured by Evolutionary Method, Niels Malotaux, 2014 12

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

PDSA イテレーティブに学習するしくみ

13

Act

Plan

Study

Do

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

PDSAサイクル デミングの改善の心

14

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

Deming

PDSAサイクル

PDSA(Plan-Do-Study-Act) Cycle 1993 •実行 •変更の取捨選択 をし、再びサイクル を回る

•変更またはテストを計画 する •改善の目標を立てる

A

P

S

D

•結果から学ぶ •何が学べたか •何が悪かったか

15

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

•変更またはテストを実行 する •できるだけ小さな規模で 行う

copyright © A.Nagata

2019/3/12

Deming PDCA物語:PDSAサイクルとアジャイル 例えばSCRUM • 改善施策の実行

• スプリント計画

A

P

S

D • 開発

• スプリントレ ビュー • 振り返り

デミングの考えはアジャイルのルーツ 16

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

スクラムフレームワーク アジャイル開発の代表的フレームワーク

17

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

スプリントの概要 一定の期間

1週間から1か月の 短期間

タイムボックス

目標をかえない

18

完成の定義に 合意する

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

プロダクトバックログと プロダクトバックログアイテム(PBI) プロダクトバックログ アイテム

サイズ

ユーザーストーリー

フューチャー

ユースケース ユースケース

無定形文 欠陥 プロダクトバックログアイテム

無定形文 技術的な改善

知識の獲得

19

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

用語 

プロダクトバックログ 





プロダクトバックログアイテム(PBI) 

プロダクトバックログの項目



プロダクトバックログの項目を完成させるために必要な作業の 計画

インクリメント  



プロダクトに必要なものがすべて上げてあるリスト

成果物としてのコード イテレーションごとにインクリメンタルに成長していくのでイ ンクリメントと呼んでいる

出荷判定可能なインクリメント 

20

顧客に出してもよい品質レベルに仕上げたコード IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

スクラムフレームワーク:用語

検査と適応

プランニング グルーミング

遂行 デイリースクラム

スプリント計画 スプリントバックログ プロダクトバックログ

スプリント実施

出荷判断可能な プロダクト インクリメント

スプリントレビュー

スプリント振り返り

検査と適応 21

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

OODA フィードバックの戦略

22

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

OODA

23

Act

Observe

Do

Orient

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

OODAループ 観察 (Observe)

情勢判断 (Orient)

暗黙の 誘導・統制

情況の 進展

外部 情報

観察

環境との 相互作用 の展開

フィード フォワード

意思決定 (Decide) 暗黙の 誘導・統制

伝統 文化 遺伝的 資質 新しい 情報

行動 (Act)

分析/ 統合

フィード フォワード

決定 (仮説)

フィード フォワード

行動 (テスト)

先行 経験 フィードバック フィードバック

環境との相互作用の展開 野中, 郁次郎 『知的機動力の本質 - アメリカ海兵隊の組織論的研究』 中央公論新社、2017年。ISBN 978-4-120049-74-3。 24

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

戦局を左右するのは情報量と意思決定のスピードである 相手のループの内側に入る… 意思 決定

監視 プレーヤ 1

プレーヤ 2

監視

25

情勢 判断

監視 情勢 判断

行動

情勢 判断

行動

情勢 判断



意思 決定

監視

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata



行動

意思 決定

2019/3/12

John Boyd

/https://medium.com/@raldon/make-better-decisions-lessons-from-a-fighter-pilot-and-the-honey-badger-2258df453ed1 26

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

OODA ループ

Input

Output

27

観察

状況 判断

行動

意思 決定

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

レビュー

仕様・コード

•読む •傾聴 •観る

デモ

観察

状況 判断

行動

意思 決定

•質問する •指摘する

28

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

•欠陥の探索 •要因分析 •学習

•質問・指摘の 策定

copyright © A.Nagata

2019/3/12

振り返り スプリントレビ ュー結果 スプリント の成果 テスト結果

課題 リスク 障壁

KPT リスク分析 課題分析

観察

状況 判断

行動

意思 決定

次のスプリント の行動

対応策の 合意と決定

対応のコミット

29

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

対応策の 策定

copyright © A.Nagata

2019/3/12

テスト プロダクトバ ックログ • • • •

スプリント計画 朝会 スプリント レビュー インシデント

• テスト結果 • インシデント レポート

30

•レビュー •質問

観察

状況 判断

行動

意思 決定

•テスト実行 •レポート作成

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

•状況分析 •テスト分析、設計 •インシデント分析 •リスク見直し •学習

•テストケース 変更・作成

copyright © A.Nagata

2019/3/12

品質の見える化:メトリクス 

メッセージを持ったメトリクス 





要素  



受け取ったステークホルダが行動を起こすメッセージが必要 ゴール、目的 ストーリポイント 工数時間

見せ方 

二つの手法  

メッセージを出すためにグラフを変えていく 定点観測 

  

31

行動(改善)した効果を示す

バーンダウンチャート バーンアップチャート ベロシティ

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

適切なフィードバックによる改善 互いを自律的に改善し合う 意思 決定

監視 情勢 判断

監視 情勢 判断

行動

行動

フィードバック

フィードバック

情勢 判断

監視

32

情勢 判断



意思 決定

監視

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata



行動

意思 決定

2019/3/12

Motivational Agile Metrics モチベーションのメッセージを持つメトリクスとその事例

33

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

Motivational Metrics 1976 Tom GIlb, “Software Metrics”

“”メトリクスはソフトウエア開発チームに システムの品質を望まれるレベルにして いく意欲を起こさせる力がある”

IIDについて明確に議論された初めての本 この本によって、Tom Gilbはアジャイルの父なら ぬアジャイルの祖父(Grand Father)と呼ばれる Iterative and Incremental Development: A Brief History, Craig Larman,Victor R. Basili ,2003 34

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

バーンダウンチャート

35

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

メトリクス:バーンアップチャート

スプリント

36

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ストーリポイント

ベロシティ: ストーリポイントの移動平均

ストーリ ポイント ベロシティ

スプリント

37

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

メトリクス:実際のバーンアップチャート

ゴール 実績線 計画線

予測線

スプリント

バーンアップチャート 38

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

事例1:Velocity 以上にスプリントバックログは積めない

実績 39

実績

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

計画 copyright © A.Nagata

2019/3/12

バックログの先送り バックログの先送り プロダクトバックログ 分配 先送り

終わらない もしくは 漏れる

スプリント バックログ スプリント

スプリント

スプリント

システムテスト

出荷予定

40

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

先送りされているバックログ

41

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

先送りの変化

42

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

先送りの減少

43

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

事例2 背景 

  

 

チームメンバー 9名 スクラムマスタとプロダクトオーナ兼務 プロジェクトマネージャ(課長兼務) スクラム歴 半年 2週間スプリント Sprint 11スプリント

44

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

プロダクトバックログ 

製品 



とあるITシステム

スプリント0   

45

製品 PBI数 468 ストーリポイント累計 1246

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ストーリポイント

目論見

46

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ストーリポイント

Sprint 3 ストーリポイント累計

47

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ストーリポイント

sprint 3

48

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ストーリポイント

Sprint 4のプランニング

49

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ストーリポイント

Sprint 4

50

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

Sprint 5 計画

プロダクトオーナ ある顧客へのリリースの要請 AとBとCの機能をこの時期に見せないと 今後の営業活動ができない 開発プロジェクト自身の存続にもインパクト うけざるを得ない 51

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

Sprint 5 計画

チーム 無理です

52

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

Sprint 5 計画

対策案 ある顧客のリリースまで 頑張ってくれないか。 そのあとは、ペースを緩める 受けざるを得ない

53

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ストーリポイント

Sprint 4 計画修正後

54

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

Sprint 5

ストーリポイント

特定顧客への リリース

55

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

チームには何が起こるでしょうか

56

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ストーリポイント

Sprint 5 結果

57

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

Sprint 5で何が起きたか

リリースのために、システムテストが 念入りに入ったために、 多くのバグが発見 それらのバグも直すために、 少しリリースを遅らせてSP6でリリース

58

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ストーリポイント

Sprint 6の計画

バグの分 PBIが増え、ゴールが逃げている 59

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ストーリポイント

Sprint 6の結果とSprint7の計画

60

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ストーリポイント

Sprint 7の結果とSprint 8の計画

61

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ストーリポイント

Sprint 8の結果とSprint 9の計画

62

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ストーリポイント

Sprint 8の結果とSprint 9の計画

63

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ストーリポイント

Sprint 9計画

64

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ストーリポイント

Sprint 10 の計画

65

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ストーリポイント

Sprint 10の結果とSprint 11の計画

66

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ストーリポイント

Spint 11結果

67

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ここから何が学べるでしょうか

メトリクスのフィードバックから、 チームはリアルタイムに適切な対処 を行い、ゴールを達成することがで きた。

68

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

まとめ Act

Plan

Study

Do

メトリクスは行動を起こさせる メッセージを持たなければ ならない。

Quality On Time 69

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12

ありがとうございました

70

IPA 組込みソフトウェア開発 定量データ活用推進セミナー

copyright © A.Nagata

2019/3/12