エクストリーム・プログラミング

問題

エクストリームプログラミング(XP)のプラクティスとして,適切なものはどれか。

  • 1週間の労働時間は,チームで相談して自由に決める。
  • ソースコードの再利用は,作成者だけが行う。
  • 単体テストを終えたプログラムは,すぐに結合して,結合テストを行う。
  • プログラミングは1人で行う。

答え

単体テストを終えたプログラムは、すぐに結合して、結合テストを行う。

解説

エクストリーム・プログラミング

エクストリーム・プログラミングXP: extreme programming)は、ケント・ベックらによって定式化され、提唱されているソフトウェア開発手法である。柔軟性の高い開発手法であるため、難易度の高い開発やビジネス上の要求が刻々と変わるような状況に向いた開発手法である。事前計画よりも柔軟性を重視する。1999年に書籍『XPエクストリーム・プログラミング入門―ソフトウェア開発の究極の手法』によって発表された。

出典: フリー百科事典『ウィキペディア(Wikipedia)』

プラクティスは上の Wikipedia に載っていますが、問題に関係する部分を抜き出します。

最適なペースの仕事

知的作業には、週40時間の労働時間が最適である。

「1週間の労働時間は,チームで相談して自由に決める」は誤りです。

私は、もっと少ないほうが良いです…。

ソースコードの共同所有

誰が作ったソースコードであっても、開発チーム全員が断りなく修正を行うことができる。ただし、全てのコードに対する責任を、全員が担う。

「ソースコードの再利用は,作成者だけが行う」は誤りです。

継続的インテグレーション

単体テストをパスするコードが完成するたび、すぐに結合テストを行い、問題点や改善点を探す。少なくとも一日に一回は、結合テストを行う。また、全体のコンパイルおよび自動テストを行うための継続的インテグレーション用のコンピュータを準備することが推奨されている[5]

「単体テストを終えたプログラムは,すぐに結合して,結合テストを行う」は正しいです。

ペアプログラミング

プログラミングは、二人一組で行う。一人がコードを書き、もう一人はそれをチェックしながら、仕様書を確認したり全体構造を考えたりするなど、ナビゲートを行う。二人は、この役割を定期的に交代しながら仕事を進める。

「プログラミングは1人で行う」は誤りです。

やったことないのですが、どうなんでしょうか?