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
260
20190404_モブプログラミング.pdf
Mariko
April 04, 2019
Tweet
Share
Other Decks in Programming
See All in Programming
CSC509 Lecture 09
javiergs
PRO
0
140
Quine, Polyglot, 良いコード
qnighy
4
640
Nurturing OpenJDK distribution: Eclipse Temurin Success History and plan
ivargrimstad
0
870
Enabling DevOps and Team Topologies Through Architecture: Architecting for Fast Flow
cer
PRO
0
310
NSOutlineView何もわからん:( 前編 / I Don't Understand About NSOutlineView :( Pt. 1
usagimaru
0
330
ふかぼれ!CSSセレクターモジュール / Fukabore! CSS Selectors Module
petamoriken
0
150
Duckdb-Wasmでローカルダッシュボードを作ってみた
nkforwork
0
120
エンジニアとして関わる要件と仕様(公開用)
murabayashi
0
280
型付き API リクエストを実現するいくつかの手法とその選択 / Typed API Request
euxn23
8
2.2k
subpath importsで始めるモック生活
10tera
0
300
PHP でアセンブリ言語のように書く技術
memory1994
PRO
1
170
Content Security Policy入門 セキュリティ設定と 違反レポートのはじめ方 / Introduction to Content Security Policy Getting Started with Security Configuration and Violation Reporting
uskey512
1
520
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
Testing 201, or: Great Expectations
jmmastey
38
7.1k
Side Projects
sachag
452
42k
Typedesign – Prime Four
hannesfritz
40
2.4k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
Thoughts on Productivity
jonyablonski
67
4.3k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
93
16k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Code Reviewing Like a Champion
maltzj
520
39k
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?