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
TPS(トヨタ生産方式)入門 / TPS Introduction
Search
Recruit
PRO
September 09, 2022
Technology
3
4.8k
TPS(トヨタ生産方式)入門 / TPS Introduction
2022年度リクルート エンジニアコース新人研修の講義資料です
Recruit
PRO
September 09, 2022
Tweet
Share
More Decks by Recruit
See All by Recruit
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
72
VPC Traffic Mirroring とOSS を利⽤した ネットワークフォレンジック基盤の構築・運⽤
recruitengineers
PRO
1
40
スタサプ ForSCHOOLアプリのシンプルな設計
recruitengineers
PRO
3
1k
リクルート流データ基盤塾~鶴谷と学ぶ~
recruitengineers
PRO
5
240
『SUUMO』 スマホサイト デザインリニューアルへの挑戦
recruitengineers
PRO
5
340
『リクルートダイレクトスカウト』 のリニューアルから振り返る: ビジョンドリブンの可能性
recruitengineers
PRO
3
310
負債あるモノリスのオブザーバビリティに組織で向き合う
recruitengineers
PRO
9
400
あなたの知らないiOS開発の世界
recruitengineers
PRO
4
330
大規模プロダクトにおける組織作りと技術ポートフォリオマネジメント
recruitengineers
PRO
4
490
Other Decks in Technology
See All in Technology
いざ、BSC討伐の旅
nikinusu
2
780
信頼性に挑む中で拡張できる・得られる1人のスキルセットとは?
ken5scal
2
530
dev 補講: プロダクトセキュリティ / Product security overview
wa6sn
1
2.3k
社内で最大の技術的負債のリファクタリングに取り組んだお話し
kidooonn
1
550
iOSチームとAndroidチームでブランチ運用が違ったので整理してます
sansantech
PRO
0
120
なぜ今 AI Agent なのか _近藤憲児
kenjikondobai
4
1.3k
ハイパーパラメータチューニングって何をしているの
toridori_dev
0
140
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.1k
Lambda10周年!Lambdaは何をもたらしたか
smt7174
2
110
OCI Security サービス 概要
oracle4engineer
PRO
0
6.5k
10XにおけるData Contractの導入について: Data Contract事例共有会
10xinc
5
560
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
0
110
Featured
See All Featured
Statistics for Hackers
jakevdp
796
220k
Adopting Sorbet at Scale
ufuk
73
9.1k
Designing Experiences People Love
moore
138
23k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Building Better People: How to give real-time feedback that sticks.
wjessup
364
19k
A Philosophy of Restraint
colly
203
16k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Happy Clients
brianwarren
98
6.7k
Faster Mobile Websites
deanohume
305
30k
Transcript
【2022年度 新人BootCamp研修】 TPS入門 曽根 啓佑(Keisuke Sone) 株式会社 リクルート プロダクトディベロップメント室 HRPDU
HR領域エンジニアリング部 HRプロダクト開発1G 兼 HR領域開発ディレクション1部 HRエージェント開発ディレクションG
(C) Recruit Co.,Ltd. All rights reserved. 2 Agenda 1. TPS(トヨタ生産方式)とは
2. ムダ・ムラ・ムリとは 3. ジャスト・イン・タイムと自働化とかんばんについて 4. ソフトウェア開発の話 5. まとめ
(C) Recruit Co.,Ltd. All rights reserved. 3 1.TPS(トヨタ生産方式)とは
(C) Recruit Co.,Ltd. All rights reserved. 4 TPS(トヨタ生産方式)とは 戦後まもない当時のトヨタ自動車工業の豊田喜一郎氏が提唱していた考えを大野耐一氏らが 体系化し、生産ラインのムダ・ムラ・ムリを徹底的に排除するために確立した生産方式
7つのムダを定義しそれらを排除するために 「ジャストインタイム」と「自働化」を2本柱として体系化された手法 また、ジャストインタイムと自働化を運営するための道具として「かんばん」方式を用いている オイルショック以降、高度経済成長がストップし、 コストをいかに安くすますかといった時代により注目された また、1990年、書籍「リーン生産方式が、世界の自動車産業をこう変える」において、 トヨタ生産方式に新たな呼び名を与えており、 それ以降「リーン生産方式」としても知られるようになる
(C) Recruit Co.,Ltd. All rights reserved. 5 TPSの基本思想 情報の流れ モノの流れ
ニーズ pull pull pull pull push push push ニーズ(市場の需要)からプルしてくる 市場の動向から必要な生産数量を決定して情報が工程を逆流させる考えが前提となっている
(C) Recruit Co.,Ltd. All rights reserved. 6 2.ムダ・ムラ・ムリとは
(C) Recruit Co.,Ltd. All rights reserved. 7 ムダ・ムラ・ムリとは? 性能 時間
ニーズ (市場の需要) ムリ ムリ ムダ ムダ ムラ ムダ・・・性能がニーズを上回っている状態 ムリ・・・性能がニーズに追いついていない状態 ムラ・・・ムリとムダが発生するように性能にバラツキがある状態
(C) Recruit Co.,Ltd. All rights reserved. 8 7つのムダ 製造(TPS) ソフトウェア開発(リーン)
在庫のムダ 未完成の作業のムダ 作り過ぎのムダ 余分な機能のムダ 加工そのもののムダ 再学習のムダ 運搬のムダ 引き継ぎのムダ 動作のムダ タスク切り替えのムダ 手持ちのムダ 遅れのムダ 不良を作るムダ 欠陥のムダ TPSでは、すぐに必要にならない在庫を作ることが最悪なムダだと強調している 同様にソフトウェア開発においても、ユーザーにとって必要ではない機能を追加するこ とが最悪なムダだと言える
(C) Recruit Co.,Ltd. All rights reserved. 9 3.ジャスト・イン・タイムと自働化とかんばんについて
(C) Recruit Co.,Ltd. All rights reserved. 10 ジャスト・イン・タイムが生まれる前の生産現場 ロットは大きく まとめて作業
ロットは大きく まとめて作業 ジャスト・イン・タイムが生まれる前の生産現場は、 同種、同型の部品をまとめて作り、ロットを大きくまとめることが常識 プレスライン 加工ライン 組立ライン
(C) Recruit Co.,Ltd. All rights reserved. 11 ロットを大きくして量をこなす場合、各工程に手持ちの在庫が必要にある →在庫から生じる恐れのある「作りすぎのムダ」や管理・土地・建物の負担が発生 プレスライン
加工ライン 組立ライン 在庫 在庫 ロットは大きく まとめて作業 ロットは大きく まとめて作業 ジャスト・イン・タイムが生まれる前の生産現場
(C) Recruit Co.,Ltd. All rights reserved. 12 ロットを大きくして量をこなす場合、各工程に手持ちの在庫が必要にある →在庫から生じる恐れのある「作りすぎのムダ」や管理・土地・建物の負担が発生 →財務的にも物理的にも経営を圧迫する在庫を減らすニーズが発生
プレスライン 加工ライン 組立ライン ロットを大きくして まとめて作業 ロットを大きくして まとめて作業 土地や施設や管理の負担 土地や施設や管理の負担 ジャスト・イン・タイムが生まれる前の生産現場
(C) Recruit Co.,Ltd. All rights reserved. 13 ジャスト・イン・タイムとは? 必要なものを必要なときに必要な分だけラインサイドに到着する作り方 後工程が前工程に必要なものを、必要なときに、必要な量だけ引き取りに行く方式
プレスライン 加工ライン 組立ライン 後工程が 必要な分だけ 取りに行く 前工程は 引き取られた 分だけ作成 後工程が 必要な分だけ 取りに行く
(C) Recruit Co.,Ltd. All rights reserved. 14 ジャスト・イン・タイムとは? プレスライン 加工ライン
組立ライン 組立ラインが まとめて加工ラインの完成品 を引き取ってしまうと・・・ 加工ラインが たちまち欠品を起こす 結果として 大量の在庫を抱えないと いけなくなる ただし、 後工程が引き取る量のバラツキが大きければ大きいほど、前工程は余分な設備や人を 抱え込まざるをえなくなる 加工ラインはさらにまとめて プレスラインの完成品 を引き取ってしまい・・・
(C) Recruit Co.,Ltd. All rights reserved. 15 ジャスト・イン・タイムとは? プレスライン 加工ライン
組立ライン 前工程の プレスラインは たちまち混乱して しまう 組立ラインが まとめて加工ラインの完成品 を引き取ってしまうと・・・ 後工程の生産のバラツキの影響は前工程に遡るほど大きくなる 加工ラインはさらにまとめて プレスラインの完成品 を引き取ってしまい・・・
(C) Recruit Co.,Ltd. All rights reserved. 16 ジャスト・イン・タイムの大前提「平準化」とは? この悪循環を起こさないためには、各工程ラインの生産の山谷をなくして、 生産の流れの表面を穏やかにすることが必要不可欠になる
そのため、同じものの生産単位であるロットをなるべく小さくして、 前工程へばらつきの悪影響を及ぼさないようにする →TPSでは、これを「生産の平準化」と呼んでいる プレスライン 加工ライン 組立ライン 生産量 ロットを小さ くしてばらつ きを抑える ロットを小さ くしてばらつ きを抑える ロットを小さ くしてばらつ きを抑える 時間
(C) Recruit Co.,Ltd. All rights reserved. 17 平準化を実現するための改善 ロットを小さくして、なるべく同じものを続けて流さない「平準化」の考えは、 旧来の量産体制になれている各工程においては当初過酷なものだった
Ex.プレスラインは当初段取替えに3時間かけていた 平準化の推進による改善の結果、最終的には3分まで短縮 プレスライン 加工ライン 組立ライン 一つのプレスの金型で連続して 打ち続けることができなくなる。 ↓ 目まぐるしく変わる製品の種類に応じて プレスの金型を替える、「段取替え」 を頻繁に行わなくてはならない。
(C) Recruit Co.,Ltd. All rights reserved. 18 自働化とは? ・自動停止装置付きの機械によって、異常を自動検知できる仕組み ・また異常が発生した際に、作業者がラインをストップさせることを徹底すること
→自働化によって、不良品の発生を防止し、作り過ぎを抑えることができる ②機械や ラインが 止まる(止める) ③真因を 見つけて 取り除く ④品質が 作り込まれる ①異常を検知 自働化の改善サイクル
(C) Recruit Co.,Ltd. All rights reserved. 19 自働化とは?自工程完結 ニンベンのない自動化 ニンベンのついた自働化
異常(不良品)が混じり混んでも検査まで気づけない。 品質が悪いと手戻りを生み、生産速度が低下する。結果として在庫を抱え始めることに。 プレスライン 加工ライン 組立ライン 検査 プレスライン 加工ライン 組立ライン 検査 手戻りの発生 改善 改善 異常発生時に発生現場でラインが止まるため、その異常に対する処置がその場で施される = 自工程完結 品質が工程で作り込まれるため、結果として各工程での生産のバラツキが抑えられる。 生産の流れを作るジャスト・イン・タイムにおいて、自働化は必要不可欠な仕組み 異常検知 異常検知 異常検知
(C) Recruit Co.,Ltd. All rights reserved. 20 開発現場のカンバンボード(一例)※小さくで見づらくてごめんなさい ・カンバンレーン毎の在庫量やリードタイムを 累積フローダイアグラムのレポートを使用すればすぐに可視化できる
リードタイム 在 庫 数
(C) Recruit Co.,Ltd. All rights reserved. 21 4.ソフトウェア開発の話(主にジャスト・イン・タイムと自働化)
(C) Recruit Co.,Ltd. All rights reserved. 22 ソフトウェア開発での話 黒田さん資料再掲
(C) Recruit Co.,Ltd. All rights reserved. 23 ソフトウェア開発におけるニーズ(市場の需要)からプル ニーズからプルしてくる流れはTPSそのもの 作り過ぎのムダを抑えるために、
ニーズに対して必要最低限の価値あるもの(MVP)を構築する モノ(開発) の流れ push push push push push ⑦構築する ⑧完成品(MPV) ⑨計測する ⑩計測された データから検証 ⑪学びを得る ⑫実証する ニーズ pull 情報(思考) の流れ ①仮設を立てる ②何を学ぶのか 決める ③必要な データは何か決める ④計測方法/計測設計は? ⑤何が必要か? ⑥どう設計 実装する? pull pull pull pull pull
(C) Recruit Co.,Ltd. All rights reserved. 24 ソフトウェア開発における平準化 = フロー効率
黒田さん資料再掲
(C) Recruit Co.,Ltd. All rights reserved. 25 平準化を実現するための改善 黒田さん資料再掲
(C) Recruit Co.,Ltd. All rights reserved. 26 平準化を実現するための体制 =作業者の多工程持ち スキルの平準化もTPSの「生産の平準化」において重要
開発チームのスキル運用マップの一例
(C) Recruit Co.,Ltd. All rights reserved. 27 平準化を実現するための体制 =作業者の多工程持ち TPSの多工程持ちに似た概念としては、クロスファンクショナルチームという考えがある
他チームへの引き継ぎのムダや待ち時間の削減をすることができる。 エンジニアT プロマネ/プロデザT データ分析T
(C) Recruit Co.,Ltd. All rights reserved. 28 平準化を実現するための体制 =作業者の多工程持ち 計画
開発 QA リリース 振り返り リファイン 「機能開発や大玉のUIUX改善に特化したチーム」 ・ある程度勝ち筋が見えている案件を開発 →他社追従や仮説検証後のある程度勝ち筋が見えている案件メイン ・プロセス整備、改善を全体最適の観点から推進 →正しく高速に開発するために、プロセス整備改善を推進する プロダクトKGI,主要KPI(LTV/有料転換率/初回会員登録率など)の直接貢献をメイン目的に機能/UI改善開発を行うチーム 案件推進T 戦略改善T 「①重要テーマからチームKPI目標を持ち、その目標にコミットする」 ・重要テーマ・・・安心安全な出会いの提供(業者対策) ・KPI・・・業者マッチングUU/マッチングUU = 1%以下 「②仮説検証→開発実装→分析振り返り→仮説検証をチーム全員で行う」 ・チームの目的が全員で指標を追うことで重要テーマに沿った指標の達成に特化すること ・勝ち筋の見えていない不確実要素の高いテーマにおいて勝ち筋を見つけにいく検証サイクルも同時に回す ・高速で仮説検証を回すため、上記BMLをチーム内で回すこと プロダクトKGI等に直接貢献しないが中長期的に重要なテーマに沿って仮説検証を回すチーム 開発チームの目的別チーム体制の一例
(C) Recruit Co.,Ltd. All rights reserved. 29 平準化を実現するための体制 =作業者の多工程持ち 顧客発見
顧客実証 顧客開拓 組織構築 導入期 成長期 成熟期 SoEの要素 SoRの要素 納期・品質を 守って正しく作る 答えがない中で勝ち筋を 探索する プロダクト Phase 開発に 求められる 要素 エンジニア の介在価値 体制 アサイン 方式 ✔ 高速なPoCの実施 ✔ ビジネス・技術双方の不確実性 が高い中での開発の遂行 ✔ 施術的負債の抑制 ✔ プロダクトの成長に合わせた 技術課題の解消 ✔ 技術的負債の解消 ✔ 案件の不確実性の解消 SoEの要素 SoRの要素 役割アサイン (技術的負債の解消や ドメインスペシャリストなど、 専門性がもとめられやすいため) クロスファンクショナル・ 機能アサイン (不確実性高い中、高速に開発するため) ただし、体制(プロセスも技術もそうですが)は、そのプロダクトのPhaseや状況に よって何が最適なのかは変わってくる。ケースバイケース。 複数の体制を混ぜ合わすことも多い。
(C) Recruit Co.,Ltd. All rights reserved. 30 自働化・自工程完結 要件定義 移行
リリース 設計/実装 結合テスト 受け入れ テスト 改善 異常検知 改善 異常検知 Formatter/Linterの導入 テストコードしっかり書く コード品質のモニタリング レビューの型化・・・ 承認フロー Doneの定義・・・ 各工程での自工程完結の取り組み例 ワーキングアグリーメント 開発ポータル プロセス定義・・・ 形式知・標準化
(C) Recruit Co.,Ltd. All rights reserved. 31 5.まとめ
(C) Recruit Co.,Ltd. All rights reserved. 32 ✔ニーズからプルしてくる ✔最小限のMVPの開発 ✔後工程が前工程に取りに来る
✔ムダ、ムラ、ムリの徹底的排除 ✔生産の流れを管理する ✔ロットを小さくして平準化(フロー効率)、究極は一個流し、 ✔自働化、自工程完結 5.まとめ