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
12k
"群れる" アジャイル / 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 / 石垣雅人
【5分】始める前に失敗する ── fail fast(早く失敗)ではなくfail before(事前検死) ──
i35_267
1
17
技術負債による事業の失敗はなぜ起こるのか / Why do business failures due to technical debt occur?
i35_267
4
1.8k
「開発生産性を上げる改善」って儲かるの?に答えられるようにする / Is development productivity profitable?
i35_267
26
19k
「開発生産性」はエンジニア”だけ” のモノではなくなった? / "Development productivity" is no longer just for engineers?
i35_267
8
2.5k
開発生産性の現在地点~エンジニアリングが及ぼす多角的視点 / Current status of development productivity
i35_267
68
25k
開発生産性の低下による、事業の失敗はなぜ起こるのか / ProductivityPitfalls
i35_267
6
1.5k
開発生産性の多角的接点〜1,000名のクリエイター組織 × 開発生産性〜 / Multifaceted touchpoints of development productivity
i35_267
5
1.5k
内製化で強化させる、事業のスケーラビリティーとエンジニアの成長戦略 / insourcing
i35_267
2
360
見積もりをしない。
i35_267
4
1.2k
Other Decks in Technology
See All in Technology
CysharpのOSS群から見るModern C#の現在地
neuecc
2
3.2k
Introduction to Works of ML Engineer in LY Corporation
lycorp_recruit_jp
0
100
AGIについてChatGPTに聞いてみた
blueb
0
130
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
0
110
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.1k
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
470
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.6k
開発生産性を上げながらビジネスも30倍成長させてきたチームの姿
kamina_zzz
2
1.7k
Platform Engineering for Software Developers and Architects
syntasso
1
520
初心者向けAWS Securityの勉強会mini Security-JAWSを9ヶ月ぐらい実施してきての近況
cmusudakeisuke
0
120
信頼性に挑む中で拡張できる・得られる1人のスキルセットとは?
ken5scal
2
530
Incident Response Practices: Waroom's Features and Future Challenges
rrreeeyyy
0
160
Featured
See All Featured
Designing for Performance
lara
604
68k
Practical Orchestrator
shlominoach
186
10k
A better future with KSS
kneath
238
17k
Optimizing for Happiness
mojombo
376
70k
A Modern Web Designer's Workflow
chriscoyier
693
190k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Faster Mobile Websites
deanohume
305
30k
Unsuck your backbone
ammeep
668
57k
Site-Speed That Sticks
csswizardry
0
23
Optimising Largest Contentful Paint
csswizardry
33
2.9k
Writing Fast Ruby
sferik
627
61k
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 = 暗黙知を共有していくことに近い ・リモートチームでの
”群れる” の難しさ