O’REILLY Learning「Googleのソフトウェアエンジニアリング ―持続可能なプログラミングを支える技術、文化、プロセス」19章〜25章
19章 GoogleのコードレビューツールCritique

20章 静的解析
静的解析は、プログラム内のバグを、本番環境のコードとしてチェックインされる前に早期に発見。
Bug patterns
https://errorprone.info/bugpatterns
21章 依存関係管理
依存関係管理、言い換えればライブラリーやパッケージや管理外の依存関係が形成するネットワークの管理は、ソフトウェアエンジニアリングにおける、理解が最も進んでおらず最も難解な問題。
ダイアモンド依存関係問題
依存関係ネットワークを管理する方式の事実上の標準は、セマンティックバージョニング(SemVer)。
22章 大規模変更
大規模変更(large-scale change/LSC)
23章 継続的インテグレーション
継続的インテグレーション(Continuous Integration)
CIの根本的なゴールは、問題のあるコード変更をできるだけ早期に、自動的に捕捉すること。
継続的インテグレーション (第二義):自己の属する複雑かつ高速に発展するエコシステム全体の、継続的な組み立てならびにテスト。
高速なフィードバックループ
CIからのフィードバックが広くアクセス可能であること
継続的ビルド(Continuous Build/CB)
継続的テスト(Continuous Testing/CT)
24章 継続的デリバリー
完了定義(definition of done/DoD)
25章 サービスとしてのコンピュート
サービスとしてのコンピュート(Compute as a Service/CaaS)
1つのサービスは全てを統べる
J.R.R. トールキンの小説『指輪物語』(原題:The Lord of the Rings)の、全てを統べる「一つの指輪」をもじったもの。