マイクロサービスはアトミックな操作で閉じるべきシステム分割論に基づいたアーキテクチャなのか
渡辺さんのブログを読んで、マイクロサービスはアトミックな操作で閉じるべきシステム分割論に基づいたアーキテクチャなのかどうか、という問題提起をしていると感じた。
アジャイルとマイクロサービスは最悪な組み合わせ - 設計者の発言
データモデリングで考えれば、サブシステム分割の単位は、CRUD操作で閉じるようにシステム分割すべき。
一方、マイクロサービスは僕の考えでは、外部インターフェイスの一つのアーキテクチャに過ぎないのに、ものすごいシステムアーキテクチャみたいな幻想があって、システム分割論と混同する開発者が多いのでは、と思う。
アジャイル開発というプロセスでは、特にスクラムでは、プロセスに特化していて、ソフトウェア技術や設計アーキテクチャの話はあえて避けていると思う。
だからこそ、スクラムという開発プロセスのフレームワークはIT業界のあらゆるプロジェクトに適用できるし、製造業など他の業界でも使われるようになった。
しかし、それですべての問題が解決できるわけではない。
実際、XPやScrumを生み出した人たちのキャリアを見ると、ソフトウェア開発の経験がとても豊富で、オブジェクト指向設計、テスト駆動開発、継続的インテグレーションなど数多くのベストプラクティスを生み出している。
彼らは技術的要素を軽視しているわけではない。
マイクロサービスはSaaSのようなWebシステムでは、外部インターフェイスの公開APIとして優れている技術と思うが、それですべての問題が解決できるわけでもないし、この辺りの技術の実装はとても難しいと個人的に思っている。
なぜなら、こちらが仕様を準備して想定しているような使い方を、外部APIを利用する人たちはしない時が多いとか、非機能要件のうち性能要件やセキュリティ要件の実現が非常にシビアだったり、割と罠が多いからだ。
この辺りの技術は色々考えてみたい。
| 固定リンク
「モデリング」カテゴリの記事
- 組込みソフトウェア開発でUMLを使う手法を説明した書籍のリンク(2022.06.17)
- 超高速開発でアジャイル開発を実現する話に違和感がある(2022.05.06)
- 事業活動のシステム化は非差別化しない汎用ドメインや支援ドメインに注力すべき(2022.04.13)
- 「大国政治の悲劇」の感想~現代はパワーポリティクスの歴史に戻ったみたいだ(2022.03.25)
- マイクロサービスはアトミックな操作で閉じるべきシステム分割論に基づいたアーキテクチャなのか(2022.03.20)
「ソフトウェア工学」カテゴリの記事
- メトリクス分析のコツは良いIssueを見つけること(2022.06.29)
- プロセス設計はどの範囲を指すのか?~プロマネの仕事はテーラリングにある(2022.06.19)
- 「大人の学びパターン・ランゲージ」の感想~知識と経験を行ったり来たりするタイミングを大切にする(2022.06.05)
- 「コーディングを支える技術」は良い本だ(2022.05.26)
- ソフトウェアテスト技法練習帳はテストケースの切り方に困っている人向けにおすすめの本だ(2022.05.14)
コメント