中小企業診断士の過去問
令和3年度(2021年)
経営情報システム 問18

このページは閲覧用ページです。
履歴を残すには、 「新しく出題する(ここをクリック)」 をご利用ください。

問題

中小企業診断士試験 第1次試験 経営情報システム 令和3年度(2021年) 問18 (訂正依頼・報告はこちら)

アジャイル開発の手法の1つにエクストリーム・プログラミング( XP )がある。XPではいくつかのプラクティスが定義されている。
XPのプラクティスに関する記述として、最も適切なものはどれか。
  • 1週間の作業時間は、チームのメンバー全員で相談して自由に決める。
  • 2人のプログラマがペアになって、同じPCを使用して交代しながらプログラミングを行う。
  • ソースコードの修正や再利用は、責任を明確にするために、作成者だけが行うようにする。
  • プログラムを書く前にテストケースを作成しておき、動作を確認した上でプログラムを洗練させていく。
  • リファクタリングの際には、開発効率を高めるために内部構造には変更を加えず、外部から見た振る舞いを変更する。

次の問題へ

正解!素晴らしいです

残念...

この過去問の解説 (3件)

01

答え:4

XP(エクストリーム・プログラミング)に関する問題です。

XPは、アジャイル開発手法のひとつです。プロジェクト全体を細かい部分に分けて、そのそれぞれに部分に対して「要件定義→設計→プログラム開発→テスト」の一連の流れを繰り返し行います。XPの理念の一つは、変化に対応することです。ユーザー(顧客)の経営状況や競争環境は常に変化しているので、ユーザーの要求も常に変化します。それに対応しながら開発を進めていく手法がXPです。XPは、小規模な開発を素早く行うことに適している一方で、大規模なソフトウェアの開発には適していません。

XPには、慣習となっている手法がいくつか存在し、それらは総称してプラクティスと呼ばれます。プラクティスの例として、「持続可能なペース」「ペアプログラミング」「ソースコードの共同所有」「テスト駆動開発」「リファクタリング」が挙げられます。

以下 解説

1. 誤り。「持続可能なペース」によると、最適な作業時間は週40時間とされています。なぜなら、それ以下の作業時間だと開発に遅れが出る一方で、それ以上の作業時間は心身の健康を害することで作業効率が悪化するからです。

2. 誤り。確かにペアを組んでプログラミングを行いますが、同じPCを使うとは限りません。一人が実際にコーディングし、もう一人がそれをサポートしたりフィードバックしたりミスを発見したりします。この役割は都度交代されます。(「ペアプログラミング」に該当)

3. 誤り。XPは、あくまでもチームとしてソフトウェアを作成します。「ソースコードの共同所有」によれば、すべての参加者は、すべての部分に対して等しく責任を負います。ソースコードの修正や再利用についても、すべての参加者が行うことができます。

4. 正しい。「テスト駆動開発」についての正しい説明です。

5. 誤り。「リファクタリング」によれば、完成済みのコードでも随時改善していくとされています。また、このとき、外部から見た動作は変更させずに、内部構造がより優れたものになるようにするとされています。

参考になった数13

02

XPのプラクティスに関する問題です。

選択肢1. 1週間の作業時間は、チームのメンバー全員で相談して自由に決める。

不適切です。

知的作業は週40時間までが適切とされており、集中力を高めて臨む作業であるため自由に決めることは適しておりません。

選択肢2. 2人のプログラマがペアになって、同じPCを使用して交代しながらプログラミングを行う。

不適切です。

ペアプログラミングは1人がコードを書き、もう1人がそれをチェックしながら作業を進めます。

選択肢3. ソースコードの修正や再利用は、責任を明確にするために、作成者だけが行うようにする。

不適切です。

ソースコードの修正は開発チーム全員が行い、責任も開発チーム全員とします。

選択肢4. プログラムを書く前にテストケースを作成しておき、動作を確認した上でプログラムを洗練させていく。

適切です。

選択肢5. リファクタリングの際には、開発効率を高めるために内部構造には変更を加えず、外部から見た振る舞いを変更する。

不適切です。

リファクタリングは外部から見た動作は変更させずに、内部構造がより見通し良く優れたものになるようにします。

参考になった数6

03

1.誤り。最適な作業時間は週40時間となっています。

2.誤り。2人のプログラマがペアとなりますが、同じPCを使用するわけではありません。

3.誤り。実装コードの所有者は決めません。すべてのコードに対して全員が責任を担い、誰が作ったソースコードであっても、開発チーム全員が断りなく修正を行えるようにします。

4.正しい。

5.誤り。リファクタリングの際には、ソフトウエアの機能を変えずに、内部構造をわかりやすいものに変更します。

参考になった数4