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
モノリスからマイクロフロントエンドに踏み出した話
Search
k2491p
February 22, 2023
Programming
420
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
モノリスからマイクロフロントエンドに踏み出した話
k2491p
February 22, 2023
Other Decks in Programming
See All in Programming
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
480
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
290
「人を評価する AI」の設計と実装
ryoyanara
0
180
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
160
Apache Hive: Toward a Cloud Native Lakehouse
okumin
0
180
【やさしく解説 設計編・中級 #4】ルールの寿命と、システムの年輪
panda728
PRO
2
180
Google Apps Script で Ruby を動かす
kawahara
0
130
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
440
【QA Test Talk Vol.8】AI-DLC による Whole Team Approach の加速
pkshadeck
PRO
0
110
PHP に部分適用が来るぞ!……ところで何それ?おいしいの? #phpcon / phpcon-2026
shogogg
0
580
テーブルをDELETEした
yuzneri
0
140
Android CLI
fornewid
0
210
Featured
See All Featured
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
The untapped power of vector embeddings
frankvandijk
2
1.8k
AI: The stuff that nobody shows you
jnunemaker
PRO
9
890
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
45k
Documentation Writing (for coders)
carmenintech
77
5.4k
Become a Pro
speakerdeck
PRO
31
6.2k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.3k
Navigating Weather and Climate Data
rabernat
0
460
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
Mind Mapping
helmedeiros
PRO
1
300
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Transcript
モノリスからマイクロフロ ントエンドに踏み出した話 2023/02/22 1
技術戦略って何? プロダクトの抱える問題点 解決策 よさ と つらみ 将来的な話 01 02 03
04 05 2
| 01 技術戦略って何? | SaaSにおける フロントエンドの技術戦略 3
SaaSにおけるフロントエンドの技術戦略 4
”技術戦略”って何? 5
辞書で調べてみると... ① いくさのはかりごと。特に、戦いに勝つための大局的な方法や策略。戦術より上位の概念。 ② ある目的を達成するために大局的に事を運ぶ方策。特に、政治闘争、企業競争などの長期的な策略。 6 戦略とは – コトバンク 精選版
日本国語大辞典より https://kotobank.jp/word/%E6%88%A6%E7%95%A5-89017
フロントエンドの技術戦略 ↓ フロントエンドの技術において、 ある目的を達成するための方策 7
”ある目的”って何? 8
今回はSaaSという文脈なので... ユーザーに価値を提供すること 9 ある目的とは
変化に柔軟に対応し ユーザーに継続的に価値を提供すること 10 ある目的とは(もう一声)
フロントエンドの技術戦略 ↓ フロントエンドの技術において、 ユーザーに継続的に価値を提供するための方策 11
FORCASの開発における問題 ユーザーに継続的に価値を提供する という視点を踏まえて | 02 プロダクトの抱える問題点 | 12
営業DXソリューション • ABMの実践や営業生産性向上を支援する ◦ 国内企業150万社、業界560区分、利用サービス1,600種 類など、様々なデータを分析し、戦略実行と効果測定 を行う • 2017年5月にリリース ◦
以降、6年にわたって新規開発や保守を行っている 13 FORCASとは
アーキテクチャーはざっくりこんな感じ 14 FORCASの開発における問題点 そこそこでかい front そこそこでかい core-api api1 api2 api3
モノリス 認証に必要 な情報
こんな問題が浮上しました • 他の画面の修正が影響を与える可能性がある • デプロイに時間がかかる ◦ リグレッションテスト全部通す • ビッグバンリリースになりがち •
認知負荷が高い 15 FORCASの開発における問題点 “変化に柔軟に対応し、ユーザーに継続的に価値を提供すること” に反している
マイクロフロントエンド導入 ユーザーに継続的に価値を提供する という視点を踏まえて | 03 解決策 | 16
17 マイクロフロントエンド https://micro-frontends.org
18 マイクロフロントエンド https://micro-frontends.org
19 マイクロフロントエンド https://micro-frontends.org micro frontend1 bff1 micro service1 micro frontend2
bff2 micro service2
20 FORCASに導入したマイクロフロントエンドのアーキテクチャー そこそこでかい front そこそこでかい core-api api1 api2 api3 Micro
Frontend auth-api bff api モノリス 認証に必要 な情報
マイクロフロントエンド導入 して感じたこと ユーザーに継続的に価値を提供する という視点を踏まえて | 04 よさ と つらみ |
21
よかったこと FORCASにマイクロフロントエンドを導入してみて • 独立したデプロイが可能 ◦ デプロイの時間が抑えられる ◦ モノリス側にとらわれない • マイクロフロントエンドの修正時に、モノリス側にバグ混入の可能性が(基本的に)ない
• 細かいリリースをした • 認知負荷の減少 • 技術選択ができた 22 “変化に柔軟に対応し、ユーザーに継続的に価値を提供すること
つらかったこと FORCASにマイクロフロントエンドを導入してみて • モノリスに追加していくより短期的にはコストが高い ◦ パイプラインの作成 ◦ 認証周りの実装 • 情報がそれほど豊富ではない
23
マイクロフロントエンドで こんな世界が作れたらいいな ユーザーに継続的に価値を提供する という視点を踏まえて | 05 将来的な話| 24
25 プロダクト間でマイクロフロントエンドをシェア Product B Micro Frontend Product A
26 プロダクト間でマイクロフロントエンドをシェア Product B マイクロフロントエンド群 Micro Frontend1 Micro Frontend2 Micro
Frontend3 Micro Frontend4 Micro Frontend5 Micro Frontend6 Product C Product D Product A
今日の結論 | xx 余談 | 27
マイクロフロントエンドはいいぞ 28
「この技術便利そう」「この技術面白い」と 興味を持って取り組むことは、とても良いこ と。ただ”戦略”という枠組みにおいては、組 織としての目的や課題を踏まえた選択をする と良いかもしれませんね。 目的と課題に沿って 技術戦略を策定する 29
最後までご清聴ありがとうございました。 Thank you 30