D-6 レガシーモダナイゼーションに効く!オススメのモダン化手法3選
デブサミでメモしたことをつらつら書いていきます。
モダナイゼーションの提案はほぼジオゲッサー
いきなりお客さんに呼ばれてなんとかしてくださいと言われる
モダナイズ(地図作り)の例
![](https://assets.st-note.com/img/1708652258811-TePRzEAfnZ.jpg?width=1200)
例えば、地図がないまま始めると
![](https://assets.st-note.com/img/1708652304001-xckNbzdSHV.jpg?width=1200)
モダナイズ対象を四象限に分けて考える
![](https://assets.st-note.com/img/1708652325406-CXdANFYJoN.jpg?width=1200)
ドメイン駆動設計
![](https://assets.st-note.com/img/1708652372662-rNcvVhOd0i.jpg?width=1200)
戦略的ドメイン駆動設計
・企業の事業戦略に呼応したモデリング
・ドメイン、サブドメイン
・日本でよく言われてるのがこっち
得られること
・全体像を全員で把握
・分類・命名されたドメイン像
・モダナイズしたい領域特定
すでにシステム化されているかどうか
新しくシステム化するべきかどうか
・ドメインごとのステークスホルダーの明確化
・(できれば)各ドメインで使われている言語(ユビキタス言語)の整備
アプリケーションシンプリファイ(旧ルール駆動開発)
![](https://assets.st-note.com/img/1708652467039-ViIwo88KPa.jpg?width=1200)
ソースコードを見ないでシンプルアプリケーションで始める理由
場合によってはソースコードを見過ぎない方がよかったりする
![](https://assets.st-note.com/img/1708652483237-45h7kAC8wr.jpg?width=1200)
イテレーティブに品質基準を満たす理由
![](https://assets.st-note.com/img/1708652511392-0h7Y403BKN.jpg?width=1200)
3つの鉄の鉄則
・ユーザーインターフェース/インテグレーション/ビジネスロジックを分離実装すべし
・ビジネスロジックはステートレスに実装し何回でも実行可能にすべし
・新旧処理結果比較のための仕組みを最初から用意すべし
シンプルアプリケーションをどう活かすか
![](https://assets.st-note.com/img/1708652547625-N6iPkLzKe7.jpg?width=1200)
活かす時のありがちな未来
![](https://assets.st-note.com/img/1708652565295-kPluBNstpQ.jpg?width=1200)
アジャイルアプローチ
レガシーモダナイズでのアジャイルアプローチで重要なこと
・マイクロサービスを目指すかどうかに関わらず、サービスの分割の仕方とクラウドネイティブな繋げ方を知っておく
・サービスの分割粒度にこだわりすぎない
・一気に分割/一気に接続しようとしないで漸進的にやるのが吉
・アジャイルアプローチ ≠ アジャイル開発
まとめ
![](https://assets.st-note.com/img/1708652617627-i9331scM19.jpg?width=1200)
![](https://assets.st-note.com/img/1708652617649-3e6bYE0H3W.jpg?width=1200)
この記事が気に入ったらサポートをしてみませんか?