Slide 1

Slide 1 text

Agile Japan 2018 基調講演まとめ Event / プロダクトオーナーシップ & Agile Japan 2018 参加報告 Date / 2018-07-21 (Sat) Presenter / Naoto Teshima (tosite / まおちゃ)

Slide 2

Slide 2 text

わたし

Slide 3

Slide 3 text

わたし

Slide 4

Slide 4 text

今日は長崎から 来ました! (1年ぶり2度目)

Slide 5

Slide 5 text

地方金融機関の 社内SEです PHPでサービスを構築しています わたし

Slide 6

Slide 6 text

Contact me about me Facebook @mao_sum JaSST九州の実行委員もやってます!

Slide 7

Slide 7 text

わたし 個人サービス「ニコカレ!」構築中です リリースしたら使ってください!

Slide 8

Slide 8 text

開発中の画面 画面は開発中のものです

Slide 9

Slide 9 text

画面は開発中のものです 開発中の画面

Slide 10

Slide 10 text

わたし 2017/07 NaITE実行委員に参加。 2017/09 XP祭り 2017にて初LT。 2018/02 長崎QDGにてLT。 2018/03 JaSST九州実行委員に参加。 2018/06 PHPカンファレンス福岡2018にてLT。 2018/07 Agile Japan 2018に参加。

Slide 11

Slide 11 text

わたし 今日はAgile Japan 2018の 参加報告をさせていただきます!

Slide 12

Slide 12 text

告知

Slide 13

Slide 13 text

告知 Agile Japan 2018 長崎サテライト with NaITE ● 開催日:2018-09-15(Sat) ● 開催地:長崎 JaSSTソフトウェアテストシンポジウム JaSST'18 Kyushu 皆様のご参加、心よりお待ちしております!

Slide 14

Slide 14 text

改めて 今日の話

Slide 15

Slide 15 text

基調講演 モブプログラミングと "フロー"の力

Slide 16

Slide 16 text

スピーカー: Woody Zuill氏

Slide 17

Slide 17 text

Woody Zuill氏について ● モブプログラミング生みの親 ● プログラマー/アジャイルコーチ Hunter Industries※ に 参加した時の話 ※スプリンクラー・気象センサーなどの開発を手がけるアメリカの企業

Slide 18

Slide 18 text

今日話すこと ・モブプログラミング ・フロー ・終わりに

Slide 19

Slide 19 text

モブプログラミング

Slide 20

Slide 20 text

そもそも… モブプログラミング とは?

Slide 21

Slide 21 text

モブプログラミング ● 同じPCを使って ● 同じ場所で同じ時間を共有して ● チームメンバー全員で 行うプログラミングのこと。

Slide 22

Slide 22 text

モブプログラミング ルール: ● 1人のドライバーがコーディング ● 残りは全員ナビゲーター ● 時間を決めて役割を交代

Slide 23

Slide 23 text

モブプログラミング あくまでも考えるのはナビゲーターたちの仕事。 ドライバーはチームのインプットをキーボードで 打ち込むだけでいい。

Slide 24

Slide 24 text

実際の映像 動画はこちら

Slide 25

Slide 25 text

多分あなたはこう思うはずです え、みんなで一つのことを? それって生産性上がるの?

Slide 26

Slide 26 text

モブプログラミング Woody氏: やあ(´・ω・`)

Slide 27

Slide 27 text

モブプログラミング Woody氏: 「モブプロは生産性上がるの?」だって?(´・ω・`)

Slide 28

Slide 28 text

モブプログラミング Woody氏: ごめん、分からないや(´・ω・`)

Slide 29

Slide 29 text

モブプログラミング Woody氏: でも、モブプログラミングを取り入れたら仕事がうまく 回るって分かったよ(´・ω・`)

Slide 30

Slide 30 text

モブプログラミング Woody氏: というか多分、そもそもの質問が良くないんだ思うな (´・ω・`)

Slide 31

Slide 31 text

モブプログラミング Woody氏: 「好きな食べ物は?」って質問だと一つの答えしか 返ってこないけど、「どうして好きなの?」って質問だ と色んな答えが返ってくるじゃない?(´・ω・`)

Slide 32

Slide 32 text

