初めに
応用情報技術者試験に向けてアジャイル開発に関する用語をごく簡単にまとめたものです。
ぱっとみて概要を思い出す用にまとめました。
アジャイル開発とは
アジャイル開発とは、変化の激しい要求や環境に柔軟に対応しながら、価値のあるソフトウェアを短いサイクルで継続的に届けていく開発手法です。
このアプローチでは、たとえば スクラム や エクストリームプログラミング(XP) のようなフレームワークや実践手法がよく使われます。これらはいずれも「計画通りに進める」よりも、「チームで対話しながら、動くソフトウェアをこまめに作って確認する」ことを大事にしています。
開発チームはまず、必要な機能やタスクを バックログ という形で整理・可視化します。そして、その中から優先度の高い項目を選び、短期間(通常1〜4週間)の スプリント に分けて開発を進めていきます。
さらに、XPではペアプログラミングやテスト駆動開発といった技術的プラクティスを通して、品質を保ちながら素早く改善・リリースする姿勢を強調します。
このように、アジャイル開発は スクラムのような管理手法 と XPのような技術的手法 を組み合わせ、バックログやスプリントによって継続的な価値提供を実現する開発スタイルです。
目次
スクラム(Scrum)
- アジャイル開発のフレームワークの一つ。プロジェクト管理に使用。
スプリント(Sprint)
- スクラムで使用される短い開発サイクル。通常2-4週間程度。
スプリントプランニング
- スプリントの開始前に行われる計画会議。タスクの割り当てを行う。
デイリースクラム(デイリースタンドアップ)
- スプリント中の日常会議。進捗状況を共有し、問題を解決する。
スプリントレビュー
- スプリント終了後のレビュー会議。成果物を共有し、フィードバックを得る。
スプリントレトロスペクティブ
- スプリント終了後の反省会議。プロセスの改善に役立つ。
プロダクトバックログ
- プロジェクトの全体的なタスクリスト。優先順位がつけられている。
スプリントバックログ
- スプリント中に完了するタスクリスト。プロダクトバックログから選択される。
バーンダウンチャート
- スプリント中の残作業量をグラフで表示するツール。進捗状況を可視化する。
プロダクトオーナー
- プロダクトバックログの所有者。プロジェクトのビジョンと目標を決定する。
スクラムマスター
- スクラムチームのコーチ。プロセスをスムーズに進めるためのサポートを行う。
開発チーム
- プロジェクトを実行するチーム。スクラムチームの一部。
ベロシティ
- チームがスプリントで完了できる作業量を示す指標。
ユーザーストーリー
- ユーザーの視点から記述された機能要件。プロダクトバックログに含まれる。
- 「機能やサービス」など開発すべきアイテムについて書き、「なぜそれが必要なのか」をまとめたもの
ストーリーポイント
- ユーザーストーリーの相対的な規模や複雑さを示す単位。
継続的インテグレーション(CI)
- コードの変更を自動的にビルド、テストするプロセス。
- 変更が加えられるたびに自動で品質チェックを行うことで、バグの早期発見が可能になり、品質の高いソフトウェアを迅速に開発できる。
継続的デリバリー(CD)
- コードの変更を自動的にリリースするプロセス。
- 本番環境へのデプロイを自動化・高速化することで、リリースの手間やリスクを減らし、ビジネス要求に素早く応えることができる。
テスト駆動開発(TDD)
- テストを先に書いてからコードを書く開発手法。
ペアプログラミング
- 二人の開発者が一つのコンピュータで協力してコードを書く手法。
リファクタリング
- コードの品質を向上させるために行う改善作業。
カンバン(Kanban)
- 作業の流れを可視化し、ボトルネックを特定するための手法。
- 課題や開発タスクの状態(例:バックログ、進行中、レビュー中、完了など)を管理する
- 作業状況の見える化
リーンソフトウェア開発
- 無駄を排除し、効率的な開発を目指す手法。
- 不要な機能を作らない
- 作業の見える化
- 早期フィードバック
- 意思決定の遅延の許容
- 品質の組み込み
- 知識の共有
- 小さなバッチサイズ
DevOps
- 開発と運用の境界をなくすための文化、実践、ツールの集合。
プロジェクトファシリテーション
- プロジェクトの進行を支援するための活動。スクラムマスターが行う。