Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
20190404_モブプログラミング.pdf
Search
Mariko
April 04, 2019
Programming
0
210
20190404_モブプログラミング.pdf
Mariko
April 04, 2019
Tweet
Share
Other Decks in Programming
See All in Programming
Code Reviews
bkuhlmann
4
890
GitHub Actionsで泣かないためにやっておきたい設定 / Recommended GHA settings to avoid crying
pinkumohikan
3
540
Kotlin Multiplatform at Stable and Beyond (Android Makers 2024)
zsmb
0
290
SwiftUIで使いやすいToastの作り方 / How to build a Toast system which is easy to use in SwiftUI
lovee
3
150
Rethinking UI building strategies @ SFI 2024
letelete
0
270
コーンフレークから始める モデリング会話入門
ogurotakayuki
0
370
[技育CAMPアカデミア]アイディアを形に!【超入門】スマホアプリ開発〜リリースまでの流れをご紹介
teamlab
PRO
0
380
PHP8.3の機能を振り返る / Review of PHP 8.3 features
seike460
PRO
1
110
Compose-View Interop in Practice (mDevCamp 2024)
stewemetal
0
140
StoreKit2によるiOSのアプリ内課金のリニューアル
kangnux
0
110
使ってみよう Azure AI Document Intelligence
kosmosebi
2
320
Let's learn code review
riofujimon
2
430
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
8
2.4k
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
Reflections from 52 weeks, 52 projects
jeffersonlam
345
19k
The Pragmatic Product Professional
lauravandoore
25
5.8k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
How GitHub (no longer) Works
holman
304
140k
Optimizing for Happiness
mojombo
370
69k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.6k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
227
16k
Building Applications with DynamoDB
mza
88
5.6k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
6
1.5k
Transcript
モブプログラミング
モブとは
モブプログラミングとは? ﹡ モブ = 群集 ﹡ 「3人以上」の人々が1台のコンピューターの 前に座って協力しながら問題を解決してい くこと
﹡ リソース効率とフロー効率
リソース効率とフロー効率 リソース効率が良い 稼働率100%、リソースに遊びがない フロー効率が良い 機能リリースまでのリードタイムが短い 渋滞する道路のイメージ
モブプロの利点 ﹡ モブプロはフロー効率を重視 ﹡ フロー重視「機能を安く作るのではなく、早く 完成させること」を目標とする ﹡ キーパーソンへの依存度が下がる
﹡ 仕事の品質が上がる=集団の方がいい判 断を下せる
モブプロの効果を測定・・? ﹡ チームの短期的な「ベロシティ」には現れな い(むしろ短期的には下がる) ﹡ チームがチームとして固まってくるまである 程度の時間が必要 ﹡
モブプロが解決する問題は複雑 ◦ エラー率の減少 ◦ 経験の浅いメンバーの学習度上昇
成長記録の管理 モビングによって得られた成功を文書化して記 録しておく(特に導入当初は効果的) ﹡ 成功を実感した日のできごと ﹡ 知識共有の機会が生まれた時
﹡ 品質上の問題が見つかったこと 参加者全員で記録をメンテナンスすると良い
モブプログラミングのはじめ方
最初のモビング ﹡ モビングは「実験」 ◦ 導入は一時的 ◦ 形態はモビングセッション を数回行う ◦ 5回以上を目指す
﹡ オプトイン ◦ 参加を強制しない ﹡ 参加者を決める ﹡ 場所を見つける ﹡ 解きたい問題を見つける ﹡ マシンの準備 ﹡ タイマーの準備
ちょっとした秩序 効果を生むために
参加者 ﹡ 初期は 3〜4人 が良い ﹡ コードを書ける人だけ ﹡
全員にキーボードの前に座る機会を作る ﹡ 役割 ◦ タイピスト(1人) ◦ モブ
タイピスト その他のモブがしてくれと言ったことを取り入れて 実装するスマートアシスタント 1. モブがしてくれと頼んだことを「理解する」 2. 要請の意味がはっきりしないときには「質問をする」 3.
してくれと頼まれたことをコードの形に「実装する」 4. その他のモブを「信頼する」 5. 新しいことを「学ぶ」(他の人のツールの活用法など)
モブ 問題解決チームの一員になる 1. 問題解決につながる次の論理的 ステップを見つけるために力にな る 2. 理解できるまで質問をする
3. モブ全体の理解の水準を上げる ために貢献する 4. 眼の前の問題に集中する 5. ほかのメンバーの意見を聞く 6. 必要な情報を予測する 7. システムのなかの改善すべき部 分を探す
場所 ﹡ 全員が窮屈にならず、快適な場所 ﹡ 同時にコードを見れるようなところ ﹡ 必要な備品 ◦
大画面 ◦ ホワイトボード
解きたい問題を選ぶ ﹡ 納期が迫っていないもの ﹡ 全員が同じ立場で向き合える問題 ﹡ カタ(おすすめ) ◦
モブ全員が良いと思うもの ◦ 解決にセッション1つ分必要になるものが 適切
モビングセッション ﹡ 2時間程度 ﹡ 準備(30分程度) ﹡ 本体(1時間30分程度) ◦
各インターバル(10分) ﹡ しめくくり(20分程度)
準備 30分
準備0 モブプロについて説明 ﹡ 役割や心構えなど ﹡ このスライドで説明している内容
準備1 1セッションで解ける適切な問題を選ぶ
準備2 問題の概要を説明 ﹡ 取り組むためのおおよそのプランを一致させる ﹡ ホワイトボードでブレスト ﹡
15分程度で終わらせる ﹡ ホワイトボードにおおよその手順を書き出す
準備3 タイピストの順番を決める ﹡ ホワイトボードに順番を書き出す
セッション本体 1時間30分
本体 ﹡ インターバル 10分 ﹡ タイマーが切れたら ◦ 次のタイピストへ ◦
Gitにマイクロコミット(コミットメッセージを 書かないコミット) ﹡ モブの中でのその時の自分の役割を意識 ﹡ セッション冒頭でホワイトボードに書いた手 順に絶えず立ち返る
ふりかえり 20分
ふりかえり手法:シンキングハット ステップ 帽子 時間 1 仕組みと説明 ー 4分 2
事実と数字 白 2分 3 肯定的感想 黄色 3分 4 批判的感想 黒 3分 5 建設的な問題解決法 緑 5分 6 軌道修正すべきことの決定、合意形成 ー 5分
黄色 肯定的感想 - 一番うまくいった ことは何か? - 予想外に簡単 だったのは何 か?
- セッションでいい と思ったことは何 か? 黒 批判的感想 - うまくいかなかっ たのは何か - どこに不満を感じ たか 正当な感想かどうかに ついて意見の一致は不 要 緑 建設的な問題解 決法 この段階では、アイデ アを提案するだけであ り、どんな提案も却下 されない 白 事実と数字 例 : - タイピストを10分 ごとに交代させた - エディタのフォント サイズは16ptだっ た 評価になっていないか 注意 全員が同時に同じ帽子をかぶる
軌道修正すべきこと・合意形成 ﹡ 3分のタイマーをかける ﹡ 次のセッションで変えることを「ひとつ」決める ﹡ 全員の賛同を得る
﹡ Try ﹡ 全員の賛同を得られない場合何も変えない
初めてのモブプロはこんな感じ
2019/2/23 発売 おすすめ!
Shall we?