$30 off During Our Annual Pro Sale. View Details »

It dependsから脱却するスクラム #scrumsapporo / Scrum to break away from It depends

TAKAKING22
November 07, 2020

It dependsから脱却するスクラム #scrumsapporo / Scrum to break away from It depends

2020年11月5〜7日に開催された「SCRUM FEST SAPPORO 2020 」にて。

TAKAKING22

November 07, 2020
Tweet

More Decks by TAKAKING22

Other Decks in Technology

Transcript

  1. It depends から脱却するスクラム
    及部敬雄 (@TAKAKING22)
    Photo by Pablo Heimplatz on Unsplash

    View Slide

  2. スクラムが難しいと感じるのは
    どんなところですか?

    View Slide

  3. スクラムガイドから
    複雑で変化の激しい問題に対応するためのフレームワーク
    スクラムフレームワークは、スクラムチームとその役割・

    イベント・作成物・ルールで構成されている。
    それぞれに目的があり、スクラムの成功や利用に欠かせない。
    スクラムフレームワークを使用する具体的な方法にはさまざまな

    ものがあり、それらについては本稿では触れない。

    View Slide

  4. スクラムを難しいと感じる理由を聞いてみた
    わかるようでわからない
    具体的なのか抽象的なのかわからない
    どこからはじめればよいのかわからない
    どうやって自分たちの状況にあてはめればよいのかわからない

    View Slide

  5. 再びスクラムガイドから
    スクラムとは、以下のようなものである。
    ・軽量
    ・理解が容易
    ・習得は困難
    マジ!?

    View Slide

  6. いざ詳しい人に聞いてみると…
    It depends
    状況に依るね

    View Slide

  7. は!?

    View Slide

  8. It depends から脱却するスクラム
    及部敬雄 (@TAKAKING22)
    Photo by Pablo Heimplatz on Unsplash

    View Slide

  9. !5",",*/(
    גࣜձࣾσϯιʔσδλϧΠϊϕʔγϣϯࣨ
    "(*-&.0/45&3$0.ʢݸਓࣄۀओʣ
    4*-7&3#6--&5$-6#ʢνʔϜෳۀʣ
    ٴ෦ܟ༤
    ੍ޚෆೳͳΞδϟΠϧϞϯελʔ

    View Slide

  10. It depends
    マインドセット
    心理的安全性

    View Slide

  11. それっぽい言葉
    どんなことでもだいたい It depends
    どんなときでも心理的安全性もマインドセットは大切
    確かにそのとおり
    でも一切情報量が増えていない

    View Slide

  12. で、どうしたらいいの?

    View Slide

  13. ここからのお話
    実際の現場で自分がどうしているのか
    大事にしていること
    特に気をつけていること
    なぜそれをやっているのか
    It depends で片付けずに実装の話をする

    View Slide

  14. 仕事をとりまく状況
    どうなるのかわからないビジネス
    どうすればよいのかわからないプロダクト
    何を考えているのかわからない人たち
    なぜそうなっているのかわからない組織やルール

    View Slide

  15. わかる
    うまくいく
    わからない
    うまくいかない

    View Slide

  16. わかる
    うまくいく
    わからない
    うまくいかない
    未知のわからない

    View Slide

  17. わからないなんてふつうだ!
    わからないことだらけ
    わからないことが多いと不安なので解消したくなる
    なにかがわかるとまた新しいわからないことが見つかる
    常にわからないはそこにある

    View Slide

  18. こうやって考えてる
    わからないことをどうやって解消するか
    わからないこととどうやって付き合っていくか

    View Slide

  19. プロジェクト序盤 プロジェクト中盤 プロジェクト終盤

    View Slide

  20. プロジェクト
    プロジェクト
    人生
    チーム
    プロダクト
    システム

    View Slide

  21. プロジェクト
    プロジェクトは終わらせるために行う
    プロジェクトは続いていくなにかのための活動
    内製開発でも受託開発でも同じ

    View Slide

  22. プロジェクト中盤
    プロジェクト序盤 プロジェクト終盤

    View Slide

  23. プロジェクト序盤
    一番情報を持っていない(=わからないことが多い)
    最初からすべてを計画することをあきらめる
    目指す先がないとスタートできないので必要な計画はする
    全体の方向性と直近の見通しが立つ適度な計画
    どうすれば最速でスタートすることができるか

    View Slide

  24. View Slide

  25. インセプションデッキ
    プロジェクトを始める前に明らかにしておくべき

    大切なことを知るための活動
    10個の質問に答えていく形式
    チーム全員で話し合って合意したものをアウトプットする

    View Slide

  26. 大事にしているスライド
    チーム名・ロゴ(オリジナル)
    我々はなぜここにいるのか
    エレベーターピッチ
    やらないことリスト・あとで決めることリスト
    夜も眠れなくなるような問題
    トレードオフスライダー
    OKR(オリジナル)
    個人としての目標(オリジナル)

    View Slide

  27. View Slide

  28. 好きなインセプションデッキの進め方
    1. 個人ワークでそれぞれ書く
    2. お互いに共有し合う
    3. チームで1つにまとめてアウトプットする
    https://takaking22.com/2019/how-to-use-inceptiondeck/

    View Slide

  29. インセプションデッキのポイント
    成果物よりもつくる過程を大切にする
    完成させることに固執せずにできる範囲でつくる
    チームやプロダクトのことを自分で考えて自分で話す練習をする
    ズレていることを見つける
    チームで合意して1つのアウトプットにまとめる体験をする

    View Slide

  30. 共通の言葉がチームのコンパスになる
    Photo by Jordan Madrid on Unsplash

    View Slide

  31. 仕事のリズムを設計する

    εϓϦϯτ

    εϓϦϯτ

    εϓϦϯτ

    εϓϦϯτ

    εϓϦϯτ

    εϓϦϯτ

    εϓϦϯτ

    εϓϦϯτ

    εϓϦϯτ

    εϓϦϯτ
    プロジェクト
    1週間スプリント 1週間スプリント

    View Slide

  32. タイムボックス
    時間の箱をつくって繰り返していく
    定期的にフィードバックを得る機会をつくる
    比較して計測できるように箱の大きさは基本変えない
    コンテキストに合わせて階層構造をとってもよい

    View Slide

  33. チームの構造
    プロダクトオーナー
    開発チーム
    スクラムマスター
    プロジェクトマネージャー
    顧客

    View Slide

  34. チームは階層構造であることが多い
    密 疎
    理想は目指しつつも現実を受け入れる(ex. 兼務、雇用形態…)
    心地よいリズムや距離感が人によって違う
    型にはめようとせずに柔軟に設計をする
    スムーズ・シンプルであることを目指す

    View Slide

  35. 誰をプロダクトオーナーにするのか
    顧客、発注者、事業部
    自社、部署、チーム
    開発チーム
    自分

    View Slide

  36. 誰をプロダクトオーナーにするのか
    顧客、発注者、事業部
    自社、部署、チーム
    開発チーム
    自分
    ほんとは
    プロダクトオーナーに
    なってほしい
    やりづらいので
    近くに
    仮プロダクオーナーを置く

    View Slide

  37. 役割と責任を人に当てはめてもうまくいかないことが多い
    はやく走れる人たちが走り回ればよい
    誰かに依存していること(最終決定)を明確にして、

    それ以外は全体として役割を包含できればよい
    プロダクトオーナーやスクラムに限った話ではない
    誰をプロダクトオーナーにするのか

    View Slide

  38. 自分だったらこうするかなー
    顧客、発注者、事業部
    自社、部署、チーム
    開発チーム
    自分
    最終決定や
    そのために必要な準備は
    お願いする
    判断するために必要な情報を集めたり、
    優先順位をおすすめしたり、
    こまめにプロダクトを見せて確認してもらう
    仮プロダクトオーナーをおいて
    コミュニケーションを

    階層構造にしない

    View Slide

  39. 全体像を一枚絵にする

    View Slide

  40. 余白をつくる
    最初に決めて終わりではなくここから始まる
    決め過ぎずに余白をもたせておく
    プロダクトやチームと一緒にみんなで育てていく

    View Slide

  41. 未完成をつくる
    Photo by Sung Shin on Unsplash

    View Slide

  42. プロジェクト序盤 プロジェクト中盤 プロジェクト終盤

    View Slide

  43. プロジェクト中盤
    それまでに決めたこと=過去に縛られない
    目の前で起きていることにフォーカスする
    経験を積み重ねて解像度を上げていく
    取り返しのつかない失敗だけはしないようにする
    どうやって変わらないようにするかではなく
    どうやって変えていくか

    View Slide

  44. 起こった事象(Fact)
    動いているプロダクト
    フィードバック
    計画
    プロダクトバックログ
    開発プロセス
    左よりも右をより大切にする

    View Slide

  45. 動いているプロダクト
    実際につくること、動いているプロダクトをさわることで

    はじめてわかることが多い
    最初に計画したものにこだわらずどんどん変える

    View Slide

  46. プロダクトバックログ
    ˌ ϓϩμΫτόοΫϩάΞΠςϜ ׬੒ͷఆٛ ݟੵ΋Γ








    ཉ͍͠ॱ൪ʹฒΜͰ͍Δ
    ͜ͷॱ൪ʹ͍ͭͬͯ͘͘
    ॱ൪͸ఆظతʹݟ௚͢
    ༧ଌ౸ୡ఺ʢϕϩγςΟʣ
    աڈͷ࣮੷͔Β༧ଌ
    ༧૝Ͱ͸ͳ͘༧ଌ
    શ෦΍Βͳ͍ͷͰ
    ඞཁҎ্ʹઌ·Ͱ
    ৄࡉʹܭը͠ͳ͍

    View Slide

  47. 活き活きしたプロダクトバックログ
    やることのリストアップではなくて仮説のリストアップ
    最初は解像度が荒くて質も低いが、

    プロジェクトが進むにつれてどんどん育っていく
    プロダクトバックログへのCRUD処理が多い

    View Slide

  48. 見積もり
    優先順位をつけるときの判断基準としてのボリュームや、

    ビジネス判断をする際に見通しを知りたいことはある
    上記が満たされていれば、

    数字どころか見積もりそのものもいらないかもしれない
    数字当てゲームに時間を使い過ぎない

    View Slide

  49. 障害リスト
    リスクだと思っていることを貯めておく箱を作る
    書き溜めたら忘れる
    定期的にチェックするタイミングをつくる(スプリント毎など)

    View Slide

  50. 決定を遅延する
    適切なタイミングで決定ができるようにする
    今決めなくていいことは先送りにする
    今やるべきことにフォーカスする

    View Slide

  51. フィードバック
    適切なフィードバックをどうやってもらうか
    「それユーザーではなくてあなたの意見ですよね?」問題
    ユーザーの声をただ鵜呑みにするのではなく、

    自分たちの仮説を検証するためにフィードバックを活用する

    View Slide

  52. 肩越しの視線
    実ユーザーがプロダクトを使っているところを見せてもらう
    こちらの想定通りに問題解決までたどりつけるか
    問題解決までがスムーズだったか

    View Slide

  53. 書いたコードを捨てる
    捨てることを厭わない
    捨てる=ムダになったのではなくより洗練されたと考える
    Be Simple

    View Slide

  54. モブプログラミング
    チーム全員で同じ時間に同じ画面を見ながら同じ仕事をする
    リソース効率ではなくフロー効率を重視する
    リモートワークにおいても有効である
    https://speakerdeck.com/takaking22/remote-mobprogramming-stay-home-with-team

    View Slide

  55. View Slide

  56. 私たちのモブプログラミング
    ϞϒʹνʔϜ

    View Slide

  57. 一緒に作業をする
    会議に向けてそれぞれ準備や作業をして、

    集まった時に報告・議論・判断をすることが効率がよいのか
    集まった時に一緒に作業を進めた方が、

    スムーズに進むことは自分たちが考えている以上に多い
    作業の結果だけでなく過程もチームの合意となる

    View Slide

  58. ボトルネックは移動する
    ボトルネックは移動していく
    ボトルネックを停滞させない
    ボトルネックを素早く発見して移動させる

    View Slide

  59. Photo by Grillot edouard on Unsplash

    View Slide

  60. 螺旋を登っていくイメージ
    似たような問題が再発しているように感じるときがある
    前回よりも経験を積んでいる分、解像度は上がっている
    解像度が上がると問題の見え方や見える範囲も変わる
    経験から学習してうまくなっていく

    View Slide

  61. プロジェクト序盤 プロジェクト中盤 プロジェクト終盤

    View Slide

  62. プロジェクト終盤
    終盤だからという理由で頑張らない
    特別にやることはない
    終わらせるのではなく次につなげる

    View Slide

  63. 最後に頑張るのをやめる
    終盤戦になって一気にやることが増えてしまいがち
    開発チームはペースを変えずに冷静に判断をする
    プロジェクト内でやる必要があれば計画を変える
    プロジェクト内でやる必要がなければ先送りをする
    質を下げることだけは絶対にしてはいけない

    View Slide

  64. 次への準備に時間を割く
    プロダクトバックログを精査する
    障害リストを精査する
    ドキュメントや環境を整える
    勉強をする

    View Slide

  65. まとめ
    必要なことを必要なときに必要な分だけ実施する
    変わらないようにするのではなく、積極的に変えていく
    失敗しても受け身で魅せる
    終わらせるではなく、次につなげる

    View Slide

  66. わからないことをどうやって解消するか
    わからないこととどうやって付き合っていくか
    経験主義
    計画駆動

    View Slide

  67. こういうことを言うと…
    それはスクラムではない

    View Slide

  68. フィードバックありがとうございます
    実装するとはこういうこと
    いまの自分たちの頭で考えて一番よいと思うものを実装する
    他人にとってスクラムかどうかはあまり気にしていない
    これがベストだとは思っていないので、

    建設的なフィードバックはありがたく受け取る

    View Slide

  69. で、どうしたらいいの?

    View Slide

  70. A. 知らんわ!

    View Slide

  71. It depends の正体
    抽象
    具体
    スクラム
    事例A 事例B 事例C

    View Slide

  72. 抽象
    具体
    スクラム
    事例A 事例B 事例C 自分
    It depends の正体
    自分たちへ適応させて
    実装する

    View Slide

  73. 抽象
    具体
    スクラム
    事例A 事例B 事例C 自分
    It depends の正体
    他者の事例を抽象化して理解し、
    そこから自分たちへ適応させて
    実装する

    View Slide

  74. スクラムはフレームワーク
    よいフレームワークを使ったからといって、

    よいプロダクトにはなるとは限らない
    よいプロダクトと同じフレームワークの使い方をしたとして、

    よいプロダクトになるとは限らない
    フレームワークを使ってどう実装するのかは

    実装者の腕の見せどころ

    View Slide

  75. It depends の正体
    実装力が問われている
    システムを実装するときに、

    他人のコードをそのままコピペして動かそうとはしないはず
    実装に必要な情報を一番多く持っているのは自分自身
    It depends を脱却して先へ行くのは自分自身

    View Slide

  76. 自問自答してみよう
    行動せずに難しいかどうかを批評してしまっていないか
    答えクレクレ君、事例クレクレ君になっていないか

    View Slide

  77. 実装力
    Photo by Thao Le Hoang on Unsplash

    View Slide

  78. どうやって実装力を上げるか
    知識をインプットする
    人に聞きやすい部分
    書籍、論文、勉強会、研修
    経験を積み重ねる

    View Slide

  79. どうやって経験を積み重ねるか
    現場で実験をする
    思考実験をする

    View Slide

  80. 思考実験
    現場の制約に関係なく、実験し放題である
    一人ではなくて誰かとやるとよい
    相手や自分の具体的な事象について話す
    自分の頭で考えてフィードバックをもらう
    Open Space Technology やオンラインの場を使う

    View Slide

  81. 自分のことが話せるオンラインの場
    分散アジャイルチームについて考える会
    製造業アジャイル勉強会
    アジャイル・ディスカッション
    Scrum Masters Night!
    スクラム道関西

    View Slide

  82. 自分の頭で考える
    なるほど!
    勉強になりました
    刺激を受けました
    なぜそうしたんだろう
    自分だったらこうする

    View Slide

  83. 論理 感覚
    実装力

    View Slide

  84. スクラムは難しいのか
    スクラムが難しいかどうかを気にしたことがない
    なぜならプロダクト開発が難しいことを知っている
    わからないことだらけだって知っている
    わからないことをどうやって解消するかだけではなくて、

    わからないこととどうやって付き合っていくかを考える
    スクラムの習得も
    スクラムと同じ経験主義

    View Slide

  85. It depends から実装の世界へ
    Photo by Grant Ritchie on Unsplash

    View Slide