あんちぽさんメモ

  • 疎結合アーキテクチャとはなんですか?
    • システムのコンポーネント間の依存関係が少なく独立性が高い
    • 機能追加や改善に際して、部分的に閉じたシステムの改修だけで完結する
    • コンポーネントの役割が明確になっていて、インタフェースが決まっている
  • 疎結合アーキテクチャだと何が良いか
    • 安全に修正できる。
    • 高速に修正できる可能性が高い。
    • 大規模になっても開発速度が鈍化しない
  • 疎結合アーキテクチャを実現するためのプロセス
    • ビジネスが求める修正パターンに対して少ないコストで対応できる状況である必要がある
    • そのズレが生じていないか計測する必要がある。
    • そのメトリクスを測定するための関数が適応度関数
    • いろいろな指標の組み合わせであることが多い
      • かたよった修正箇所
    • また、ADRという意思決定の記録も重要
  • 疎結合アーキテクチャを実現するためのキーワード
    • ドメインイベントパターンとイベントストーミング
    • CQS/CQRS
    • 結果整合性
    • 冪等性
  • 疎結合アーキテクチャを阻害するアンチパターン
    • 複数のシステムが同一の DBを参照する
    • 循環参照的な依存構造と依存構造の可視化
    • 外部との依存関係がテストできない関係性が多数ある