Slide 1

Slide 1 text

株式会社ナビタイムジャパン 小田中 育生 ビジネスとしての価値を生む アジャイル・スクラム 1

Slide 2

Slide 2 text

小田中 育生 (おだなか いくお) (株)ナビタイムジャパン VP of Engineering ACTS(研究開発) ルートグループ責任者 経路探索の研究開発部門責任者としてGPGPUを活用した超高速エンジン やMaaS時代にフィットしたマルチモーダル経路探索の開発を推進 移動体験のアップデートに携わりながら、VPoEとしてアジャイル開発の 導入推進、支援を行う。 著書「いちばんやさしいアジャイル開発の教本」インプレス 2

Slide 3

Slide 3 text

アジャイル開発とは 3

Slide 4

Slide 4 text

アジャイル開発概観 4

Slide 5

Slide 5 text

アジャイル開発概観 チームの共通理解に基づき 少しづつ 繰り返し的につくる 5

Slide 6

Slide 6 text

アジャイル開発の構造 マインドセット マインドセットを実現するための原則 現場での実践 スクラム、XP、FDD カンバン、モブプロなど アジャイル宣言の背後にある原則 アジャイルソフトウェア開発宣言 6

Slide 7

Slide 7 text

マインドセット マインドセットを実現するための原則 現場での実践 スクラム、XP、FDD カンバン、モブプロなど アジャイル宣言の背後にある原則 アジャイルソフトウェア開発宣言 7 アジャイル開発の構造

Slide 8

Slide 8 text

8

Slide 9

Slide 9 text

アジャイル開発の構造 マインドセット マインドセットを実現するための原則 現場での実践 スクラム、XP、FDD カンバン、モブプロなど アジャイル宣言の背後にある原則 アジャイルソフトウェア開発宣言 9

Slide 10

Slide 10 text

アジャイル宣言の背後にある原則(1/3) • 顧客満足を最優先し、価値のあるソフトウェアを早く継続的に提供します。 • 要求の変更はたとえ開発の後期であっても歓迎します。 変化を味方につけることによって、お客様の競争力を引き上げます。 • 動くソフトウェアを、2-3週間から2-3ヶ月というできるだけ短い時間間隔でリリ ースします。 • ビジネス側の人と開発者は、プロジェクトを通して日々一緒に働かなければなりま せん。 https://agilemanifesto.org/iso/ja/principles.html 10

Slide 11

Slide 11 text

アジャイル宣言の背後にある原則(2/3) • 技術的卓越性と優れた設計に対する不断の注意が機敏さを高めます。 • シンプルさ(ムダなく作れる量を最大限にすること)が本質です。 • 最良のアーキテクチャ・要求・設計は、自己組織的なチームから生み出されます。 • チームがもっと効率を高めることができるかを定期的に振り返り、 それに基づいて自分たちのやり方を最適に調整します。 https://agilemanifesto.org/iso/ja/principles.html 11

Slide 12

Slide 12 text

アジャイル宣言の背後にある原則(3/3) • 意欲に満ちた人々を集めてプロジェクトを構成します。 環境と支援を与え仕事が無事終わるまで彼らを信頼します。 • 情報を伝えるもっとも効率的で効果的な方法はフェイス・トゥ・フェイスで話をす ることです。 • 動くソフトウェアこそが進捗の最も重要な尺度です。 • アジャイル・プロセスは持続可能な開発を促進します。一定のペースを継続的に維 持できるようにしなければなりません。 https://agilemanifesto.org/iso/ja/principles.html 12

Slide 13

Slide 13 text

アジャイル開発の構造 マインドセット マインドセットを実現するための原則 現場での実践 スクラム、XP、FDD カンバン、モブプロなど アジャイル宣言の背後にある原則 アジャイルソフトウェア開発宣言 13

Slide 14

Slide 14 text

実践手法 http://www.extremeprogramming.org/ XP(Extreme Programming) スクラム プロダクトゴール スプリントプランニング スプリントレビュー スプリントレトロスペク ティブ デイリースクラム プロダクト オーナー メンバー スクラム マスター 14

Slide 15

Slide 15 text

実は、実践方法が先行して存在 彼らがそれぞれで提唱していた開発手法から エッセンスを統合することについて議論。 最終的にまとめられた重要なマインドセットが 「アジャイルソフトウェア開発宣言」 15

Slide 16

Slide 16 text

スクラムとは 16

Slide 17

Slide 17 text

実践手法 http://www.extremeprogramming.org/ XP(Extreme Programming) スクラム プロダクトゴール スプリントプランニング スプリントレビュー スプリントレトロスペク ティブ デイリースクラム プロダクト オーナー メンバー スクラム マスター 17

Slide 18

Slide 18 text

スクラム概観 • アジャイル開発のフレームワーク。国内外問わず広く普及している ● 誕生はアジャイル開発より以前に遡る • アジャイルソフトウェア開発宣言および原則は抽象度が高いが、スク ラムについてはスクラムガイドで「これがスクラムだ」というものが 明確に定義されている ● https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide- Japanese.pdf 18

Slide 19

Slide 19 text

スクラムの三本柱 透明性 検査 適応 19

Slide 20

Slide 20 text

スクラムの価値基準 • 確約(Commitment) • 集中(Focus) • 公開(Openness) • 尊敬(Respect) • 勇気(Courage) 20

Slide 21

Slide 21 text

考え方、行動、役割が明記されており 取り組みやすい スクラム プロダクトゴール スプリントプランニング スプリントレビュー スプリントレトロスペク ティブ デイリースクラム プロダクト オーナー メンバー スクラム マスター 21

Slide 22

Slide 22 text

今、アジリティが 求められる理由 22

