Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
© Link and Motivation Group スモールリリースで品質とデリバリーを向上させる リンクアンドモチベーション Developer Productivityユニット プラットフォーム推進グループ 田中 克弥
Slide 2
Slide 2 text
2 © Link and Motivation Group 田中 克弥 株式会社リンクアンドモチベーション Developer Productivityユニット プラットフォーム推進グループ ● 2021年新卒入社 ● バックエンドメインのフルスタックエンジニア ● モチベーションクラウドシリーズ内外のシステム 連携開発に従事 ● 趣味は漫画とコーヒー 自己紹介
Slide 3
Slide 3 text
モチベーションクラウド 診断 変革 ※ 2022年度 実績 10,060 社 312 万人
Slide 4
Slide 4 text
4 © Link and Motivation Group スモールリリースによって 品質とデリバリーを向上させる方法 ※本発表で共有する機能・コードは実際のものとは異なります。 ※本発表で共有する解消方法が全てではございません。あくまで一例としてご参考いただけたらと思います。 今日お話しする内容
Slide 5
Slide 5 text
© Link and Motivation Group 5 なぜスモールリリースをしようとしたか?
Slide 6
Slide 6 text
6 © Link and Motivation Group 実際に起きていたこと
Slide 7
Slide 7 text
7 © Link and Motivation Group 実際に起きていたこと 変更ファイル・変更行が多いことによって - レビューコスト大 - コンフリクト発生 - バグ混入リスク大 - バグ混入時の原因特定・復旧工数大
Slide 8
Slide 8 text
8 © Link and Motivation Group 実際に起きていたこと_ビックバンリリース master リリースの大きさ feature/A feature/B feature/C
Slide 9
Slide 9 text
9 © Link and Motivation Group 実際に起きていたこと_コンフリクト feature/A feature/B feature/C feature/D めちゃコード 変わっとるやん... コンフリクト
Slide 10
Slide 10 text
10 © Link and Motivation Group 実際に起きていたこと_バグった時の切り戻し master 全て切り戻しするので、場合によっては復旧に時間がかかる (マイグレーション、ライブラリVer.UPとか) feature/A feature/B feature/C テーブル情報変えてる から切り戻し待って!
Slide 11
Slide 11 text
11 © Link and Motivation Group 実際に起きていたこと_バグった時の切り戻し master 全て切り戻しするので、場合によっては復旧に時間がかかる (マイグレーション、ライブラリVer.UPとか) feature/A feature/B feature/C テーブル情報変えてる から切り戻し待って! ビックバンリリースによって 品質にも、デリバリーのプロセスにも悪影響が出ていた
Slide 12
Slide 12 text
12 © Link and Motivation Group スモールリリース実現後 master feature/A feature/B feature/C
Slide 13
Slide 13 text
13 © Link and Motivation Group スモールリリース実現後_バグっても切り戻しが容易 master feature/A feature/B feature/C 切り戻すのはここだけ
Slide 14
Slide 14 text
14 © Link and Motivation Group スモールリリース実現後_バグっても切り戻しが容易 master feature/A feature/B feature/C 切り戻すのはここだけ スモールリリースによって 品質とデリバリーが向上! ※大きくても1リリース20ファイル以下 障害発生率は1/3以下、障害復旧時間は1/2以下に
Slide 15
Slide 15 text
© Link and Motivation Group 15 どうやってスモールリリースをするのか?
Slide 16
Slide 16 text
16 © Link and Motivation Group スモールリリース_大方針 ファイル(メソッド)ごとにリリースする リファクタリング APIごとにリリースする 新規機能開発
Slide 17
Slide 17 text
17 © Link and Motivation Group スモールリリース_リファクタリング(言語VerUP)の場合 master 100ファイル 影響範囲 1回 リリース回数 100ファイル リリースの大きさ
Slide 18
Slide 18 text
18 © Link and Motivation Group スモールリリース_リファクタリング(言語VerUP)の場合 master 100ファイル 影響範囲 100回 リリース回数 1ファイル リリースの大きさ
Slide 19
Slide 19 text
19 © Link and Motivation Group スモールリリース_リファクタリング(言語VerUP)の場合 master 100ファイル 影響範囲 100回 リリース回数 1ファイル リリースの大きさ ファイルごとに分割してスモールリリースを実現する
Slide 20
Slide 20 text
20 © Link and Motivation Group スモールリリース_新規機能開発の場合 master 5API 影響範囲 1回 リリース回数 5API リリースの大きさ
Slide 21
Slide 21 text
21 © Link and Motivation Group スモールリリース_新規機能開発の場合 master 5API 影響範囲 5回 リリース回数 1API リリースの大きさ
Slide 22
Slide 22 text
22 © Link and Motivation Group スモールリリース_新規機能開発の場合 master 5API 影響範囲 5回 リリース回数 1API リリースの大きさ APIごとに分割してスモールリリースを実現する
Slide 23
Slide 23 text
23 © Link and Motivation Group スモールリリース_新規機能開発の場合_備考 スモールリリースはしたいけど 新機能の顧客公開は 特定の日付(リリース日)にまとめて行いたい
Slide 24
Slide 24 text
24 © Link and Motivation Group スモールリリース_新規機能開発の場合_備考 master フィーチャーフラグを使って指定したタイミングで顧客に公開する OFFの時は公開されない ONになると公開される OFF ON
Slide 25
Slide 25 text
© Link and Motivation Group 25 まとめ
Slide 26
Slide 26 text
26 © Link and Motivation Group スモールリリースによって品質とデリバリーを向上させる方法 デリバリーのプロセス をシンプルにしたい ファイル(メソッド) ごとに分割 WHY なぜやるか 障害を減らしたい HOW どうやってやるか WHAT やること スモールリリース API ごとに分割
Slide 27
Slide 27 text
27 © Link and Motivation Group お知らせ ● エンジニアリングマネージャー ● プロダクトマネージャー ● テックリード ● サーバーサイドエンジニア ● フロントエンドエンジニア ● SRE ● データエンジニア ● CRM ● UXデザイナー 週1でテックブログ更新しています! まずはカジュアルにお話しましょう! ご連絡お待ちしております! 全職種、積極採用中です!