3.
アジャイル開発の手法の 1 つにエクストリーム・プログラミング(XP)がある。XP ではいくつかのプラクティスが定義されている。
XP のプラクティスに関する記述として、最も適切なものはどれか。
XPについてですね。なんか、アジャイル開発に吸収されてしまっている印象もありますので、昔ほど、XPを聞くこともなくなってきたかもしれません。
1. 1 週間の作業時間は、チームのメンバー全員で相談して自由に決める。
1週間の作業時間は、自動的に決まります。XPは少なくとも、残業は前提としません。
2. 2 人のプログラマがペアになって、同じ PC を使用して交代しながらプログラミングを行う。
ペアプロです。一瞬合っているかなって思っちゃいます。同じPC??今時、同じPCどころか、リモートでやることだってあります。いくらでも、コードを遠隔地から確認する術などあります。よって誤りです。が、ひと昔前は、そんなイメージもあったので、ちょっと悩みはします。
3.ソースコードの修正や再利用は、責任を明確にするために、作成者だけが行うようにする。
XPにおいて、ソースコードは特定の所有者を決めません、誰でも参加することができて、誰でも修正等行うことができる、共同所有の考え方があります。
4.プログラムを書く前にテストケースを作成しておき、動作を確認した上でプログラムを洗練させていく。
テスト駆動型開発についてですね。これが正解です。
5.リファクタリングの際には、開発効率を高めるために内部構造には変更を加えず、外部から見た振る舞いを変更する。
めちゃくちゃ逆ですね。外部からの見た振る舞いを変更すると、それに影響して外部アプリケーションにも影響を及ぼします。リファクタリングは内部構造の変更に抑えなくてはいけません。
以上より、正解は4です。