Slide 23

Slide 23 text

「作る物」の不確実性 23

Slide 24

Slide 24 text

「必要なもの」は顧客さえも把握していない 24

Slide 25

Slide 25 text

結果、使われない機能が多数 図: 米スタンディッシュグループによる調査結果 25

Slide 26

Slide 26 text

今は「作って終わり」の時代ではない 26

Slide 27

Slide 27 text

なので、作って、触って、良くしていく 27

Slide 28

Slide 28 text

「作り方」の不確実性 28

Slide 29

Slide 29 text

従来、不確実性は後工程で吸収されていた 29

Slide 30

Slide 30 text

実装やテストには、不確実性は存在しない? 30

Slide 31

Slide 31 text

「テスト漏れ」 「結合したら動かない」 「実装ミス」 31

Slide 32

Slide 32 text

「この設計、微妙じゃない?」 「ペロッ…これは仕様バグ!」 32

Slide 33

Slide 33 text

後工程圧縮による悪循環 急いで実装 開発者 テストを スキップ システムテスト or 顧客側で 不具合発覚 不具合調査 原因特定 33

Slide 34

Slide 34 text

悪循環は何をもたらすか • 往々にしてデッドラインはずらせないので、残業での カバー、悪い品質のままリリースにつながる • コード品質が低くテストも整備されていないため今後 の機能拡張に大きなコストが必要となってしまう 長期的にみて不経済 34

Slide 35

Slide 35 text

アジャイルでは、高い頻度で軌道修正される 35

Slide 36

Slide 36 text

早い段階で遅延リスクを見える化できる タスクA タスクB タスクC ざっくりしたタスク (ユーザーストーリー) 開発を進めていく中で 当初想定した「期間」より 延びることがわかった 36

Slide 37

Slide 37 text

早めのリスク検知で将来のリスクを回避 • プロセス改善により遅れを取り戻す • 不足しているスキル・リソースが明らかになるため 人員調整がしやすい • 決して「リスクを消滅させる」わけではない 37

Slide 38

Slide 38 text

ビジネスとアジリティ 38

Slide 39

Slide 39 text

VUCA • Volatility 変動性 • Uncertainty 不確実性 • Complexity 複雑性 • Ambiguity 曖昧性 39

Slide 40

Slide 40 text

ナビタイムジャパンの場合 • MaaSの隆盛 • 物流危機 • DX • コロナによる移動変化 • GoToトラベル 日々状況が変わっている 40

Slide 41

Slide 41 text

想像してみよう `20 `21 `22 `19 東京オリパラ (当初予定) 東京オリパラ (実際の開催) オリパラ向け 企画 計画を重視し、「当初の予定通り」 企画をリリースするべきか? 41

Slide 42

Slide 42 text

少しづつ作ることで変化に対応しやすくなる 42

Slide 43

Slide 43 text

「そうはいっても、 作り込まないと見向きされな いんじゃない?」 43

Slide 44

Slide 44 text

それはそう。そもそも求められる品質は 上がり続けている。 湯前 慶大 「ゲーム事業を持続成長させる組織をつくる」より引用 44

Slide 45

Slide 45 text

●しかし、「作り込んだもの」が「顧客が本当 に欲しかったもの」だという保証はない 作り込んだもの 欲しかったもの 45

Slide 46

Slide 46 text

「顧客が本当に欲しかったもの」自体が変わる カレー 食べたい カレー 作ったよ やっぱ 牛丼 牛丼 作ったよ ビールで いいや えっ 46

Slide 47

Slide 47 text

なので 「ある程度の高い品質」 そして 「変化に適応していくこと」 が求められています 47

Slide 48

Slide 48 text

パレートの法則 仕事の成果の8割は、費やした時間全体の うちの2割の時間で生み出している 48

Slide 49

Slide 49 text

優先順位をつけ、重要な2割にフォーカス できる 49

Slide 50

Slide 50 text

アジャイルがなぜビジネスに効くのか • 少しづつ繰り返し的に作ることで市場の フィードバックを得ながら作れる • つねに優先順位を見直しながら開発する ため「つくりすぎ」を防げる ● 結果、スピードが出る 50

Slide 51

Slide 51 text

でもさあ 優先順位つけるのも 短いスパンでリリース可能な ものをつくるのも 難しいんじゃない? 51

Slide 52

Slide 52 text

難しい です! 52

Slide 53

Slide 53 text

●新しいことは、失敗する確率が高い • 学習には5段階のレベルがある • 初めて挑戦するときは意識的無能 ● うまくいかなくて当たり前 ※NLP(神経言語プログラミング)より 無意識的無能 知らないしできない 意識的無能 知っていてもできない 意識的有能 考えるとできる 無意識的有能 考えなくてもできる 意識的&無意識的有能 教えることができる

Slide 54

Slide 54 text

だからこそフレームワークが効いてきます http://www.extremeprogramming.org/ XP(Extreme Programming) スクラム プロダクトゴール スプリントプランニング スプリントレビュー スプリントレトロスペク ティブ デイリースクラム プロダクト オーナー メンバー スクラム マスター 54

Slide 55

Slide 55 text

技術的に卓越する方法が必要です http://www.extremeprogramming.org/ XP(Extreme Programming) スクラム プロダクトゴール スプリントプランニング スプリントレビュー スプリントレトロスペク ティブ デイリースクラム プロダクト オーナー メンバー スクラム マスター 55

Slide 56

Slide 56 text

学習と成長も、少しづつ繰り返しながら。 56

Slide 57

Slide 57 text

アジャイル開発・スクラムを制するものは ビジネスを制す 57

Slide 58

Slide 58 text

Thank you! 58