継続的インテグレーション入門:開発プロセスを自動化する47の作法(Paul M. Duvall, Steve Matyas, Andrew Glover)
書籍情報
- 著者:Paul M. Duvall(著), Steve Matyas(著), Andrew Glover(著), 丸山大輔(訳), 大塚庸史(訳), 岡本裕二(訳), 亀村圭助(訳)
- 発行日:2009-08-10
- ISBN:9784822283957
書籍目次
- まえがき マーチン・ファウラー
- まえがき ポール・ジュリアス
- はじめに
- 第1部 CIの背景――原則とプラクティス
- 第1章 始めよう
- 変更を起点としてビルドを実行する
- CIの機能
- まとめ
- 質問
- 第2章 継続的インテグレーションの紹介
- CIのある1日
- CIの価値とは?
- CI導入を妨げるものは何か?
- 「継続的」なインテグレーションに必要なものは?
- CI導入の時期と方法は?
- インテグレーションの進化
- CIと他の開発プラクティスの関係は?
- CI環境のセットアップにどれぐらい時間がかかるのか?
- CIと開発者
- 頻繁にコードをコミットする
- ビルドが失敗したコードをコミットしない
- 失敗したビルドをすみやかに修復する
- 開発者テストを自動化する
- すべてのテストとインスペクションを合格させる
- プライベートビルドを実行する
- ビルドが失敗したコードを取得しない
- まとめ
- 質問
- 第3章 CIによるリスクの軽減
- リスク:デプロイできないソフトウエア
- リスク:欠陥検出の遅れ
- リスク:プロジェクトの「見える化」不足
- リスク:低品質なソフトウエア
- まとめ
- 質問
- 第4章 変更を起点としたビルドの実行
- ビルドを自動化する
- コマンド1つでビルドを実行する
- ビルドスクリプトをIDEから分離する
- ソフトウェア資産を集中化する
- 一貫したディレクトリ構造を作る
- 失敗しやすいビルドプロセスから始める
- 複数環境へのデプロイに対応する
- ビルドの種類とその起動方法
- インテグレーションビルドマシンを使用する
- CIサーバーを使う
- 手動インテグレーションビルドを実行する
- 短時間でビルドを実行する
- CIをどう活用するか
- まとめ
- 質問
- 第1章 始めよう
- 第2部 CIシステムの構築
- 第5章 継続的データベースインテグレーション
- データベースインテグレーションを自動化する
- ローカル環境でデータベースサンドボックスを使う
- バージョン管理リポジトリを使ってデータベース資産を共有する
- 継続的データベースインテグレーション
- 開発者にデータベースを変更する権限を与える
- 失敗したビルドをチームで修復する
- DBAを開発チームの一員にする
- データベースインテグレーションとIntegrateボタン
- まとめ
- 質問
- 第6章 継続的テスト
- 単体テストを自動化する
- 結合テストを自動化する
- システムテストを自動化する
- 機能テストを自動化する
- 開発者テストを分類する
- 実行時間が短いテストを先に実行する
- 不具合に対してテストを書く
- 結合テストを再実行可能にする
- 1テストケースに1つのアサーション
- まとめ
- 質問
- 第7章 継続的インスペクション
- テストとインスペクションの違い
- インスペクションツール実行の頻度
- コードメトリクスの歴史
- コードの複雑度を下げる
- 継続的なデザインレビューの実施
- コード監査による組織標準の維持
- コードの複製を減らす
- コード網羅率を評価する
- 継続的にコード品質を評価する
- まとめ
- 質問
- 第8章 継続的デプロイ
- 動作するソフトウェアを常にリリースできるようにする。
- リポジトリの資産にラベル付けをする
- クリーンな環境を構築する
- 個々のビルドにラベルをつける
- すべてのテストを実行する
- ビルドフィードバックレポートを作成する
- リリースのロールバックを可能にする
- まとめ
- 質問
- 第9章 継続的フィードバック
- 適切なフィードバックとは何か
- 継続的フィードバック手段を利用する
- まとめ
- 質問
- 第5章 継続的データベースインテグレーション
- エピローグ CIの未来
- 付録A CI リソース
- 継続的インテグレーションについてのWebサイト/記事
- CIツール/プロダクトについてのリソース
- ビルドスクリプトのリソース
- バージョン管理システムのリソース
- データベースのリソース
- テストのリソース
- 自動インスペクションツールについてのリソース
- デプロイツールに関するリソース
- フィードバックに関するリソース
- 文書化に関するリソース
- 付録B CIツールの評価
- ツールを評価する際の考慮事項
- 自動ビルドツール
- ビルドスケジューラツール
- おわりに
- 参考文献
- 訳者あとがき
- 索引
- 著者プロフィール
- 訳者プロフィール