SC情報処理安全確保支援士試験 午前Ⅰ

平成30年度春期 情報処理安全確保支援士 午前Ⅰ 問17

問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。

問題

アジャイル開発などで導入されている “ペアプログラミング" の説明はどれか

選択肢

  1. ア
    開発工程の初期段階に要求仕様を確認するために、 プログラマと利用者がペアとなり、 試作した画面や帳票を見て、 相談しながらプログラムの開発を行う。
  2. イ
    効率よく開発するために、 2人のプログラマがペアとなり、 メインプログラムとサブプログラムを分担して開発を行う。
  3. ウ
    短期問で開発するために、 2人のプログラマがペアとなり、 交互に作業と休憩を繰り返しながら長時問にわたって連続でプログラムの開発を行う。
  4. エ
    品質の向上や知識の共有を図るために、 2人のプログラマがペアとなり、 その場で相談したりレビューしたりしながら、 一つのプログラムの開発を行う。
解き方のヒントを見る

ペアプログラミングの役割分担を押さえよう

ペアプログラミングは、1人が実際にコードを書く「ドライバ」、もう1人が横で考え方やミスを確認する「ナビゲータ」になって、2人で1つのコードをその場で良くしていくやり方だよ。料理でいうと、1人が手を動かして調理し、もう1人がレシピや火加減を見ながら助言する感じ。コードの品質を上げたり、知識を共有したりするのが目的だよ。

この問題で問われていること

ここでは、ペアプログラミングをユーザ参加型レビューや単なる分業開発と混同しないことが大事だよ。ユーザに確認してもらうレビューではなく、開発者同士が同じコードに向き合って協力する点を押さえよう。

Pair Programming

pair programming has two programmers collaboratively develop and review one piece of code together

two people\none code\ncontinuous review

確認ポイント

  • メインとサブに分業する方法ではありません。
  • 交互に休憩する方式でもない。
  • 1 つのプログラムを共同で作る。
正解と解説を見る

正解

エ

出典

問題文と解答は IPA 公開の過去問題冊子・解答例を基にしています。

選択肢ア

これは間違いだよ。利用者と一緒に試作画面を見ながら要求を確認するのは、プロトタイピングに近い考え方だよ。家を建てる前に模型を見て「キッチンはこっちがいいね」と相談するようなもので、2人のプログラマで1つのコードを書くペアプログラミングとは別物なんだ。

選択肢イ

これは間違いだよ。2人で作業を分担しているだけで、ペアプログラミングではないよ。たとえば掃除で「あなたは台所、私はお風呂」と分かれて作業する感じ。ペアプログラミングは、同じ場所を2人で見ながら相談して進めるのがポイントなんだ。

選択肢ウ

これは間違いだよ。交互に作業と休憩をして長時間続ける、という話はペアプログラミングの本質ではないよ。駅伝みたいに交代で走るイメージだけど、ペアプログラミングは交代勤務ではなく、2人で同じプログラムを見ながら考える開発方法なんだ。

選択肢エ(正解)

これはペアプログラミングの説明なので正解だよ。料理でいうと、1人が手を動かして作り、もう1人が横で「塩入れすぎてない?」と確認する感じ。2人で相談やレビューをしながら1つのプログラムを作るので、ミスに気づきやすく、知識も共有しやすいんだ。

出典:独立行政法人 情報処理推進機構(IPA)平成30年度春期 情報処理安全確保支援士試験 午前Ⅰ 問17(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針