Slide 1

Slide 1 text

【62期 新⼈BootCamp研修】 TPS⼊⾨ 曽根 啓佑(Keisuke Sone) 株式会社 リクルート プロダクトディベロップメント室 HRPDU HR領域エンジニアリング部 HRプロダクト開発1G 兼 OSU OS部 オフショア開発4G

Slide 2

Slide 2 text

(C) Recruit Co.,Ltd. All rights reserved. 2 Agenda 1. TPS(トヨタ⽣産⽅式)とは 2. ムダ・ムラ・ムリとは 3. ジャスト・イン・タイムと⾃働化とかんばんについて 4. ソフトウェア開発の話 5. まとめ

Slide 3

Slide 3 text

(C) Recruit Co.,Ltd. All rights reserved. 3 1.TPS(トヨタ⽣産⽅式)とは

Slide 4

Slide 4 text

(C) Recruit Co.,Ltd. All rights reserved. 4 TPS(トヨタ⽣産⽅式)とは 戦後まもない当時のトヨタ⾃動⾞⼯業の豊⽥喜⼀郎⽒が提唱していた考えを⼤野耐⼀⽒らが 体系化し、⽣産ラインのムダ・ムラ・ムリを徹底的に排除するために確⽴した⽣産⽅式 7つのムダを定義しそれらを排除するために 「ジャストインタイム」と「⾃働化」を2本柱として体系化された⼿法 また、ジャストインタイムと⾃働化を運営するための道具として「かんばん」⽅式を⽤いている オイルショック以降、⾼度経済成⻑がストップし、 コストをいかに安くすますかといった時代により注⽬された また、1990年、書籍「リーン⽣産⽅式が、世界の⾃動⾞産業をこう変える」において、 トヨタ⽣産⽅式に新たな呼び名を与えており、 それ以降「リーン⽣産⽅式」としても知られるようになる

Slide 5

Slide 5 text

(C) Recruit Co.,Ltd. All rights reserved. 5 TPSの基本思想 情報の流れ モノの流れ ニーズ pull pull pull pull push push push ニーズ(市場の需要)からプルしてくる 市場の動向から必要な⽣産数量を決定して情報が⼯程を逆流させる考えが前提となっている

Slide 6

Slide 6 text

(C) Recruit Co.,Ltd. All rights reserved. 6 2.ムダ・ムラ・ムリとは

Slide 7

Slide 7 text

(C) Recruit Co.,Ltd. All rights reserved. 7 ムダ・ムラ・ムリとは︖ 性能 時間 ニーズ (市場の需要) ムリ ムリ ムダ ムダ ムラ ムダ・・・性能がニーズを上回っている状態 ムリ・・・性能がニーズに追いついていない状態 ムラ・・・ムリとムダが発⽣するように性能にバラツキがある状態

Slide 8

Slide 8 text

(C) Recruit Co.,Ltd. All rights reserved. 8 7つのムダ 製造(TPS) ソフトウェア開発(リーン) 在庫のムダ 未完成の作業のムダ 作り過ぎのムダ 余分な機能のムダ 加⼯そのもののムダ 再学習のムダ 運搬のムダ 引き継ぎのムダ 動作のムダ タスク切り替えのムダ ⼿持ちのムダ 遅れのムダ 不良を作るムダ ⽋陥のムダ TPSでは、すぐに必要にならない在庫を作ることが最悪なムダだと強調している 同様にソフトウェア開発においても、ユーザーにとって必要ではない機能を追加するこ とが最悪なムダだと⾔える

Slide 9

Slide 9 text

(C) Recruit Co.,Ltd. All rights reserved. 9 3.ジャスト・イン・タイムと⾃働化とかんばんについて

Slide 10

Slide 10 text

(C) Recruit Co.,Ltd. All rights reserved. 10 ジャスト・イン・タイムが⽣まれる前の⽣産現場 ロットは⼤きく まとめて作業 ロットは⼤きく まとめて作業 ジャスト・イン・タイムが⽣まれる前の⽣産現場は、 同種、同型の部品をまとめて作り、ロットを⼤きくまとめることが常識 プレスライン 加⼯ライン 組⽴ライン

Slide 11

Slide 11 text

(C) Recruit Co.,Ltd. All rights reserved. 11 ロットを⼤きくして量をこなす場合、各⼯程に⼿持ちの在庫が必要にある →在庫から⽣じる恐れのある「作りすぎのムダ」や管理・⼟地・建物の負担が発⽣ プレスライン 加⼯ライン 組⽴ライン 在庫 在庫 ロットは⼤きく まとめて作業 ロットは⼤きく まとめて作業 ジャスト・イン・タイムが⽣まれる前の⽣産現場

