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
OSSライブラリの呪縛と解放戦略
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
akkiee76
August 24, 2023
Technology
1
830
OSSライブラリの呪縛と解放戦略
「ミノ駆動さんと語るエンジニア怪談〜技術的負債の呪いにどう立ち向かうのかLT〜」で発表した資料になります。
https://forkwell.connpass.com/event/291332/
akkiee76
August 24, 2023
Tweet
Share
More Decks by akkiee76
See All by akkiee76
Graph Art with Charts API – Beyond Data Visualization
akkie76
0
200
Meet the Translation API
akkie76
0
440
コードレビューで開発を加速させるAIコードレビュー
akkie76
1
690
Android Target SDK 35 (Android 15) 対応の概要
akkie76
0
6.1k
コードレビューを支援するAI技術の応用
akkie76
5
1.2k
オブジェクト指向コードレビューの新しいアプローチ
akkie76
3
9.6k
Jetpack Compose で Adaptive Layout に対応しよう
akkie76
0
1.1k
Observationではじめる値監視
akkie76
4
4.8k
TextField 表示スタイル変更の 有効活用例 5 選
akkie76
0
750
Other Decks in Technology
See All in Technology
~Everything as Codeを諦めない~ 後からCDK
mu7889yoon
3
180
AI時代、1年目エンジニアの悩み
jin4
1
140
メルカリのAI活用を支えるAIセキュリティ
s3h
8
5.9k
しろおびセキュリティへ ようこそ
log0417
0
240
AI推進者の視点で見る、Bill OneのAI活用の今
sansantech
PRO
2
310
【NGK2026S】日本株のシステムトレードに入門してみた
kazuhitotakahashi
0
280
Amazon Bedrock AgentCore 認証・認可入門
hironobuiga
2
480
ゼロから始めたFindy初のモバイルアプリ開発
grandbig
2
610
いよいよ仕事を奪われそうな波が来たぜ
kazzpapa3
3
330
Vitest Highlights in Angular
rainerhahnekamp
0
120
IaaS/SaaS管理における SREの実践 - SRE Kaigi 2026
bbqallstars
3
1.2k
月間数億レコードのアクセスログ基盤を無停止・低コストでAWS移行せよ!アプリケーションエンジニアのSREチャレンジ💪
miyamu
0
630
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
160
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
120
Navigating Weather and Climate Data
rabernat
0
85
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
430
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
71
It's Worth the Effort
3n
188
29k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
50
What does AI have to do with Human Rights?
axbom
PRO
0
2k
Are puppies a ranking factor?
jonoalderson
1
2.7k
Transcript
©2023 RAKUS Co., Ltd. OSSライブラリの呪縛と解放戦略 2023/08/24 ミノ駆動さんと語るエンジニア怪談 LT @akkiee76
Akihiko Sato 株式会社ラクス / 楽楽精算 / Lead Engineer @akkiee76 自己紹介
OSSライブラリのアップデート戦略 今日のテーマ
OSSライブラリの アップデートしていますか?
アップデート大変ですよね?
アップデートしないと 様々な問題が発生します 👻
OSSライブラリの呪縛 1 • セキュリティリスク • 互換性の懸念 • 保守性の低下 ◦ 公式のサポートが受けられないことも
• 法的リスク ◦ ライセンス違反などの法的問題が発生ことも アップデートしないとどうなるか?
OSSライブラリの呪縛 2 • セキュリティホールが増える 😈 • 顧客情報が流出することも 😈 • 社会的信頼の低下
😈 • 株価低下 😈 更にアップデートしないとどうなるか? プロダクト存続の危機 😅
OSSライブラリの呪縛 3 • 対応コストが取れない 😭 • 技術的な難易度が高い 😭 • 仕様を知る人がいない
😭 どうしてアップデートが難しいか? アップデートのハードルが高くなる 😅
OSSライブラリの呪縛を解放しよう • OSSライブラリを管理する ◦ アップデート日、EOLスケジュール • アップデートのコストを見積もる • アップデートを開発スケジュールに計上する(必要なコスト) 継続的なアップデートを行うためには?
アップデートのハードルを下げよう 😃
OSSライブラリ アップデート対応例 🔨
OSSライブラリをアップデートしよう 1 • OSSライブラリを見える化(一覧化)😃 • 定期的なアップデートを行う 😃 • アップデートはバージョン開発の初期に行う 😃
弊社での主なアップデートへの取り組み
OSSライブラリをアップデートしよう 2 • 管理ツールで一覧化 ◦ yamory、楽楽販売、スプレッドシート • アップデート時のバージョン、最終リリース日を記載 • 難易度・優先度を棚卸し
◦ 難易度・工数は定量的に判定し、工数に反映する OSSライブラリを見える化(棚卸し)する 😃
OSSライブラリをアップデートしよう 3 • 半年〜1年周期でアップデートを実施 • 開発リストに計上する(コストを計上する) ◦ レビュー待ちのタスクなどでコツコツ行う • アップデートする組み合わせは柔軟に組み替える
◦ 影響度、難易度によってスコープを変える 定期的なアップデートを行う 😃
OSSライブラリをアップデートしよう 4 • 場合によっては全機能影響を受けることも ◦ 機能開発中だとデグレを発見しやすくなる • 可能であればアップデート後から開発スタート ◦ merge
を次バージョン初期にするでもOK! アップデートはバージョン開発初期に行う 😃
• OSSライブラリを見える化(一覧化)😃 • 定期的なアップデートを行う 😃 • アップデートはバージョン開発の初期に行う 😃 主なアップデートへの取り組み
• Frontendライブラリの アップデートで苦労した話 • これで失敗しない!JUnit 5 へのマイグレーション方法 • 既存プロジェクトへの Swift
Concurrency 導入戦略 • 大規模AndroidアプリのDIをKoinからHiltへ移行するTIPS これまで行なってきたアップデート戦略
まとめ • OSSライブラリは生物 ◦ 対応しないとハードルが上がる • アップデートは定期的に ◦ アップデート不可能にならないように定期的にアップデート! •
アップデートは戦略を持って行おう ◦ アップデート対応は開発スケジュールに入れる!
Thank you !