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
ペアプログラミングにQAが加わった!職能を超えたモブプログラミングの事例と学び
Search
tonionagauzzi
March 28, 2025
Technology
1
200
ペアプログラミングにQAが加わった!職能を超えたモブプログラミングの事例と学び
tonionagauzzi
March 28, 2025
Tweet
Share
More Decks by tonionagauzzi
See All by tonionagauzzi
Compose におけるパスワード自動入力とパスワード保存
tonionagauzzi
0
250
Androidテスト基礎講義
tonionagauzzi
0
86
Android Composeでの自動入力(作成:GPT-4o)
tonionagauzzi
0
74
Jetpack Composeで自動入力(Autofill)を実装しよう(作成:claude-3.7-sonnet)
tonionagauzzi
0
74
Jetpack Composeにおける自動入力の実装と注意点(作成者:Gemini 2.5 Pro Exp 03-25)
tonionagauzzi
0
70
Jetpack Composeで自動入力を完全攻略(作成:o3)
tonionagauzzi
0
69
サイボウズの開発チームが行っているスクラムの紹介
tonionagauzzi
0
890
【社外版】前年の3倍登壇してみて得た気づき『登壇すれば、人と繋がれる!』
tonionagauzzi
0
99
職能を超えたモブプログラミングが品質に与えた良い影響
tonionagauzzi
2
450
Other Decks in Technology
See All in Technology
~宇宙最速~2025年AWS Summit レポート
satodesu
1
1.8k
Snowflake Summit 2025全体振り返り / Snowflake Summit 2025 Overall Review
mtpooh
2
390
製造業からパッケージ製品まで、あらゆる領域をカバー!生成AIを利用したテストシナリオ生成 / 20250627 Suguru Ishii
shift_evolve
PRO
1
130
Snowflake Summit 2025 データエンジニアリング関連新機能紹介 / Snowflake Summit 2025 What's New about Data Engineering
tiltmax3
0
300
rubygem開発で鍛える設計力
joker1007
2
190
生成AIでwebアプリケーションを作ってみた
tajimon
2
140
Oracle Cloud Infrastructure:2025年6月度サービス・アップデート
oracle4engineer
PRO
2
230
Amazon S3標準/ S3 Tables/S3 Express One Zoneを使ったログ分析
shigeruoda
3
460
Claude Code Actionを使ったコード品質改善の取り組み
potix2
PRO
6
2.1k
VCpp Link and Library - C++ breaktime 2025 Summer
harukasao
0
240
登壇ネタの見つけ方 / How to find talk topics
pinkumohikan
3
350
GeminiとNotebookLMによる金融実務の業務革新
abenben
0
220
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Building Adaptive Systems
keathley
43
2.6k
How to Ace a Technical Interview
jacobian
277
23k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
60k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
670
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
Rebuilding a faster, lazier Slack
samanthasiow
81
9.1k
For a Future-Friendly Web
brad_frost
179
9.8k
Making the Leap to Tech Lead
cromwellryan
134
9.3k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Transcript
ペアプログラミングにQAが加わった! 職能を超えたモブプログラミングの 事例と学び 2025.03.28 1
2 01 02 03 04 05 06 07 はじめに この発表の狙い
私のチーム構成 私のチームのモブプロの特徴 開発の進め方 共同モブプロの効果と課題 まとめ P03 P07 P09 P14 P17 P23 P27 目 次
©️ Cybozu, Inc. 1. はじめに 3
UB Tech vol.20 • 名前:トニオ(@tonionagauzzi) • 役割:Androidエンジニア • 趣味:ブログ •
所属:サイボウズ株式会社 自己紹介 4 はじめに
UB Tech vol.20 会社概要 サイボウズ株式会社 事業内容 グループウェアの開発・販売・運用 / メソッド事業 代表取締役社長
青野 慶久 創業 1997年8月 所在地 東京都中央区日本橋2-7-1 東京日本橋タワー 拠点 東京,大阪, 松山, 名古屋, 福岡, 広島, 仙台, 札幌, 横浜, 大宮, 上海, 深圳,成都,台北, ホーチミン, サンフランシスコ, シドニー, バンコク, クアラルンプールなど 資本金 613百万円 証券取引所 東証プライム[証券コード4776] 従業員数 連結1,276名、単体1,003名 ※2023年12月末時点 ※役員除く無期雇用(正社員)数 5
UB Tech vol.20 企業理念 6 存 在 意 義 Pu
rpos e チームワークあふれる社会を創る 文 化 Cu ltur e 1.理想への共感 共通の理想を作り、理想に共感して行動する 2.多様な個性を重視 多様な個性を重視し、互いに活かし合う 4.自主自律 5.対話と議論 お互いの考えの前提を理解し、論じ合って意思決定をする 3.公明正大 オープンな信頼関係の基盤を作る 一人ひとりが個人としての主体性を持ち、 よりよいチーム作りに関わっていく
©️ Cybozu, Inc. 2. この発表の狙い 7
UB Tech vol.20 2. この発表の目的 • 対象者 • 社内でのペアプログラミング(モブプログラミング)の実践事例について知りたい方々 •
発表の効果 • 開発者のペアプロにQAが加わった事例と学びをざっくり知れる • パネルディスカッションでサイボウズ社員(私)に聞いてみたいことが出てくる 対象者と効果 8
©️ Cybozu, Inc. 3. 私のチーム構成 9
UB Tech vol.20 3. 私のチーム構成 開発チーム全体の体制*1 kintone開発チーム 10 2024年8月時点 ※1:https://blog.cybozu.io/entry/2024-08-17-kintone-team-alignment
UB Tech vol.20 3. 私のチーム構成 私の所属するサブチームの体制 kintone Androidチーム 11
UB Tech vol.20 3. 私のチーム構成 私の所属するサブチームの体制 kintone Androidチーム 12 ←ペアプロ→
ペアプロ期
UB Tech vol.20 3. 私のチーム構成 私の所属するサブチームの体制 kintone Androidチーム 13 モブプロ
モブプロ期
©️ Cybozu, Inc. 4. 私のチームのモブプロの特徴 14
UB Tech vol.20 • 開発者とQAはスキルが異なるので、役割はある程度固定化される • QAはコードの読み方を知らない • 実装は開発者2人が交代で画面を映して進める •
テストなど品質関連のことはQAが画面を映してリードする • 職能を超えたチャレンジを推奨している • 簡単なライブラリ更新のPRはQAがマージする • 開発者が試験実施する • スクラムイベントのファシリテートを全員が交代で担当する 役割がある程度決まっている 15 4. 私のチームのモブプロの特徴
UB Tech vol.20 • ドライバーが画面を映しながら自主判断でどんどん作業を進める • 一般的なモブプロではドライバーはナビゲーターの言う通りタイピングするが、 サイボウズ流モブプロは基本ドライバー任せ • ナビゲーターは画面を見て肯定的に思ったことは頷き、疑問は質問する
• 促進と改善の2つのフィードバックループが回る ドライバー任せである 16 4. 私のチームのモブプロの特徴
©️ Cybozu, Inc. 5. 開発の進め方 17
UB Tech vol.20 • 実装プランニング • タスク分割 • 実装 •
テスト仕様書作成 • コードレビュー • テスト仕様書レビュー • テスト実施 • (必要に応じて)修正 • マージ 1つのプロダクトバックログアイテム(以下、PBI)でやること 18 5. 開発の進め方
UB Tech vol.20 “ペア”時代の進め方 19 5. 開発の進め方
UB Tech vol.20 “ペア”時代の進め方 20 5. 開発の進め方 開発者のスイッチングコストがあった QAから見て開発者が何をしているかわからなかった
UB Tech vol.20 QA加入後”モブ”の進め方 21 5. 開発の進め方
UB Tech vol.20 QA加入後”モブ”の進め方 22 5. 開発の進め方 開発者が1つのPBIに集中できる! QAが開発者の作業内容や状況を知れる!
©️ Cybozu, Inc. 6. 共同モブプロの効果と課題 23
UB Tech vol.20 1. 参加者全員の自立と成長 • 職能を超えてプロダクトやスクラムイベントにオーナーシップを持てる 2. チームの共通知識が増える •
不具合の調べ方、技術的な課題などの前提知識が全員に行きわたる • Android Studioの便利Tipsや、テスト設計手法などの便利なことも全員に行きわたる 3. コードとテストの協調が取れる • 「ここは不安なので手厚めに」とか言いやすく、みんなでテストしている感覚 4. シフトレフトテスト/シフトライトテストがやりやすくなる • 「シフトレフト、シフトライトとは?」という話は今回省略します。 共同モブプロの効果(4つ) 24 共同モブプロの効果と課題
UB Tech vol.20 1. リソース効率は落ちる • 並列で作業したほうがタスクの”数”はこなせる • 改善策:簡単な問題、単純作業は1人で作業する 2.
自動テストを書きにくくなる • モブ自体がテストになっており、自動テスト作成が後回しになりがち • TDD導入してみたけど形骸化しやすかった • モブをやめてみるとTDDしやすかった(個人の体験) • 改善策:受け入れ条件をテストケース化して受け入れテスト駆動開発(ATDD)する 共同モブプロの課題(4つ) 25 共同モブプロの効果と課題
UB Tech vol.20 3. QAの役割が不明なときがある • モバイルアプリの特性上、デプロイが実装終盤になるので、”待ち”が発生する • 改善策:実装初期にデプロイし、QAが早い段階で実装中のアプリを触れるようにする 4.
時間管理が難しい • 全員の予定を拘束するので、他の予定を入れづらい • 外からは、常にミーティングしているチームに見える • 長時間モブをすると自覚以上に疲れてしまう • 改善策:個人作業を意識して入れる 1日ごとのモブの時間を制限する 出入り自由のワーキングアグリーメントを定める チーム外の人と雑談しに行く 共同モブプロの課題(4つ) 26 共同モブプロの効果と課題
©️ Cybozu, Inc. 7. まとめ 27
UB Tech vol.20 • 開発者とQAのモブプロにより、チームの一体感は高まりました。 • 一方で、一体感が高まりすぎると効率が落ちるなど課題も感じました。 • (開発者目線)QAさんがモブにいてくれるとめっちゃ助かります!!! モブは、開発の効率化や品質向上だけでなく、チームの学習と成長も後押しする!
28 7. まとめ
©️ Cybozu, Inc. 29