Slide 12

Slide 12 text

(C) Recruit Co.,Ltd. All rights reserved. 12 ロットを⼤きくして量をこなす場合、各⼯程に⼿持ちの在庫が必要にある →在庫から⽣じる恐れのある「作りすぎのムダ」や管理・⼟地・建物の負担が発⽣ →財務的にも物理的にも経営を圧迫する在庫を減らすニーズが発⽣ プレスライン 加⼯ライン 組⽴ライン ロットを⼤きくして まとめて作業 ロットを⼤きくして まとめて作業 ⼟地や施設や管理の負担 ⼟地や施設や管理の負担 ジャスト・イン・タイムが⽣まれる前の⽣産現場

Slide 13

Slide 13 text

(C) Recruit Co.,Ltd. All rights reserved. 13 ジャスト・イン・タイムとは︖ 必要なものを必要なときに必要な分だけラインサイドに到着する作り⽅ 後⼯程が前⼯程に必要なものを、必要なときに、必要な量だけ引き取りに⾏く⽅式 プレスライン 加⼯ライン 組⽴ライン 後⼯程が 必要な分だけ 取りに⾏く 前⼯程は 引き取られた 分だけ作成 後⼯程が 必要な分だけ 取りに⾏く

Slide 14

Slide 14 text

(C) Recruit Co.,Ltd. All rights reserved. 14 ジャスト・イン・タイムとは︖ プレスライン 加⼯ライン 組⽴ライン 組⽴ラインが まとめて加⼯ラインの完成品 を引き取ってしまうと・・・ 加⼯ラインが たちまち⽋品を起こす 結果として ⼤量の在庫を抱えないと いけなくなる ただし、 後⼯程が引き取る量のバラツキが⼤きければ⼤きいほど、前⼯程は余分な設備や⼈を 抱え込まざるをえなくなる 加⼯ラインはさらにまとめて プレスラインの完成品 を引き取ってしまい・・・

Slide 15

Slide 15 text

(C) Recruit Co.,Ltd. All rights reserved. 15 ジャスト・イン・タイムとは︖ プレスライン 加⼯ライン 組⽴ライン 前⼯程の プレスラインは たちまち混乱して しまう 組⽴ラインが まとめて加⼯ラインの完成品 を引き取ってしまうと・・・ 後⼯程の⽣産のバラツキの影響は前⼯程に遡るほど⼤きくなる 加⼯ラインはさらにまとめて プレスラインの完成品 を引き取ってしまい・・・

Slide 16

Slide 16 text

(C) Recruit Co.,Ltd. All rights reserved. 16 ジャスト・イン・タイムの⼤前提「平準化」とは︖ この悪循環を起こさないためには、各⼯程ラインの⽣産の⼭⾕をなくして、 ⽣産の流れの表⾯を穏やかにすることが必要不可⽋になる そのため、同じものの⽣産単位であるロットをなるべく⼩さくして、 前⼯程へばらつきの悪影響を及ぼさないようにする →TPSでは、これを「⽣産の平準化」と呼んでいる プレスライン 加⼯ライン 組⽴ライン ⽣産量 ロットを⼩さ くしてばらつ きを抑える ロットを⼩さ くしてばらつ きを抑える ロットを⼩さ くしてばらつ きを抑える 時間

Slide 17

Slide 17 text

(C) Recruit Co.,Ltd. All rights reserved. 17 平準化を実現するための改善 ロットを⼩さくして、なるべく同じものを続けて流さない「平準化」の考えは、 旧来の量産体制になれている各⼯程においては当初過酷なものだった Ex.プレスラインは当初段取替えに3時間かけていた 平準化の推進による改善の結果、最終的には3分まで短縮 プレスライン 加⼯ライン 組⽴ライン ⼀つのプレスの⾦型で連続して 打ち続けることができなくなる。 ↓ ⽬まぐるしく変わる製品の種類に応じて プレスの⾦型を替える、「段取替え」 を頻繁に⾏わなくてはならない。

Slide 18

Slide 18 text

(C) Recruit Co.,Ltd. All rights reserved. 18 ⾃働化とは︖ ・⾃動停⽌装置付きの機械によって、異常を⾃動検知できる仕組み ・また異常が発⽣した際に、作業者がラインをストップさせることを徹底すること →⾃働化によって、不良品の発⽣を防⽌し、作り過ぎを抑えることができる ②機械や ラインが ⽌まる(⽌める) ③真因を ⾒つけて 取り除く ④品質が 作り込まれる ①異常を検知 ⾃働化の改善サイクル

Slide 19

Slide 19 text

