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
"群れる" アジャイル / Swarming in Agile
Search
Masato Ishigaki / 石垣雅人
September 19, 2020
Technology
8
13k
"群れる" アジャイル / Swarming in Agile
2020/09/19 「XP祭り 2020」登壇資料
https://confengine.com/xp2020/schedule
Masato Ishigaki / 石垣雅人
September 19, 2020
Tweet
Share
More Decks by Masato Ishigaki / 石垣雅人
See All by Masato Ishigaki / 石垣雅人
生成AI活用のROI、どう測る? DMM.com 開発責任者から学ぶ「AI効果検証のノウハウ」 / ROI of AI
i35_267
4
210
大規模組織にAIエージェントを迅速に導入するためのセキュリティの勘所 / AI agents for large-scale organizations
i35_267
7
940
無意味な開発生産性の議論から抜け出すための予兆検知とお金とAI
i35_267
8
20k
Clineを含めたAIエージェントを 大規模組織に導入し、投資対効果を考える / Introducing AI agents into your organization
i35_267
6
2.1k
開発フェーズだけではない AI導入はどのように進めていくべきか / How should we proceed with AI adoption beyond the development stage?
i35_267
3
270
【Forkwell】「正しく」失敗できるチームを作る──現場のリーダーのための恐怖と不安を乗り越える技術 - FL#83 / A team that can fail correctly by forkwell
i35_267
6
630
【Findy】「正しく」失敗できる チームの作り方 〜リアルな事例から紐解く失敗を恐れない組織とは〜 / A team that can fail correctly by findy
i35_267
9
1.8k
技術負債の「予兆検知」と「状況異変」のススメ / Technology Dept
i35_267
2
1.5k
技術負債による事業の失敗はなぜ起こるのか / Why do business failures due to technical debt occur?
i35_267
5
2.6k
Other Decks in Technology
See All in Technology
データ分析エージェント Socrates の育て方
na0
5
1.3k
「全員プロダクトマネージャー」を実現する、Cursorによる仕様検討の自動運転
applism118
22
12k
Django's GeneratedField by example - DjangoCon US 2025
pauloxnet
0
150
AWSで始める実践Dagster入門
kitagawaz
1
710
[ JAWS-UG 東京 CommunityBuilders Night #2 ]SlackとAmazon Q Developerで 運用効率化を模索する
sh_fk2
3
450
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
4
580
テストを軸にした生き残り術
kworkdev
PRO
0
210
dbt開発 with Claude Codeのためのガードレール設計
10xinc
2
1.3k
Create Ruby native extension gem with Go
sue445
0
110
LLMを搭載したプロダクトの品質保証の模索と学び
qa
0
1.1k
CDK CLIで使ってたあの機能、CDK Toolkit Libraryではどうやるの?
smt7174
4
190
開発者を支える Internal Developer Portal のイマとコレカラ / To-day and To-morrow of Internal Developer Portals: Supporting Developers
aoto
PRO
1
470
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
462
33k
How to Ace a Technical Interview
jacobian
279
23k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Why Our Code Smells
bkeepers
PRO
339
57k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The Art of Programming - Codeland 2020
erikaheidi
56
13k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Speed Design
sergeychernyshev
32
1.1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
It's Worth the Effort
3n
187
28k
Embracing the Ebb and Flow
colly
87
4.8k
Transcript
“群れる” アジャイル XP祭り 2020 September 19, 2020 1
2 Outline / Structure of the Talk ・スライドは公開済みです ・アジャイルの文脈でいう群れる(Swarming)の理解 ・”群れ”
における群知能と意思決定 ・”群れて” 作るからこそチームは自律的な動きができる ・群れる(Swarming) は 暗黙知 ・リモートチームでの”群れ”
3 About me Masato Ishigaki / 石垣 雅人 DMM.com 総合トップ開発部
部長 2015年度 エンジニア 新卒入社 2017年より、DMMにおける3000万のアカウント(ID)、認証(Auth) のバックエンド 周りのプロダクトオーナーを経て、 2018年7月にリードナーチャリング領域を強化す るチームの立ち上げを行う。 2020年より、DMMの総合トップなどを管轄する総合 トップ開発部の部長を務める。 現在はアプリプラットフォームのプロダクトオーナーにも 従事 @i35_267 i35-267 著 『DMMを支えるデータ駆動戦略』 https://www.amazon.co.jp/dp/4839970165/
“群れ” Photo by David Clode on Unsplash 4
5 “群知能と意思決定” ・なぜ、動物(鳥や魚)は統率された行動ができるのか。 ・アリの群衆は、どうやって最短ルートで餌場にたどり着くのか。 ・群れ = 自己組織化している(無意識に自律的な秩序を持つ) ・秩序の例。複雑系に見えて実はとてもシンプルな論理 Start Goal
ルート1 ルート2 1. 前の個体を追うこと 2. 横の個体を速度を合わせること
6 “群知能と意思決定” ・群れ = 集団になると個々の能力を超えた知性がでる(群知能) ・集団のようが個より、予測可能性が上がる ・問題解決に一番有効なのは、集団の ”平均値” である Ex.
ガラス瓶にモノを入れる数を個々に数えさせる Aさん. 500枚、Bさん. 230枚、Cさん. 300枚,etc… 一番正解に近いのは、 全員の平均値である 。 個よりも集団のほうが知能が高い ただし、この結果が合わられるのは他人と ”相談” しなかった場合。 他人に影響されると実は集団はうまく行かない。個々の多様性が “群知能” として知性を 作る。
群れている状態とは 7 "群れる"の本質は、何かの対象に対して集団が相互作用しなが らも自然と同じ方向を向いて、 前に進んでいるということであり、個々がそのメリットを体系的に 理解していること。 本能的に「ひとりで進むよりも皆と協力して "群れ"ながら進んだ方 が良い結果を生む」と判断できることである。
なぜ、”群れる” のか 8 生物学的に見ても、強い敵が目の前に現れたとき単独で行動するよりも、統一さ れた集団行動によって、1対1では敵わない敵に勝てるかもしれないということを 本能的に知っている。いわゆる、恐怖。 そのためには指示待ちではなくて自律的に動いた方が強い敵に勝てることを 徐々に学習して理解していく。 そうした行動の副次的作用としてアジリティ的な要素も集団の中に生まれてくる。 ゲームでも敵わない敵に”何度も”挑戦することで、学習をして相手の弱点や勝ち
筋が見えてくるのと同じ。 Photo by Harshil Gudka on Unsplash
9 アジャイルでいう “群れる” とは “Swarming” という用語 スクラムで言えば.... ProductBacklog(作るべき対象)に対して、 チームメンバーが “群がり”
ながら、 一定の秩序をもち(イベント)、 優先度順にゴールに向けて作り上げていく
10 “群がる粒度”を考える
11 フロー効率とリソース効率 ・リソース効率・・・ 各々の「人」に対するリソースを最大限稼働させる。人の稼働率100% ・フロー効率・・・各々の「プロセス」に対するリソースを効率よく稼働させる(Swarming)
12 不確実性に強いのはフロー効率
なぜ、分担したがるか 13 ただし、Swarmingが良いとわかっていても 実際は、作業を細かく分担したがることが多い。 ・個人作業をしていない不安というバイアス ・個人作業のこだわりとメリット 適切なSwarmingの粒度は、チームごとに決めたほうが良い。 しかし、Swarmingのイメージの共有が必要。 例えば、緊急のタスク(インシデント)があったときには、 全員手を止めてSwarmingしているはず。
Photo by St John Wilson on Unsplash
“群れる” アジャイル 14 “群れる(Swarming)” というのは、“ 暗黙知 ” の最大化することに近い 「暗黙知」とは、一言でいうと言語化されていない感覚的で身体的な知識のこと。 経験知ともいい、経験として体に馴染んでいるが言葉として説明できない知識のことです。
この暗黙知には、大きく分けて 2つあります。 ノウハウや技巧、熟練といった「身体スキル」とメンタルモデルを代表とする「認知スキル」
“暗黙知” 15 「身体スキル」 ・例えば自動車の乗り方について ・自動車の乗り方をいくら座学で学んだとしても、いきなり運転できる人は多く ないでしょう。 ・実際に自動車に乗り、ハンドルを握り、アクセスを踏んでみる、などの体験を 通じて体に染み込ませる ・アクセルやクラッチ、ハンドルを絶妙な感覚で操作しながら運転する感覚は とても論理的に説明できません。
Photo by Kenny Luo on Unsplash
“暗黙知” 16 「認知スキル」 ・個人の根幹にあるメンタルモデル ・人はさまざまな意思決定をするときに過去の体験や経験をもとにしたメンタ ルモデルをもって行動する ・例えば、新卒のときに大きな障害を起こしてしまった。 ・そうするとベテランになっても障害に対する恐怖から、厳重に仕組みを用意 する傾向がある Photo
by Oneisha Lee on Unsplash
暗黙知による相互作用プロセス 17 相互作用しながら、暗黙知を共有し合う アジャイルの「場」を活かしながら、 SECIモデルを回していく
リモートチームでの “群れる” 18 “群れる”(Swarming)の効用を「暗黙知」の共有だとすると、 距離の近さに依存する。 しかし、昨今の事情により、リモートチームが多くなった。 リモートになってチームの状況が少しは変化しているはず。 柔軟な変化への対応が必要
リモートチームでの “群れる”の難しさ 19 群れるアジャイルは「場」をうまく観察しながら機能している部分が多い。そのため 個々のコンディションを音声とテキストから読み取る必要があるため、かなり想像 力が必要になる。集団の中に自律的な秩序(プロセス)を新たに作るには、それ ぞれのメンバーの納得感や意見の吸い上げが必須になるが、リモートだとその難 易度が異常に高い。音声とテキストだと個々が能動的に発しないとわからないた め、「この子は何か言いたそうだな」「なんとなく納得してないな」というのが、こち らからキャッチアップしずらいため、既存のマネジメントだと歯が立たなくなってき
た。
リモートチームでの “群れる” プラクティス 20 ・雑談責任 ・1on1 ・リモートモブプロ ・”エモさ” の表現
まとめ 21 ・アジャイルの本質は 群れながら戦うこと ・チームごとに”群れる” 粒度は決めたほう良い ・Swarming = 暗黙知を共有していくことに近い ・リモートチームでの
”群れる” の難しさ