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
リーダー&マネージャーのためのモブプログラミング / Mobprogramming for m...
Search
TAKAKING22
February 22, 2023
Technology
7
2.7k
リーダー&マネージャーのためのモブプログラミング / Mobprogramming for managers and leaders
プロフィールやお問い合わせはこちらからどうぞ!
https://agile-monster.com/profile/
https://agile-monster.com/contact/
TAKAKING22
February 22, 2023
Tweet
Share
More Decks by TAKAKING22
See All by TAKAKING22
受託開発でもアジャイル開発できました / Agile in Contract Development
takaking22
18
7.3k
AI時代のアジャイル開発(XP祭り2024版) / Agile Development in the AI Era in XPJUG
takaking22
13
4.1k
我々はなぜテストを書くのか / Why we write test codes
takaking22
7
990
AI時代のアジャイル開発 / Agile Development in the AI Era
takaking22
2
800
スクラムガイドに載っていないスクラムのはじめかた - チームでスクラムをはじめるときに知っておきたい5個のコツ - / How to start Scrum that is not written in the Scrum Guide
takaking22
21
7.4k
よいチームをよい雰囲気を保ったままよい組織にスケールさせていくためにできること / What you can do to scale a good team into a good organization
takaking22
12
5.7k
Open Space Technology Introducion (EN)
takaking22
2
160
オープンプロポーザルの文化をよいものにしたい / improve the culture of open proposals
takaking22
1
1k
いきいきした受託開発をするためにアジャイルチームができること / What Agile Teams Can Do for Lively Contract Development
takaking22
2
2.8k
Other Decks in Technology
See All in Technology
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
300k
OCI Vault 概要
oracle4engineer
PRO
0
9.8k
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
550
日経電子版のStoreKit2フルリニューアル
shimastripe
1
150
DynamoDB でスロットリングが発生したとき_大盛りver/when_throttling_occurs_in_dynamodb_long
emiki
1
460
10XにおけるData Contractの導入について: Data Contract事例共有会
10xinc
7
710
アジャイルでの品質の進化 Agile in Motion vol.1/20241118 Hiroyuki Sato
shift_evolve
0
190
Mastering Quickfix
daisuzu
1
300
Making your applications cross-environment - OSCG 2024 NA
salaboy
0
200
iOSチームとAndroidチームでブランチ運用が違ったので整理してます
sansantech
PRO
0
160
適材適所の技術選定 〜GraphQL・REST API・tRPC〜 / Optimal Technology Selection
kakehashi
1
720
Taming you application's environments
salaboy
0
200
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
136
6.6k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
How to Ace a Technical Interview
jacobian
276
23k
GraphQLとの向き合い方2022年版
quramy
43
13k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
Statistics for Hackers
jakevdp
796
220k
The Cult of Friendly URLs
andyhume
78
6k
A better future with KSS
kneath
238
17k
The Pragmatic Product Professional
lauravandoore
31
6.3k
Transcript
及部敬雄 (@TAKAKING22) リーダー&マネージャーのためのチームの生産性をあげるモブプログラミング入門 リーダー&マネージャーのための モブプログラミング
モブプログラミングを学ぶことについて 成人教育の要素が色濃い 自分たちの学習について計画と評価に直接関わる(自己概念と学習への動機づけ) 失敗も含めた経験が学習活動の基盤になる(経験学習) 仕事や暮らしに関わるテーマについて学ぶことに関心を示す(学習へのレディネス) 学習内容中心型ではなく問題中心型である(学習への方向づけ) 体験することでわかることが多いし、 実際に現場導入を考えることで理解が深まりやすい
モブプロをやってみることは簡単だが、 そこで起きていることを受け止めるのが難しい
モブプログラミングの受け身のとり方
今日のお話 モブプログラミングの構造を理解する モブプログラミングを現場に導入する モブプログラミングの受け身のとり方
今日のお話 モブプログラミングの構造を理解する モブプログラミングを現場に導入する モブプログラミングの受け身のとり方
Photo by rawpixel on Unsplash Photo by Marvin Meyer on
Unsplash VS 分担作業 モブプログラミング
分担作業 ex. レビュー、承認、引き継ぎ.. ex. タスク分割、設計、キックオフ.. 分担作業の前後に 同期する作業が必要になる
ミスコミュニケーションによって 手戻りする可能性もある 分担作業
モブプログラミング ex. 設計、レビュー、ノウハウ共有 同期していないではなくて 常に同期している
リソース効率とフロー効率 リソース効率 フロー効率 ಓ࿏ΛंͰຒΊΔ͜ͱ Λॏࢹ͢Δ ंͷྲྀΕΛॏࢹ͢Δ
モブプログラミングとフロー効率 分担作業はリソース効率を重視しているのに対し、 モブプログラミングはフロー効率を重視している モブプログラミングは究極の1個流し チームとして完成した状態を1つずつ確実に積み重ねていく
モブプログラミングと生産性 生産性の議論は基本的に無意味なのでできるだけ避ける アウトプットとアウトカムのどちらの議論なのか アウトプット=生産されるもの自体 アウトカム=アウトプットによって生まれた価値 アウトプットが多いのは分散作業 アウトカムの多さは仕事の質やチームの状況などに依るので どちらが多くなるかは簡単には判断できない
モブプログラミングと教育 知識のジャストインタイム わからないタイミングで必要な知識を注ぐことができる 参加者全員に同時に知識伝達することができる 共通体験を積み重ねることで、 形式知だけでなく暗黙知も共有できる
SECIモデル 共同化 表出化 内面化 結合化 暗黙知 形式知 形式知 暗黙知
SECIモデル 共同化 表出化 内面化 結合化 暗黙知 形式知 形式知 暗黙知 モブプログラミング
モブプログラミングとSECIモデル プロダクト開発における暗黙知になりやすい部分 ドキュメントの読まれ方や使われ方 ドキュメント(形式知)に至るまでの議論の内容 ツールやショートカットの使い方 コードの組み立て方 問題の発見のしかたと問題解決のプロセス 大変だったところはどこなのか プロダクト開発における暗黙知の価値
分担作業とモブプログラミング 分担作業 モブプログラミング イメージ 特徴 リソース効率重視 フロー効率重視 生産性 チーム全体で見たときに 生産される量が多い
チームとして完成したものだけ が確実に生産されていく 問題解決 個人の経験知に依存する チーム全員の経験知に依存する 学習 個人に貯まる チームに貯まる 向いている仕事の質 単純作業 他者への依存度が低い仕事 問題解決をする仕事 得られた学習が重要な仕事
今日のお話 モブプログラミングの構造を理解する モブプログラミングを現場に導入する モブプログラミングの受け身のとり方
Q. モブプロをやるべきでしょうか?
やるかやらないかのような二元論で考えない Photo by Tingey Injury Law Firm on Unsplash
分担作業とモブプログラミング 分担作業 モブプログラミング イメージ 特徴 リソース効率重視 フロー効率重視 生産性 チーム全体で見たときに 生産される量が多い
チームとして完成したものだけ が確実に生産されていく 問題解決 個人の経験知に依存する チーム全員の経験知に依存する 学習 個人に貯まる チームに貯まる 向いている仕事の質 単純作業 他者への依存度が低い仕事 問題解決をする仕事 得られた学習が重要な仕事
モブプログラミングの中身 チームをブーストするモブプロ 仕事をドライブするモブプロ 教育、オンボーディング、 スキルトランスファー… スウォーミング、問題解決、 フロー効率、1個流し…
チームの成熟度とモブプログラミング
タックマンモデルとモブプログラミング
Photo by rawpixel on Unsplash Photo by Marvin Meyer on
Unsplash 分担作業 モブプログラミング 仕事の質やチームの状況に合わせて 選択できるチームは強い
Photo by Bogdan Kozlovskyi on Unsplash
Photo by Bogdan Kozlovskyi on Unsplash 目の前の仕事 未来のチームや組織
リーダー&マネージャー視点でのモブプロ 仕事の質とチームの状況というインプット 目の前の仕事と未来のチームや組織のあり方の2つの視点 いまどうするとよさそうか
組み合わせの例 初期 チームの型ができてきたら モブプロ中心に進めて 知識移転をしながら チームの文化を醸成する ソロ、ペアを組み合わせて スピードを上げる 定期的なモブプロによって 属人化を防ぎ
チームの文化を育てていく
ワークショップ形式とゲリラ形式 ワークショップ形式 モブプログラミングするタイミングを予め決めておく 仕事をするリズムをつかみやすい 一部のメンバーが受け身であっても進められる ゲリラ形式 必要なタイミングでモブプログラミングを実施する 分単位で状況に合わせて最適な方法を選択できる チーム全員が能動的でないとうまく機能しない
例:いつでも声かけられるようにしておく コミュニケーションツールに常につないでおく 全員がそれぞれ画面共有し、ミュート状態で分担作業をすすめる こまったときや誰かと仕事をしたくなったときに声をかけて モブプログラミングをはじめる
例:常にモブプログラミング モブ=チーム 基本モブプロで仕事を進めて、 仕事の質や状況に応じて分担作業に切り替える
仕事の進め方を自分たちで選択できるチームへ Image by David Mark from Pixabay
今日のお話 モブプログラミングの構造を理解する モブプログラミングを現場に導入する モブプログラミングの受け身のとり方
モブプログラミングはチームのリトマス試験紙
モブプログラミングとふりかえり モブプログラミングとふりかえりはセットがおすすめ チームワークの縮図なので、 チームの進め方を改善するチャンス 全員が共通体験をした状態でふりかえりを行うので、 お互いのメンタルモデルを共有し合うチャンス
SECIモデル 共同化 表出化 内面化 結合化 暗黙知 形式知 形式知 暗黙知 モブプログラミング
SECIモデル 共同化 表出化 内面化 結合化 暗黙知 形式知 形式知 暗黙知 モブプログラミング
ふりかえり
SECIモデル 共同化 表出化 内面化 結合化 暗黙知 形式知 形式知 暗黙知 モブプログラミング
ふりかえり
ふりかえりで出てくる内容の例 モブプロをしていてなんとなく雰囲気が悪かった なんとなく居心地が悪いと感じた 議論がなかなか終わらずに仕事がなかなか進まなかった 一部のメンバーが一方的に教える時間になってしまった
ふりかえりで出てくる内容の例 モブプロをしていてなんとなく雰囲気が悪かった なんとなく居心地が悪いと感じた 議論がなかなか終わらずに仕事がなかなか進まなかった 一部のメンバーが一方的に教える時間になってしまった モブプロ(方法)の問題ではなく、 チームが抱える問題であることが多い
「認知」して「反映」する 起きたこと・共有された内容をどう認知したのか 問題がいっぱい出たからモブプロは自分たちに合っていなかったのでは モブプロをやったことによってチームの問題がたくさん見つかってよかった 認知した内容を場に反映することで、 受け止め方の選択肢をチームで共有することができる 経験者が率先して選択肢を増やすとよい
危険な兆候を察知する コミュニケーション密度が高まるので メンバー間の関係性の問題が色濃く反映してしまう可能性 別々に働いているときはどうにか我慢できたことでも、 モブプロをするとつらくなってしまうかもしれません モブプロをすることは避けて、 別の方法で問題解決を図る必要がある場合もあります
ただそれだけ “一緒に働く” Photo by Štefan Štefančík on Unsplash
似たような経験 トラブル対応 友達の家に集まってゲーム • 問題を寄ってたかってフルボッコ • 問題 対 私達 •
チームの考えを集めて最善のアウトプット 普段の仕事に応用したのがモブプログラミング Photo by rawpixel on Unsplash
戦略的に仕事に取り入れる “一緒に働く” Photo by Štefan Štefančík on Unsplash