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
事業成長を後押しする ほどよいリプレイスの進め方 / Th Way to Replace fo...
Search
コドモン開発チーム
September 30, 2025
0
42
事業成長を後押しする ほどよいリプレイスの進め方 / Th Way to Replace for Business Growth
コドモン開発チーム
September 30, 2025
Tweet
Share
More Decks by コドモン開発チーム
See All by コドモン開発チーム
長期運用プロダクトこそ効くコンテキスト管理の妙 / The Art of Context Management for Long-Running Products
codmoninc
0
25
ECSとEFSを組み合わせた Batchサーバー デプロイ方法の模索 / Exploring deployment methods for a Batch server using ECS and EFS
codmoninc
1
55
(ほぼ)ウォーターフォール開発かつ (ほぼ)手動テストの環境で仕事してきたQAエンジニアが コドモンに入って驚いたこと / A QA Engineer's Culture Shock at Codmon
codmoninc
0
190
PHPロゴの正しい使い方〜意外と知らない公式仕様〜 / how to properly use the php logo
codmoninc
0
70
保育・子育てを支えるデザイン~横断UXチームの取り組みと成果~ / Designing for Childcare and Parenting
codmoninc
0
270
コドモンQAエンジニア紹介 / CoDMON QA Engineer Introduction
codmoninc
0
120
4年間、組織に向き合う中で出会った リアルな悩みと乗り越え方 / Facing Organizational Challenges: Real Struggles and Solutions
codmoninc
1
290
ひとりめEMとして70人組織になるまでにやったこと / What I did to help the organization grow to 70 people as the first EM
codmoninc
0
210
コドモンAnalyticsグループの、 2年間の成果と課題 / Codmon Analytics Group: Achievements and Challenges Over Two Years
codmoninc
0
130
Featured
See All Featured
Embracing the Ebb and Flow
colly
88
4.9k
GraphQLとの向き合い方2022年版
quramy
49
14k
Practical Orchestrator
shlominoach
190
11k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
RailsConf 2023
tenderlove
30
1.3k
GitHub's CSS Performance
jonrohan
1032
470k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Transcript
事業成長を後押しする ほどよいリプレイスの進め方
2 名前:ディミトロフ チャブダール 所属:エンジニア・写真販売機能 国籍:ブルガリア 在留資格満了日まであと:7ヶ月 自己紹介
テーマ
4 • リプレイスはどう手をつけていくといいのか • リプレイスのROIをあげたい • リプレイスのコストを下げたい 課題
サービス紹介
すべての先生に 子どもと向き合う 時間と心のゆとりを こんなプロダクトを開発しています メインプロダクトは、こども施設職員の業務を支援するWebアプリケーション。 保護者と施設のやり取りを支えるモバイルアプリケーションや、施設職員向けモバイル版 アプリケーション、外部サービスと連携するAPIなども開発しています。 6
7
None
None
None
リプレイスの背景
*イメージ
*イメージ • グロースのポテンシャルが高い • 機能改修、拡張をどんどんしたい
*イメージ
。。どれぐらいかかるの • 写真販売にまつわる全体にリプレイスの規模間 ◦ 〜1年あればいける、かも、どうだろう
1年か。。。そもそもリプレイスで やりたいことはなんだっけ
17 • システムの改善に投資をして、将来的に提供できるバリューを向上させる リプレイスの意義 https://vibratingmelon.com/2011/06/10/why-you-should-almost-never-rewrite-code-a-graphical-guide/
18 • システムの改善に投資をして、将来的に提供できるバリューを向上させる リプレイスの意義 https://vibratingmelon.com/2011/06/10/why-you-should-almost-never-rewrite-code-a-graphical-guide/ ROI
19 • システムの改善に投資をして、将来的に提供できるバリューを向上させる リプレイスの意義 https://vibratingmelon.com/2011/06/10/why-you-should-almost-never-rewrite-code-a-graphical-guide/ ROI COST
ROIを高める • 今度のプロダクト戦略と紐づいている箇所にフォーカスしたい ◦ リプレイスした上で機能拡張をすればするほどリプレイスのROIは高いと言える ◦ 逆にリプレイスしても機能拡張など行わないとリプレイスのROIは低いと言える COSTを下げる • リプレイスのスコープを小さくすることでコストを削減できる(かも)
写真販売でとっているアプローチ • ROIを高める ◦ 中長期で何がしたいのかをシステムと紐付ける • コストを減らす ◦ 「集約」単位でリプレイスを行う
0.共通のモデルを作成
23 イベントストーミング
24 • いろいろな職種のメンバーが集まり、10名程度で実施! ◦ プロダクトマネージャー ◦ UI/UXエンジニア ◦ エンジニア ◦
ビジネスサイドメンバー 参加メンバー
25 イベントストーミング 施設の設定 写真の公開 写真の購入 写真の印刷 利益の還元
1.ROIの最大化 プロダクト戦略とリプレイス対象を紐付ける
27 • 中長期のプロダクトでやりたいことを洗い出す *提供したい機能一覧イメージ 今後やりたい施策を洗い出す
28 施設の設定 写真の公開 写真の購入 写真の印刷 利益の還元
29 施設の設定 写真の公開 写真の購入 写真の印刷 利益の還元 エンジニアで施策とドメインを紐付けする
30 施設の設定 写真の公開 写真の購入 写真の印刷 利益の還元 エンジニアで施策とドメインを紐付けする
31 施設の設定 写真の公開 写真の購入 写真の印刷 利益の還元 🔥🔥🔥 収集したい集約が可視化される
2.コストの最小化 リプレイスは「集約」単位で行う
33 • リプレイスのスコープを小さくするために、「集約」単位 ◦ 集約はドメイン制約を担保してくれる単位 (なるべく)「集約」単位でリプレイス
34 施設の設定 写真の公開 写真の購入 写真の印刷 利益の還元
35 施設の設定 写真の公開 写真の購入 写真の印刷 利益の還元 ここがROI高そうなのでリプレイスをしたい
36 施設の設定 写真の公開 写真の購入 写真の印刷 利益の還元 頑張ってここだけリプレイスする
• 1つのジャーニーが2つのシステムをまたいで実現 ◦ 旧システム:アルバムの作成写真のアップロード ◦ 新システム:アルバムの閲覧、カートの追加 ◦ 旧システム:写真の購入、印刷、利益還元 • ストラングラーフィグパターン
◦ 新旧システム同時稼働 ◦ 部分的に移行 • デメリットとして、分散システムになるため複雑性は確実に生まれま す! ◦ それを許容してもリプレイスのコストを小さくできるメリットは大きい 小さい単位でのリプレイス
• リプレイスが数ヶ月単位で部分的に完了されていく ◦ それでもしっかり難しい、、 • 完了した集約はすぐにしっかり恩恵を受けれる ◦ 前は難しかった施策がスピーディーかつ安全に実施可能 • 計画の調整が柔軟に
• 「施策ついでにリプレイス」みたいな動きができる ie「大型プロジェクト」じゃないことの様々なありがたみ 実体験 良かったこと
• 分散システムの複雑性が一定生まれる • 途中でリプレイスの方針が変わったら、分散モノリス的な状態になるリ スク 実体験 デメリット
まとめ
41 • リターンの高いリプレイスの範囲 を見つけるために、 今後やりたいことと関連する箇所 を紐付ける →そのやり方としてイベントストーミングが良かった! • コストを減らすため リプレイスのスコープを削減しよう
→そのやり方として「集約」という単位が良かった! まとめ
ご清聴ありがとうございました