6.1 仕組み6.1.1 ① 進化の影響を受ける次元を特定する6.1.2 ② それぞれの次元に対して適応度関数を定義する6.1.3 ③ デプロイメントパイプラインを使って適応度関数を自動化する6.2 グリーンフィールドプロジェクト6.3 既存のアーキテクチャを改良する6.3.1 適切な結合と凝集6.3.2 開発プラクティス6.3.3 適応度関数リファクタリングと再構築6.3.4 COTSとの関わり合い6.4 アーキテクチャの移行6.4.1 移行手順6.4.2 モジュール相互作用を進化させる6.5 進化的アーキテクチャ構築のための手引き6.5.1 不要な変数を取り除くスノーフレークの危険性6.5.2 決定を可逆にする6.5.3 予測可能ではなく進化可能を選ぶ6.5.4 腐敗防止層を構築する6.5.5 ケーススタディ:サービステンプレート6.5.6 犠牲的アーキテクチャの構築6.5.7 外部の変更を軽減するインターネットを壊した11行のコード6.5.8 ライブラリのアップデートとフレームワークのアップデート6.5.9 スナップショットよりも継続的デリバリーを選ぶ6.5.10 内部的にサービスをバージョン付けする6.6 ケーススタディ:PenultimateWidgetsの評価サービスの進化