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
1
340
モノリスからマイクロフロントエンドに踏み出した話
k2491p
February 22, 2023
Tweet
Share
Other Decks in Programming
See All in Programming
Why Jakarta EE Matters to Spring - and Vice Versa
ivargrimstad
0
1.1k
3 Effective Rules for Using Signals in Angular
manfredsteyer
PRO
0
100
Compose 1.7のTextFieldはPOBox Plusで日本語変換できない
tomoya0x00
0
190
Contemporary Test Cases
maaretp
0
130
弊社の「意識チョット低いアーキテクチャ」10選
texmeijin
5
24k
광고 소재 심사 과정에 AI를 도입하여 광고 서비스 생산성 향상시키기
kakao
PRO
0
170
Laravel や Symfony で手っ取り早く OpenAPI のドキュメントを作成する
azuki
2
110
Snowflake x dbtで作るセキュアでアジャイルなデータ基盤
tsoshiro
2
520
Click-free releases & the making of a CLI app
oheyadam
2
110
初めてDefinitelyTypedにPRを出した話
syumai
0
400
C++でシェーダを書く
fadis
6
4.1k
Content Security Policy入門 セキュリティ設定と 違反レポートのはじめ方 / Introduction to Content Security Policy Getting Started with Security Configuration and Violation Reporting
uskey512
1
530
Featured
See All Featured
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Ruby is Unlike a Banana
tanoku
97
11k
The World Runs on Bad Software
bkeepers
PRO
65
11k
KATA
mclloyd
29
14k
GraphQLとの向き合い方2022年版
quramy
43
13k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Embracing the Ebb and Flow
colly
84
4.5k
Designing for Performance
lara
604
68k
How GitHub (no longer) Works
holman
310
140k
A Philosophy of Restraint
colly
203
16k
YesSQL, Process and Tooling at Scale
rocio
169
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