(C) Recruit Co.,Ltd. All rights reserved. 19 ⾃働化とは︖⾃⼯程完結 ニンベンのない⾃動化 ニンベンのついた⾃働化 異常(不良品)が混じり混んでも検査まで気づけない。 品質が悪いと⼿戻りを⽣み、⽣産速度が低下する。結果として在庫を抱え始めることに。 プレスライン 加⼯ライン 組⽴ライン 検査 プレスライン 加⼯ライン 組⽴ライン 検査 ⼿戻りの発⽣ 改善 改善 異常発⽣時に発⽣現場でラインが⽌まるため、その異常に対する処置がその場で施される = ⾃⼯程完結 品質が⼯程で作り込まれるため、結果として各⼯程での⽣産のバラツキが抑えられる。 ⽣産の流れを作るジャスト・イン・タイムにおいて、⾃働化は必要不可⽋な仕組み 異常検知 異常検知 異常検知

Slide 20

Slide 20 text

(C) Recruit Co.,Ltd. All rights reserved. 20 かんばんとは︖ 前⼯程 後⼯程 A A A A A A ①使うときに 引取りかんばんを外す ②引取りかんばんを もって部品を取りに⾏く ③⽣産指⽰かんばんをはすし、 引取りかんばんかんばんをつける ④引取りを付けた部品を後⼯程に運ぶ ①剥がされた⽣産指⽰かんばんに 指⽰された数だけ部品を造る ②⽣産指⽰かんばんを造った商品に つけて置き場におく A 引取りかんばんの流れ ⽣産指⽰かんばんの流れ A TPSの運⽤⼿段のために作られた道具で、 「いつ、どこで、何が、どれだけ使われたか」が書いてある1枚のカード ・かんばんが外れた分だけ後⼯程が前⼯程へ引き取りにいく(ニーズからプルしている) ・かんばんのないときは運ばない、作らない(作り過ぎ・運搬のムダを抑える) ・100%の良品でなければならない(⾃働化/⾃⼯程完結の実現) などTPSを実現するためのルールが定められている。

Slide 21

Slide 21 text

(C) Recruit Co.,Ltd. All rights reserved. 21 開発現場のカンバンボード(⼀例)※⼩さくて⾒づらくてごめんなさい ・かんばんのないときは運ばない、作らない(作り過ぎ・運搬のムダを抑える) →WIP制限をかける。例えばWIP:3まで そのレーンに4つ以上チケットを追加する場合は1つ完了させてから追加する。 (始める前に、終わらせることから始めることで作りすぎのムダを抑える) ・100%の良品でなければならない(⾃働化/⾃⼯程完結の実現) →各レーン毎にDoneの定義を設定する

Slide 22

Slide 22 text

(C) Recruit Co.,Ltd. All rights reserved. 22 開発現場のカンバンボード(⼀例)※⼩さくで⾒づらくてごめんなさい ・カンバンレーン毎の在庫量やリードタイムを 累積フローダイアグラムのレポートを使⽤すればすぐに可視化できる リードタイム 在 庫 数 在 庫 の 推 移

Slide 23

Slide 23 text

(C) Recruit Co.,Ltd. All rights reserved. 23 4.ソフトウェア開発の話(主にジャスト・イン・タイムと⾃働化)

Slide 24

Slide 24 text

(C) Recruit Co.,Ltd. All rights reserved. 24 ソフトウェア開発での話 ⿊⽥さん資料再掲

Slide 25

Slide 25 text

(C) Recruit Co.,Ltd. All rights reserved. 25 ソフトウェア開発におけるニーズ(市場の需要)からプル ニーズからプルしてくる流れはTPSそのもの 作り過ぎのムダを抑えるために、 ニーズに対して必要最低限の価値あるもの(MVP)を構築する モノ(開発) の流れ push push push push push ⑦構築する ⑧完成品(MPV) ⑨計測する ⑩計測された データから検証 ⑪学びを得る ⑫実証する ニーズ pull 情報(思考) の流れ ①仮設を⽴てる ②何を学ぶのか 決める ③必要な データは何か決める ④計測⽅法/計測設計は︖ ⑤何が必要か︖ ⑥どう設計 実装する︖ pull pull pull pull pull

Slide 26

Slide 26 text

(C) Recruit Co.,Ltd. All rights reserved. 26 ソフトウェア開発における平準化 = フロー効率 ⿊⽥さん資料再掲

Slide 27

Slide 27 text

(C) Recruit Co.,Ltd. All rights reserved. 27 平準化を実現するための改善 ⿊⽥さん資料再掲

Slide 28

Slide 28 text

