モダン アプリケーション開発の方法論を議論する際には、いくつかの主要概念への言及が欠かせません。以下のリストで、本セクションで使用されている主要概念を簡単に概説します。
- アジャイル ソフトウェア開発
- 以下にフォーカスする一連の原則に基づいたソフトウェア開発。
- 反復的、増分的、漸進的な納入
- 対面コミュニケーション
- 短いフィードバック ループ
- 品質へのフォーカスを促進する自動化の使用
- アプリケーション リリース自動化 (ARA)
- ツールを使用して、ソフトウェアのビルドおよび後続の運用環境へのディプロイに関連する手順を自動化します。
- 自動テスト
- テストの実行を制御するためのツールの使用、およびテスト結果と期待する結果との比較。
- 構成管理 (SCM)
- ソフトウェア開発時に行われた変更を追跡して制御するタスク。構成管理の概念の中心は、ファイルの変更を管理するバージョン管理です。
- 継続的配信 (CD)
- すべてのコード変更で新しいソフトウェアのビルドおよびテストを行い、必要に応じてそのソフトウェアを運用環境にディプロイできるプロセス。
- 継続的ディプロイ
- すべてのコード変更で新しいソフトウェアのビルドおよびテストを行い、そのソフトウェアを運用環境にディプロイするプロセス。
- 継続的改善
- ロールアウト期間中にチームのパフォーマンスを定期的に評価し、何がうまくいってたか、および何を改善できるかを評価するプロセス。
- 継続的インテグレーション (CI)
- すべての開発者のコードの作業コピーを定期的に共有トランクにマージし、各コード変更により新しいソフトウェアのビルドおよびテストを実行するプラクティス。
- 要件管理
- アプリケーションの要件を収集および管理し、開発チームの尽力を効果的に推進するためにその要件を使用するプロセス。
- 単体テスト
- テスト可能なアプリケーションの最小部分を個別にテストし、それらが期待どおりに機能するかどうかを確認するプロセス。
これらの用語の一部は、各種ソースで若干異なる意味で定義されている場合があります。本セクションでは、これらの用語をここで定義されている意味で使用します。