開発プロセス・手法(全37問中12問目)
No.12解説へ
エクストリームプログラミング(XP:eXtreme Programming)のプラクティスのうち,プログラム開発において,相互に役割を交替し,チェックし合うことによって,コミュニケーションを円滑にし,プログラムの品質向上を図るものはどれか。
出典:平成30年春期 問50
- 計画ゲーム
- コーディング標準
- テスト駆動開発
- ペアプログラミング
広告
解説
エクストリームプログラミング(XP:eXtreme Programming)は、1990年代後半、Kent Beck氏らによって提唱されたソフトウェア開発手法でアジャイルソフトウェア開発と称される一連の手法の先駆けとなったものです。「プログラマーは人間である」という思想のもと、叩き台となるプログラムを早期に開発し、短いサイクルで頻繁にテストとリリースを繰り返すことで、顧客の要求への対応力と生産性を高め、リスクを軽減することを目的としています。
XPでは、ソフトウェア開発に有益である要素を4つのカテゴリ、19のプラクティスとして定義しています。
XPでは、ソフトウェア開発に有益である要素を4つのカテゴリ、19のプラクティスとして定義しています。
- 計画ゲームは、イテレーションごとに行われ、実現するユーザー機能(ストーリー)とリリース計画を顧客と交渉する作業です。
- コーディング標準は、ソースコードを記述する際のルールを定めたものです。XPでは、ペアプログラミングやリファクタリングにおいて複数人によるコードの共有を前提としているため、コーディング標準の順守が重視されます。
- テスト駆動開発は、求める機能を明確化するために、プログラムを記述するよりも前にテストケースを作成する開発手法です。そのテストをパスする最低限の実装を行った後で、機能を維持したままコードを洗練していくという手順で開発を進めます。
- 正しい。ペアプログラミングは、2人1組で1つのプログラムの実装を行い、1人が実際のコードをコンピュータに打ち込み、もう1人はそれをチェックしながら補佐するという役割を随時交代しながら作業を進めていく手法です。プログラムをコンピュータに打ち込む人を「ドライバ」、それを補佐する人を「ナビゲータ」といいます。
広告