モブプログラミング Woody氏: 本質をついていない質問からは、正しくない答えしか 返ってこないよね。(´・ω・`)

Slide 33

Slide 33 text

モブプログラミング 効果的な仕事をする上で、次の視点で考えることが 多いと思います。 ● 効率(Efficiency) ● 生産性(Productivity) ● 効果(Effectiveness)

Slide 34

Slide 34 text

モブプログラミング これらの要素は一つ一つが独立していると思い込み がちですが、それぞれは相互的に作用しているので す。 その一つだけにフォーカスしても、効果的な答えは 見つかりません。

Slide 35

Slide 35 text

モブプログラミング Woody氏: そこでさっきの質問を変えてみようと思うんだ。 (´・ω・`)

Slide 36

Slide 36 text

モブプログラミング Woody氏: 『モブプロで生産性は上がるのか?』って質問じゃな くて、『モブプロは効果的なのか?』、『一緒にするべ き仕事をバラバラにやるとして、効果を下げる要因 は何?』って考えてみるといいかも(´・ω・`)

Slide 37

Slide 37 text

ということで

Slide 38

Slide 38 text

突然のワークショップ 「あなたにとって効率が 下がってしまう要因は 何ですか?」 周りの人と:2分

Slide 39

Slide 39 text

モブプログラミング たくさん見つかったと思います! ちなみにWoody氏が行ったワークショップでは 実に50個以上の要因が見つかったそうです。

Slide 40

Slide 40 text

モブプログラミング Woody氏: でもモブプロ始めるとこの問題は全部解決するんだ よね(´・ω・`)

Slide 41

Slide 41 text

モブプログラミング Woody氏: なぜなら、モブプロは「どうすれば効果的に仕事が行 えるか」にフォーカスしてるからね(´・ω・`)

Slide 42

Slide 42 text

モブプログラミング 「個人の効率」というよりは「チームの効率」に主眼を 置いているわけですね。

Slide 43

Slide 43 text

フロー

Slide 44

Slide 44 text

皆さん、こんな経験は ありませんか?

Slide 45

Slide 45 text

フロー 作業 回答待ち 作業 回答待ち 作業 質問 質問

Slide 46

Slide 46 text

フロー 誰かの回答がないと進められない作業があると、手 が止まりませんか?

Slide 47

Slide 47 text

そして、こうして いませんか?

Slide 48

Slide 48 text

フロー 作業1 回答1待ち 作業1 回答1待ち 作業1 質問1 質問1 作業2 作業2 質問2 質問2 回答2待ち 回答2待ち

Slide 49

Slide 49 text

フロー 待ち時間に別の仕事を入れることで、マルチタスク 化して常に仕事を流します。 待ち時間がなくなったので効果的に仕事ができるよ うなりました。

Slide 50

Slide 50 text

フロー Woody氏: でもさー、それって根本的な解決になってないと思う んだよね(´・ω・`)

Slide 51

Slide 51 text

フロー Woody氏: だって質問の在庫はどんどんスタックされ続けるわ けだし…(´・ω・`)

Slide 52

Slide 52 text

フロー 真の問題は「作業の手が止まる」ことではなく、「質問 がすぐに返ってこない」ことにあるのです。

Slide 53

Slide 53 text

フロー Woody氏: マルチタスク排除して一個流しにできれば理想的だ よね?モブプロだとそれが可能なんだよ(´・ω・`)

Slide 54

Slide 54 text

フロー その「フロー」を考えてみたいと思います。

Slide 55

Slide 55 text

閑話休題

Slide 56

Slide 56 text

突然のワークショップ 「チーム」と「グループ」の違いはな んだと思いますか? 周りの人と:2分

Slide 57

Slide 57 text

フロー グループは「人が集まってるだけ」の状態。 チームは「共通の理想に向けて役割分担しながら協 力している」状態。

Slide 58

Slide 58 text

フロー チーム作りはジグソーパズルに似ているのかなと思 います。 1. ざっくりと仮置きして 2. 凸凹を合わせていく 1.の段階で止まっているチーム、見たことありませんか?

Slide 59

Slide 59 text

フロー 個人的に感銘を受けた言葉: 誰かの凹は他の誰かの凸を活かすためにある。

Slide 60

Slide 60 text

閑話休題

Slide 61

Slide 61 text

「心理的フロー」 と 「リーンフロー」

Slide 62

Slide 62 text

心理的フローとは

Slide 63

Slide 63 text