(C) Recruit Co.,Ltd. All rights reserved. 28 平準化を実現するための体制 =作業者の多⼯程持ち スキルの平準化もTPSの「⽣産の平準化」において重要 開発チームのスキル運⽤マップの⼀例

Slide 29

Slide 29 text

(C) Recruit Co.,Ltd. All rights reserved. 29 平準化を実現するための体制 =作業者の多⼯程持ち TPSの多⼯程持ちに似た概念としては、クロスファンクショナルチームという考えがある 他チームへの引き継ぎのムダや待ち時間の削減をすることができる。 エンジニアT プロマネ/プロデザT データ分析T

Slide 30

Slide 30 text

(C) Recruit Co.,Ltd. All rights reserved. 30 平準化を実現するための体制 =作業者の多⼯程持ち 計画 開発 QA リリース 振り返り リファイン 「機能開発や⼤⽟のUIUX改善に特化したチーム」 ・ある程度勝ち筋が⾒えている案件を開発 →他社追従や仮説検証後のある程度勝ち筋が⾒えている案件メイン ・プロセス整備、改善を全体最適の観点から推進 →正しく⾼速に開発するために、プロセス整備改善を推進する プロダクトKGI,主要KPI(LTV/有料転換率/初回会員登録率など)の直接貢献をメイン⽬的に機能/UI改善開発を⾏うチーム 案件推進T 戦略改善T 「①重要テーマからチームKPI⽬標を持ち、その⽬標にコミットする」 ・重要テーマ・・・安⼼安全な出会いの提供(業者対策) ・KPI・・・業者マッチングUU/マッチングUU = 1%以下 「②仮説検証→開発実装→分析振り返り→仮説検証をチーム全員で⾏う」 ・チームの⽬的が全員で指標を追うことで重要テーマに沿った指標の達成に特化すること ・勝ち筋の⾒えていない不確実要素の⾼いテーマにおいて勝ち筋を⾒つけにいく検証サイクルも同時に回す ・⾼速で仮説検証を回すため、上記BMLをチーム内で回すこと プロダクトKGI等に直接貢献しないが中⻑期的に重要なテーマに沿って仮説検証を回し 開発チームの⽬的別チーム体制の⼀例

Slide 31

Slide 31 text

(C) Recruit Co.,Ltd. All rights reserved. 31 平準化を実現するための体制 =作業者の多⼯程持ち 顧客発⾒ 顧客実証 顧客開拓 組織構築 導⼊期 成⻑期 成熟期 SoEの要素 SoRの要素 SoRの要素 (納期・品質を守って正しく作る) SoEの要素 (答えがない中で勝ち筋を探索する) プロダクト Phase 開発に 求められる 要素 エンジニア の介在価値 体制 アサイン ⽅式 ü ⾼速なPoCの実施 ü ビジネス・技術双⽅の不確実性 が⾼い中での開発の遂⾏ ü 施術的負債の抑制 ü プロダクトの成⻑に合わせた 技術課題の解消 ü 技術的負債の解消 ü 案件の不確実性の解消 SoEの要素 SoRの要素 役割アサイン (技術的負債の解消や ドメインスペシャリストなど、 専⾨性がもとめられやすいため) クロスファンクショナル・ 機能アサイン (不確実性⾼い中、⾼速に開発するため) ただし、体制(プロセスも技術もそうですが)は、そのプロダクトのPhaseや状況に よって何が最適なのかは変わっくる。ケースバイケース。 複数の体制を混ぜ合わすことも多い。

Slide 32

Slide 32 text

(C) Recruit Co.,Ltd. All rights reserved. 32 ⾃働化・⾃⼯程完結 要件定義 移⾏ リリース 設計/実装 結合テスト 受け⼊れ テスト 改善 異常検知 改善 異常検知 Formatter/Linterの導⼊ テストコードしっかり書く コード品質のモニタリング レビューの型化・・・ 承認フロー Doneの定義・・・ 各⼯程での⾃⼯程完結の取り組み例 ワーキングアグリーメント 開発ポータル プロセス定義・・・ 形式知・標準化

Slide 33

Slide 33 text

(C) Recruit Co.,Ltd. All rights reserved. 33 5.まとめ

Slide 34

Slide 34 text

(C) Recruit Co.,Ltd. All rights reserved. 34 ü ニーズからプルしてくる ü 最⼩限のMVPの開発 ü 後⼯程が前⼯程に取りに来る ü ムダ、ムラ、ムリの徹底的排除 ü ⽣産の流れを管理する ü ロットを⼩さくして平準化(フロー効率)、究極は⼀個流し、 ü ⾃働化、⾃⼯程完結 5.まとめ