フロー 「ゾーン」に入ってる状態のことです。 時間を忘れて没頭した経験はありませんか? 個人ではたまに感じることがあると思います。

Slide 64

Slide 64 text

フロー でもそれってチームで体験できる? チームになった瞬間、壊れない?

Slide 65

Slide 65 text

フロー Woody氏: 身近な例で考えてみようか。例えばバンドや病院と かね。彼らはチームとして目的を持って動いてる。で も個人としての目的も持ってるでしょ?(´・ω・`)

Slide 66

Slide 66 text

フロー 個人のフローとチームのフローは対立するものでは なく、&でつなぐことができるのです!

Slide 67

Slide 67 text

フロー モブプロも例外ではなく、心理的フローを経験するこ とができます。

Slide 68

Slide 68 text

リーンフローとは

Slide 69

Slide 69 text

フロー 製造業などで使われるフローのことです。 なるべく在庫を抱えないようにして、待ち時間を減ら すことに注力しています。

Slide 70

Slide 70 text

フロー スタックがなく、割り込みもされない、マルチタスクが ない状態を継続的に維持できることが理想です。

Slide 71

Slide 71 text

フロー これは当然ソフトウェア開発でも同じです。

Slide 72

Slide 72 text

フロー 余談ですが、モブプロを取り入れることで、「振り返り ・レビュー・設計・認識合わせ・タスク管理」を常に 行っている状態になる※ため、その分コーディングに 集中できるとのことです。 ※「モブプログラミングという働き方」より

Slide 73

Slide 73 text

フローがフォーカスするもの

Slide 74

Slide 74 text

フロー 一人ひとりのアウトプットに対してではなく、チーム全 体の仕事に対してフォーカスしています。

Slide 75

Slide 75 text

フロー Woody氏: 当然、個人で見たらムラが出てしまうね。常に100% のパフォーマンスなんて出ないからね。(´・ω・`)

Slide 76

Slide 76 text

フロー Woody氏: でもメンバー全員でやれば常にベストなパフォーマン スで仕事できるんだよ。(´・ω・`)

Slide 77

Slide 77 text

フロー ● 心理的フロー ○ 個人フロー ○ チームフロー ● リーンフロー のインクリメント。フロー同士は対立せず、Flow++ の関係にあります。

Slide 78

Slide 78 text

フロー Woody氏: 別に常にモブプロに加わってなくてもいいんだよ。い つでも参加していいし、抜けたくなったら抜けてい いってルールにしてるよ。(´・ω・`)

Slide 79

Slide 79 text

終わりに

Slide 80

Slide 80 text

Woody氏が感銘を 受けた言葉

Slide 81

Slide 81 text

終わりに Woody氏は若かりし頃、尊敬している芸術家の方が いました。 彼に「素晴らしい芸術作品を作っているところをぜひ 見せてほしい!」とお願いしたところ、次の言葉をも らったそうです。

Slide 82

Slide 82 text

終わりに The object isn’t to make art,it’s to be in that wonderful state which makes art inevitable.

Slide 83

Slide 83 text

終わりに 訳: 芸術を作ることが重要ではなく、芸術を作り出せる素 晴らしい状態にあることが重要です。

Slide 84

Slide 84 text

終わりに モブプロも全く同じで、環境と準備さえしっかりとして いれば、そこから自然とプロダクトが生まれていくの だと思います。

Slide 85

Slide 85 text

アジャイルという 「生き方」を実践して いきたいなと

Slide 86

Slide 86 text

Q&A

Slide 87

Slide 87 text

Q.プログラミング以外でモブをして いる例はありますか? また、実際にモブプロしてますか?

Slide 88

Slide 88 text

Q&A 基調講演の中では明示されませんでしたが、「バン ド」や「病院」はそうだと思います。 ペアプロまでしかしたことないけど、近いうちにやって みたいと思います。

Slide 89

Slide 89 text

Q.実際のペアプロを取り入れた場 合の時間配分(個人・チーム)は?

Slide 90

Slide 90 text

Q&A 実際の楽天さんの例をご覧いただければと思いま す。

Slide 91

Slide 91 text

Q.人数はどれくらいが適正なんで すか?

Slide 92

Slide 92 text

Q&A Hunter Industries社ではこんな感じでやってるという ことです。 自分がチームに必要とされていると感じれば参加す るし、不要だと思えば抜けているみたいです。 「プラクティス」でなく「働き方」。