IT パスポート 想定問題集
開発技術の要点整理と想定問題
公式のシラバスの「大分類 4:開発技術(中分類 8:システム開発技術/中分類 9:ソフトウェア開発管理技術)」にあたる分野です。まず要点整理で全体をつかみ、下の演習で 29 問を 1 問ずつ解けます。答えると A〜D すべての解説が出ます。
この分野の小項目
- 項目 25(1)①〜④(中分類 8) システム開発のプロセス(要件定義〜テスト)(7 問) システム要件定義・ソフトウェア要件定義(機能要件・非機能要件・品質特性)、設計、プログラミングと単体テスト(ホワイトボックステスト・コードレビュー)、統合とテスト(ブラックボックステスト・回帰テストなど)の流れを理解する。
- 項目 25(1)⑤⑥・(2) 導入・受入れ・保守と見積り(8 問) 受入れテスト・移行・利用者マニュアル・教育訓練などの導入と受入れ、保守の目的、ファンクションポイント法・類推見積法などソフトウェアの見積りの考え方を理解する。
- 項目 26(1)(2)(中分類 9) ソフトウェア開発手法・開発モデル(7 問) 構造化手法・オブジェクト指向・UML・DevOps などの開発手法と、ウォーターフォールモデル・スパイラルモデル・プロトタイピングモデル・RAD・リバースエンジニアリングなどの開発モデルの特徴を理解する。
- 項目 26(3)(4) アジャイルと開発プロセスのフレームワーク(7 問) アジャイル(スクラム・スプリント・プロダクトバックログ・XP・テスト駆動開発・ペアプログラミング・CI など)の特徴と、共通フレーム(SLCP)・CMMI など開発プロセスのフレームワークを理解する。
要点整理
システム開発のプロセス(要件定義〜テスト)
開発の流れは「決める → 形にする → 作る → 確かめる」
システム開発は、要件定義・設計・プログラミング・統合とテストの順に進みます。シラバスでは、それぞれに目的があると整理しています。
要件定義では、システムに求める機能や性能を明らかにします。「在庫を検索できる」のような機能そのものが機能要件です。「3 秒以内に表示」のような性能や使いやすさは非機能要件です。
設計ではシステムやソフトウェアの形を決め、プログラミングでは設計どおりにプログラムを作ります。作った直後には単体テストで、1 本ずつ誤りがないかを確かめます。
単体テストでは、内部の分岐を意識するホワイトボックステストをよく使います。動かす前に、ほかの開発者が読むコードレビューも品質を高めます。
単体テスト済みのプログラムを組み合わせて確かめるのが統合テストです。ここでは中身を見ずに入出力を確かめるブラックボックステストを多く使います。
性能を測る性能テスト、大きな負荷をかける負荷テスト、修正後に影響を確かめる回帰テストもあります。テストは計画・実施・評価のサイクルで行い、目標に対する実績を評価します。
要件定義では、発注者と開発者が一緒に要件を確かめる共同レビューも行います。品質特性には機能性・効率性・使用性・信頼性などがあり、非機能要件を考えるときの手がかりになります。
試験では「どの段階で、何に注目するテストか」を問う形が定番です。中身を見るか見ないか、修正のたびか本番前か、という軸で整理すると選び分けやすくなります。
テストで見つかったバグの原因を探して直す作業をデバッグと呼びます。テストデータの作り方と結果の分析も、シラバスの活用例に挙がっています。
| テスト・活動 | 何を見るか | 主に誰が・いつ |
|---|---|---|
| ホワイトボックステスト | 内部の分岐や処理の流れ | 開発者・単体テスト |
| ブラックボックステスト | 仕様どおりの入力と出力 | テスト担当・統合テストなど |
| 回帰テスト | 修正がほかを壊していないか | 修正のたび |
| 負荷テスト | 大きな負荷に耐えられるか | 本番の前 |
| コードレビュー | プログラムを読んで誤りを探す | 作成した直後 |
導入・受入れ・保守と見積り
導入・受入れ・保守と、見積りの考え方
完成したシステムは、発注した側(取得者・委託側)が受入れテストで確かめます。開発した側(供給者・受託側)はそれを支援します。
受入れテストで問題がなければ納入されます。並行して、利用者向けの利用者マニュアルを用意し、運用者や利用者に教育訓練を行います。
旧システムからデータや業務を切り替える作業が移行です。移行で見つかった不具合は記録し、改善をフォローアップします。
稼働後に、IT の進展や経営戦略の変化に合わせてシステムを修正・変更・改善するのが保守です。応用情報のシラバスには、是正保守・適応保守・完全化保守・予防保守などの種類が挙がっています。
見積りでは、開発規模や開発環境をもとに工数や期間を見積もります。ファンクションポイント法は、画面や入出力などの機能の数と複雑さから規模を測ります。
類推見積法は、過去の似たシステムの実績と比べて見積もる方法です。規模が分かれば「工数 = 規模 ÷ 生産性」で工数を出せます。300 FP を 1 人月 15 FP で作るなら 20 人月です。
見積りは開発の初めに 1 回で終わりではありません。要件が具体的になるにつれて見直すと、計画との差を早めに見つけられます。シラバスには、ほかの作業と比べて大きさを決める相対見積も挙がっています。
受入れテストを開発側だけで済ませると、発注者が求めていた用途を満たすかが確かめられません。誰が確かめるのか、という主体の違いもよく問われます。
| 場面 | やること | キーワード |
|---|---|---|
| 納入の前 | 発注者が業務で使えるか確かめる | 受入れテスト |
| 使い始め | 手引きを配り、使い方を教える | 利用者マニュアル・教育訓練 |
| 切り替え | 旧システムのデータや業務を移す | 移行 |
| 稼働した後 | 変化に合わせて直し、改善する | 保守 |
| 開発の初め | 機能の数と複雑さで規模を測る | ファンクションポイント法 |
| 開発の初め | 似た過去の案件と比べる | 類推見積法 |
出典: IT パスポート試験 シラバス Ver.6.5(IPA)/システム管理基準(経済産業省・令和 5 年)/応用情報技術者試験 シラバス Ver.7.2(IPA)
ソフトウェア開発手法・開発モデル
開発モデルは「要望の固まり具合」で選び分ける
ウォーターフォールモデルは、工程を順に進め、原則として前に戻りません。初めに要件がはっきり決まる開発に向きます。
プロトタイピングモデルは、早い段階で試作品を作り、利用者に確かめてもらいながら要求を明らかにします。要望があいまいな時に手戻りを減らせます。
スパイラルモデルは、システムを部分に分け、設計・開発・評価を繰り返して少しずつ完成に近づけます。RADは、少人数で開発ツールを使い短期間で作る手法です。
リバースエンジニアリングは、既存のソフトを解析して仕様や構成を明らかにする技法です。権利者の許可なく結果を流用すると、知的財産権の侵害になり得ます。
開発手法では、データと処理をひとまとめに扱うオブジェクト指向と、図の書き方を標準化したUMLを押さえます。
DevOpsは開発と運用が連携し、素早く柔軟に届ける考え方です。MLOpsは、機械学習モデルの運用と改善を続けるための考え方です。
手法とモデルは、問題文の状況から選ぶのがコツです。「要望が画面を見ないと決まらない」なら試作品、「仕様書が無い既存ソフト」なら解析、「開発と運用の引継ぎが遅い」なら連携、と手がかりの語に注目します。
ウォーターフォールモデルは計画や進み具合が分かりやすい反面、後から要望が変わると手戻りが大きくなります。どのモデルにも向き不向きがあり、一つが常に優れているわけではありません。
構造化手法は、処理を段階的に細かく分けて整理する手法です。ユースケースは、利用者がシステムを使って何をするかを場面ごとに表したもので、要求を整理するときに使います。
| モデル・手法 | 進め方 | 向く場面 |
|---|---|---|
| ウォーターフォールモデル | 工程を順に進め、原則戻らない | 要件が初めに固まる |
| プロトタイピングモデル | 試作品で要求を確かめる | 要望があいまい |
| スパイラルモデル | 部分ごとに設計・開発・評価を繰り返す | 大きなシステムを段階的に育てる |
| RAD | 少人数・短期間・開発ツールの活用 | 早く形にしたい |
| DevOps | 開発と運用が連携して素早く届ける | 更新の頻度を上げたい |
出典: IT パスポート試験 シラバス Ver.6.5(IPA)/応用情報技術者試験 シラバス Ver.7.2(IPA)
アジャイルと開発プロセスのフレームワーク
アジャイルとスクラム、開発プロセスの枠組み
アジャイルは、短い反復を重ねて変化に素早く対応する軽量な開発手法です。代表的なものにスクラムとXPがあります。
スクラムの反復の単位がスプリントで、1〜4 週間の時間枠です。予定の機能が終わらなくても延長しません。
スプリントは、スプリントプランニング、毎日のデイリースクラム、スプリントレビュー、スプリントレトロスペクティブ(ふりかえり)、開発作業で成り立ちます。
役割はプロダクトオーナー、開発者、スクラムマスターの 3 つです。要求はユーザーストーリーとしてプロダクトバックログに並べ、今回の作業はスプリントバックログにします。
XP の実践には、テスト駆動開発、ペアプログラミング、リファクタリング、継続的インテグレーションなどがあります。
開発プロセスの枠組みとして、作業項目を一つ一つ定義して標準化した共通フレーム(SLCP)があります。発注者と開発者が同じ言葉で話せるようにするためのものです。組織のプロセスの成熟度を 5 段階で定めるCMMIもあります。
スクラムマスターは細かく指示を出す管理者ではなく、チームを外部の割り込みから守り、障害を取り除く支援役です。チームの意思決定はプロダクトオーナーと開発者で行います。
スプリントの終わりには、動く成果(インクリメント)をスプリントレビューで関係者に見せ、意見をもらいます。そのうえでプロダクトオーナーがリリースするかどうかを判断します。
アジャイルは「計画しない」開発ではありません。スプリントごとに計画し、振り返って改善します。変化に合わせて計画を見直し続けるのが特徴です。
| 名前 | どんなもの | ひとことで |
|---|---|---|
| プロダクトオーナー | 何を作るか決め、優先順位に責任を持つ | 価値の責任者 |
| スクラムマスター | チームを支援し障害を取り除く | 支える人 |
| デイリースクラム | 毎日 15 分ほどの状況共有 | 朝会 |
| スプリントレトロスペクティブ | 進め方を振り返り改善する | ふりかえり |
| 共通フレーム | 開発と取引の作業項目を標準化 | 言葉をそろえる |
| CMMI | 組織のプロセス成熟度を 5 段階で評価 | 組織の実力を測る |
出典: アジャイル開発の進め方(IPA・2024 年 5 月)/IT パスポート試験 シラバス Ver.6.5(IPA)/応用情報技術者試験 シラバス Ver.7.2(IPA)
演習(29 問)
結果はこのブラウザに保存され、ハブの「自分の成績」と弱点モードに使われます。
第 1 問 / 29 問
問題を読み込んでいます…
全問と解説の一覧
正解と解説は折りたたんであります。先に自分で考えてから開いてください。
全 29 問
システム開発のプロセス(要件定義〜テスト)
社内の在庫照会システムを作る。要件の一つに「検索結果を 3 秒以内に表示する」がある。この要件の種類として適切なものは?
A. 機能要件 B. 非機能要件 C. 受入れテスト D. 回帰テスト
この問題へのリンク答えと解説
正解: B 【A(不正解)】 ? システムで「何ができるか」を定めた要件です。 在庫を検索できる、などの機能そのものを定める要件である。応答時間の目安は機能ではなく性能の条件なので当てはまらない。 【B(正解)】 ? 性能・信頼性・使いやすさなど、機能以外の条件です。 「3 秒以内」は応答の速さ、つまり性能に関する条件である。機能以外の品質を定めるので非機能要件に当たる。 【C(不正解)】 ? 発注者が、意図した用途を満たすか確かめるテストです。 受入れテストは開発の終盤に行う確認作業であり、要件の種類の名前ではない。 【D(不正解)】 ? 修正したあとに、ほかの部分へ影響がないか確かめるテストです。 回帰テストはテストの種類であり、要件を分類する言葉ではない。
開発者が自分の作ったプログラムを単体テストする。命令や分岐の通り道をすべて通るようにテストデータを作りたい。この考え方のテストは?
A. ブラックボックステスト B. 負荷テスト C. 受入れテスト D. ホワイトボックステスト
この問題へのリンク答えと解説
正解: D 【A(不正解)】 ? 内部の作りは見ずに、入力と出力だけで確かめるテストです。 内部の分岐を意識しない方法なので、「分岐をすべて通す」という狙いには合わない。 【B(不正解)】 ? 大きな負荷をかけて、システムが耐えられるか確かめるテストです。 多数の利用者などの負荷に耐えられるかを見るテストで、分岐を網羅する考え方ではない。 【C(不正解)】 ? 発注者が、業務で使えるかを確かめるテストです。 発注者が最後に行う確認であり、開発者が個々のプログラムの分岐を確かめる場面ではない。 【D(正解)】 ? プログラムの内部の構造や処理の流れに注目するテストです。 命令や分岐の通り道に注目してテストデータを作るのは、ホワイトボックステストの考え方である。
テスト担当者は、プログラムの中身を見ずに仕様書だけを読み、入力と期待する出力の組を作ってテストした。このテストの考え方は?
A. ホワイトボックステスト B. コードレビュー C. ブラックボックステスト D. デバッグ
この問題へのリンク答えと解説
正解: C 【A(不正解)】 ? 内部の構造や処理の流れに注目するテストです。 中身を見ないで作るので、内部構造に注目するホワイトボックステストではない。 【B(不正解)】 ? 書いたプログラムを、ほかの人が読んで指摘し合う活動です。 コードレビューはプログラムを読む活動であり、中身を見ずに入出力を確かめる方法とは逆である。 【C(正解)】 ? 内部の作りは見ずに、入力と出力に注目するテストです。 仕様書から入力と期待する出力を決め、中身を見ずに確かめるのはブラックボックステストの考え方である。 【D(不正解)】 ? 見つかったバグの原因を探して直す作業です。 デバッグは誤りを直す作業であり、テストケースを作る考え方の名前ではない。
会員サイトのログイン画面の不具合を直した。直していない購入画面なども、前回と同じテストをもう一度流して確かめたい。このテストは?
A. 単体テスト B. 受入れテスト C. 性能テスト D. 回帰テスト
この問題へのリンク答えと解説
正解: D 【A(不正解)】 ? 個々のプログラムごとに不具合がないか確かめるテストです。 単体テストは個々のプログラムを確かめる段階の名前で、修正の影響を確かめる目的のテストを指す言葉ではない。 【B(不正解)】 ? 発注者が、意図した用途を満たすか確かめるテストです。 発注者による最終確認であり、修正のたびに既存機能を確かめ直すテストとは目的が違う。 【C(不正解)】 ? 応答時間などの性能が要件を満たすか確かめるテストです。 性能を測るテストであり、修正の影響が他の機能に出ていないかを見る目的ではない。 【D(正解)】 ? 修正や変更が、ほかの部分に影響していないか確かめるテストです。 修正によって、それまで動いていた部分が壊れていないかを確かめるのが回帰テストである。
通販サイトで、毎年セール開始の直後にアクセスが集中する。本番の前に、多数の利用者が同時に使っても応答できるかを確かめたい。行うべきテストは?
A. 負荷テストを行い、多数の同時アクセスに耐えられるか確かめる B. ホワイトボックステストで、すべての分岐を通るか確かめる C. コードレビューで、ほかの開発者に読んでもらう D. 単体テストで、各プログラムを個別に確かめる
この問題へのリンク答えと解説
正解: A 【A(正解)】 ? 大きな負荷をかけて、システムの耐える力を見るテストです。 多数の同時アクセスという負荷をかけて、止まらずに応答できるかを確かめる目的に合う。 【B(不正解)】 ? プログラムの内部構造に注目するテストです。 分岐の網羅は 1 本のプログラムの品質確認であり、大量アクセスへの耐性は分からない。 【C(不正解)】 ? 書いたプログラムをほかの人が読んで指摘し合う活動です。 読みやすさや誤りを見つけるには役立つが、実際に負荷をかけた時の動きは確かめられない。 【D(不正解)】 ? 個々のプログラムごとに不具合がないか確かめるテストです。 個別の動作確認であり、システム全体に同時アクセスが集中した時の動きは分からない。
作成したプログラムを、作った人とは別の開発者が読み、誤りや分かりにくい書き方を指摘し合う。この活動を何と呼ぶか?
A. 統合テスト B. 移行 C. コードレビュー D. 保守
この問題へのリンク答えと解説
正解: C 【A(不正解)】 ? 単体テスト済みのプログラムを組み合わせて確かめるテストです。 統合テストはプログラムを動かして確かめるもので、人がプログラムを読んで指摘し合う活動ではない。 【B(不正解)】 ? 旧システムから新システムへ切り替える作業です。 移行は導入の段階の作業であり、プログラムの書き方を確かめる活動ではない。 【C(正解)】 ? 書いたプログラムをほかの人が読み、指摘する活動です。 プログラムを動かさずに読み、誤りや改善点を指摘して品質を高めるのがコードレビューである。 【D(不正解)】 ? 稼働中のシステムを修正・変更・改善する活動です。 保守は稼働後の活動であり、作成直後のプログラムを読み合うこととは違う。
システム開発の主なプロセスを、行う順に並べたものとして適切なものは?
A. 設計 → 要件定義 → 統合・テスト → プログラミング B. 要件定義 → 設計 → プログラミング → 統合・テスト C. 要件定義 → プログラミング → 設計 → 統合・テスト D. プログラミング → 要件定義 → 設計 → 統合・テスト
この問題へのリンク答えと解説
正解: B 【A(不正解)】 ? 要件より先に設計が来る並びです。 何を作るかを決める要件定義の前に設計はできない。テストもプログラミングの後に行う。 【B(正解)】 ? 求めることを決め、形にし、作り、確かめる並びです。 機能や性能を明らかにし、設計し、プログラムを作って単体テストし、統合して確かめる流れである。 【C(不正解)】 ? 設計より先にプログラミングが来る並びです。 設計に従ってプログラムを作るので、プログラミングは設計の後になる。 【D(不正解)】 ? 作ってから要件を決める並びです。 要件が決まらないまま作ると、何を満たせばよいか分からない。要件定義が最初に来る。
導入・受入れ・保守と見積り
開発会社に発注した販売管理システムが完成した。発注した会社が、自社の業務で意図どおり使えるかを確かめるテストは?
A. 単体テスト B. 負荷テスト C. ホワイトボックステスト D. 受入れテスト
この問題へのリンク答えと解説
正解: D 【A(不正解)】 ? 個々のプログラムごとに不具合がないか確かめるテストです。 開発者がプログラム単位で行うテストであり、発注者が業務で使えるか確かめるものではない。 【B(不正解)】 ? 大きな負荷をかけて耐えられるか確かめるテストです。 性能面の確認であり、発注者が業務の用途を満たすか判断するテストの名前ではない。 【C(不正解)】 ? プログラムの内部構造に注目するテストです。 内部の分岐などを確かめる開発者向けのテストであり、発注者の確認とは違う。 【D(正解)】 ? 発注者(取得者)が、意図した用途を満たすか確かめるテストです。 取得者(委託側)が、意図した運用環境で使って用途を満たすか確かめるのが受入れテストである。
古い会計システムを新しいシステムに入れ替える。旧システムのデータを新システムに移し、本番で使える状態に切り替える作業は?
A. 移行 B. リバースエンジニアリング C. コードレビュー D. 類推見積法
この問題へのリンク答えと解説
正解: A 【A(正解)】 ? 新しいシステムを本番で使えるよう、データや業務を切り替える作業です。 旧システムから新システムへデータや業務を移して切り替えるのが移行である。 【B(不正解)】 ? 既存のソフトウェアを解析して仕様などの情報を得ることです。 既存ソフトの中身を解析する技法であり、データを移して本番を切り替える作業ではない。 【C(不正解)】 ? プログラムをほかの人が読んで指摘し合う活動です。 プログラムの品質を高める活動であり、データの引越しや切り替えとは関係がない。 【D(不正解)】 ? 過去の似た案件をもとに規模や工数を見積もる方法です。 見積りの方法であり、導入時の切り替え作業の名前ではない。
稼働中の受注システムに、経営方針の変更に合わせて新しい割引の計算を加えたい。この作業はシステム開発のどのプロセスに当たるか?
A. 受入れテスト B. 移行 C. 保守 D. 単体テスト
この問題へのリンク答えと解説
正解: C 【A(不正解)】 ? 発注者が、意図した用途を満たすか確かめるテストです。 受入れテストは納入前の確認であり、稼働中のシステムに手を加える作業ではない。 【B(不正解)】 ? 旧システムから新システムへ切り替える作業です。 移行は導入時の切り替え作業であり、稼働中のシステムの機能を変える作業ではない。 【C(正解)】 ? 稼働中のシステムを修正・変更・改善する活動です。 経営戦略の変化などに合わせて、稼働中のシステムを修正・変更・改善するのは保守である。 【D(不正解)】 ? 個々のプログラムに不具合がないか確かめるテストです。 修正の途中で行うことはあるが、作業全体を表すプロセスの名前ではない。
ファンクションポイント法の説明として適切なものは?
A. プログラムの行数を数えて、開発の規模を見積もる B. 過去の似たシステムの実績から、規模を見積もる C. 画面や入出力などの機能の数と複雑さから規模を見積もる D. 作業を細かく分けて、日程を横棒の図に表す
この問題へのリンク答えと解説
正解: C 【A(不正解)】 ? 書いたプログラムの量で規模を測る考え方です。 行数をもとにする方法は別の見積り方であり、機能の数と複雑さを数えるファンクションポイント法とは違う。 【B(不正解)】 ? 似た事例と比べて見積もる考え方です。 これは類推見積法の説明である。 【C(正解)】 ? 利用者から見える機能に注目して規模を測る考え方です。 入出力・画面・ファイルなどの機能の数と複雑さを数えて規模を見積もるのがファンクションポイント法である。 【D(不正解)】 ? 日程を管理するための図の説明です。 これは日程管理のガントチャートの説明であり、規模の見積り方法ではない。
新しい予約システムの工数を見積もる。2 年前に社内で作った、よく似た予約システムの実績があるので、それをもとにしたい。この見積り方法は?
A. ファンクションポイント法 B. 類推見積法 C. WBS D. ブラックボックステスト
この問題へのリンク答えと解説
正解: B 【A(不正解)】 ? 機能の数と複雑さから規模を測る方法です。 機能を数える方法であり、似た過去案件の実績を土台にする方法そのものではない。 【B(正解)】 ? 過去の似た案件の実績と比べて見積もる方法です。 よく似た過去のシステムの実績をもとに見積もるのは類推見積法である。 【C(不正解)】 ? 作業を細かく分解して階層で表したものです。 WBS は作業を分解する道具であり、過去案件と比べる見積り方法の名前ではない。 【D(不正解)】 ? 内部を見ずに入力と出力で確かめるテストです。 テストの方法であり、工数の見積りとは関係がない。
出典: IT パスポート試験 シラバス Ver.6.5(IPA)/応用情報技術者試験 シラバス Ver.7.2(IPA)
新システムの開発規模を 300 ファンクションポイントと見積もった。このチームは 1 人月で 15 ファンクションポイント分を作れる。開発工数は何人月か?
A. 15 人月 B. 20 人月 C. 30 人月 D. 45 人月
この問題へのリンク答えと解説
正解: B 【A(不正解)】 ? 生産性の数値をそのまま答えにした値です。 15 は 1 人月で作れる量であり、工数ではない。300 ÷ 15 を計算する必要がある。 【B(正解)】 ? 規模を、1 人月あたりに作れる量で割った値です。 工数 = 規模 ÷ 生産性 = 300 ÷ 15 = 20 人月となる。 【C(不正解)】 ? 300 を 10 で割った値です。 300 ÷ 10 = 30 であり、問題の生産性 15 を使っていない。 【D(不正解)】 ? 300 に 15 を掛けて 100 で割った値です。 300 × 15 ÷ 100 = 45 であり、規模を生産性で割る計算になっていない。
新しい経費精算システムを全社に導入する。現場の社員が操作に迷わず使い始められるよう、導入の段階で行うこととして適切なものは?
A. ファンクションポイント法で規模を見積もり直す B. リバースエンジニアリングで仕様を調べる C. ホワイトボックステストをやり直す D. 利用者マニュアルを用意し、教育訓練を行う
この問題へのリンク答えと解説
正解: D 【A(不正解)】 ? 機能の数と複雑さから規模を見積もる方法です。 見積りは開発の初めに行うもので、利用者が使い始める準備にはならない。 【B(不正解)】 ? 既存のソフトウェアを解析して情報を得ることです。 既存ソフトを解析する技法であり、新システムの使い方を利用者に伝える手段ではない。 【C(不正解)】 ? プログラムの内部構造に注目するテストです。 開発者向けのテストであり、現場の社員が操作を覚える助けにはならない。 【D(正解)】 ? 利用者向けの手引きと、使い方を学ぶ機会です。 導入では、利用者への教育訓練が行われる。マニュアルと研修で、現場が迷わず使い始められる。
開発会社が、発注元に確かめないまま自社だけで受入れテストを済ませ、システムを納入した。この進め方の問題点として適切なものは?
A. 受入れテストは、本来は発注元(取得者)が行う確認である B. 受入れテストは、要件定義より前に行うべきである C. 受入れテストは、ホワイトボックステストで行うべきである D. 受入れテストは、納入した後に行うべきである
この問題へのリンク答えと解説
正解: A 【A(正解)】 ? 誰が用途を満たすか判断するのかに注目した指摘です。 受入れテストは取得者(委託側)が、供給者の支援を受けて行う。発注元の確認なしの納入は手順として不十分である。 【B(不正解)】 ? テストの時期に注目した指摘です。 受入れテストは完成したシステムを確かめるもので、要件定義の前には行えない。 【C(不正解)】 ? テストの技法に注目した指摘です。 受入れテストは業務で使えるかを確かめるもので、内部構造に注目する技法に限るものではない。 【D(不正解)】 ? テストと納入の順番に注目した指摘です。 受入れテストで問題がなければ納入する、という順番である。納入の後に回すのは逆になる。
ソフトウェア開発手法・開発モデル
ウォーターフォールモデルの特徴として適切なものは?
A. 試作品を早く作り、利用者の反応を見ながら要求を固める B. 要件定義から順に工程を進め、原則として前の工程に戻らない C. 1〜4 週間の短い期間を繰り返し、そのたびに動くものを作る D. 既存のソフトウェアを解析して、仕様や設計を明らかにする
この問題へのリンク答えと解説
正解: B 【A(不正解)】 ? 試作品で要求を確かめる進め方です。 これはプロトタイピングモデルの特徴である。 【B(正解)】 ? 工程を上から下へ順番に進める進め方です。 工程を順番に進め、原則として後戻りしないのがウォーターフォールモデルである。 【C(不正解)】 ? 短い期間の反復で進める進め方です。 これはスクラムなどアジャイルの特徴である。 【D(不正解)】 ? 今あるソフトから情報を取り出す技法です。 これはリバースエンジニアリングの説明である。
新しい社内ポータルを作る。利用部門の要望がはっきりせず、画面を見ないと判断できないと言われた。早い段階で手戻りを減らすのに向く開発モデルは?
A. ウォーターフォールモデル B. ファンクションポイント法 C. リバースエンジニアリング D. プロトタイピングモデル
この問題へのリンク答えと解説
正解: D 【A(不正解)】 ? 工程を順番に進め、原則として前の工程に戻らないモデルです。 初めに要件を固める前提なので、要望があいまいなままだと後で大きな手戻りが起きやすい。 【B(不正解)】 ? 機能の数と複雑さから規模を見積もる方法です。 見積りの方法であり、要望を明らかにする開発モデルではない。 【C(不正解)】 ? 既存のソフトウェアを解析して情報を得る技法です。 既存ソフトを解析する技法であり、新しい要望を利用者と固める進め方ではない。 【D(正解)】 ? 早い段階で試作品を作り、利用者に確かめてもらうモデルです。 試作品を見せて要望を明らかにしながら進めるので、要望があいまいな場面に向く。
出典: IT パスポート試験 シラバス Ver.6.5(IPA)/応用情報技術者試験 シラバス Ver.7.2(IPA)
大きなシステムをいくつかの部分に分け、部分ごとに設計・開発・評価を繰り返して、少しずつ完成に近づけたい。この開発モデルは?
A. スパイラルモデル B. ウォーターフォールモデル C. 共通フレーム D. CMMI
この問題へのリンク答えと解説
正解: A 【A(正解)】 ? 部分ごとに設計・開発・評価を繰り返して育てるモデルです。 システムを部分に分け、設計・開発・評価の流れを繰り返して完成に近づけるのがスパイラルモデルである。 【B(不正解)】 ? 全体を工程の順番どおりに一度で進めるモデルです。 部分ごとの繰り返しはせず、全体を工程順に一度で進めるので当てはまらない。 【C(不正解)】 ? 開発と取引の作業項目を標準化した枠組みです。 作業項目の言葉をそろえる枠組みであり、開発の進め方を表すモデルではない。 【D(不正解)】 ? 組織のプロセスの成熟度をモデル化した枠組みです。 組織の開発能力を評価・改善する枠組みであり、開発の進め方のモデルではない。
仕様書が残っていない古い業務ソフトを作り直す。今のプログラムを解析して、どんな仕様や構成なのかを明らかにしたい。この技法は?
A. プロトタイピングモデル B. テスト駆動開発 C. リバースエンジニアリング D. ペアプログラミング
この問題へのリンク答えと解説
正解: C 【A(不正解)】 ? 試作品を作って利用者に確かめてもらうモデルです。 新しい要望を確かめる進め方であり、既存ソフトの仕様を解析する技法ではない。 【B(不正解)】 ? テストを先に作ってからプログラムを書く手法です。 新しくプログラムを書く時の手法であり、既存ソフトの仕様を取り出す技法ではない。 【C(正解)】 ? 既存のソフトウェアを解析して、仕様などの情報を得る技法です。 既存ソフトを解析して仕様や構成部品の情報を得るのがリバースエンジニアリングである。解析の結果を権利者の許可なく流用すると、権利の侵害になり得る。 【D(不正解)】 ? 2 人 1 組でプログラムを作る手法です。 プログラムを書く時の進め方であり、既存ソフトを解析する技法ではない。
出典: IT パスポート試験 シラバス Ver.6.5(IPA)/応用情報技術者試験 シラバス Ver.7.2(IPA)
アプリの更新を月 1 回から週 1 回に増やしたい。今は開発部門と運用部門が別々に動き、引継ぎで時間がかかる。目指す考え方として適切なものは?
A. DevOpsで、開発と運用が連携して素早く届ける B. ウォーターフォールモデルで、工程を順に進めて後戻りをなくす C. 共通フレームで、作業項目の言葉をそろえる D. ファンクションポイント法で、規模を正確に見積もる
この問題へのリンク答えと解説
正解: A 【A(正解)】 ? 開発(Development)と運用(Operations)を組み合わせた考え方です。 開発と運用が連携し、迅速かつ柔軟に届けるのが DevOps である。引継ぎの遅さという課題に合う。 【B(不正解)】 ? 工程を順番に進めるモデルです。 工程を順に進めても、開発と運用の間の引継ぎの遅さは解消されない。 【C(不正解)】 ? 開発と取引の作業項目を標準化した枠組みです。 用語をそろえるのには役立つが、リリースを速める協力の仕組みそのものではない。 【D(不正解)】 ? 機能の数と複雑さから規模を測る方法です。 見積りの精度は上がっても、開発と運用の連携やリリースの頻度は変わらない。
出典: IT パスポート試験 シラバス Ver.6.5(IPA)/応用情報技術者試験 シラバス Ver.7.2(IPA)
需要予測の AI を本番で使っている。データの傾向が変わると精度が落ちるので、監視と作り直しを続けたい。この取組を表す言葉は?
A. RAD B. MLOps C. UML D. 共通フレーム
この問題へのリンク答えと解説
正解: B 【A(不正解)】 ? 少人数・短期間でシステムを作る開発手法です。 短期間で作る手法であり、本番の AI の監視と作り直しを続ける取組ではない。 【B(正解)】 ? 機械学習モデルの作成と運用をつなぎ、継続的に改善する取組です。 機械学習モデルを本番で運用しながら監視し、作り直しを続けるのが MLOps の考え方である。 【C(不正解)】 ? 設計の図の書き方を標準化した表記法です。 設計図の書き方であり、AI の運用を続ける取組ではない。 【D(不正解)】 ? 開発と取引の作業項目を標準化した枠組みです。 作業項目の言葉をそろえる枠組みであり、AI の監視や作り直しの取組ではない。
出典: IT パスポート試験 シラバス Ver.6.5(IPA)/応用情報技術者試験 シラバス Ver.7.2(IPA)
設計の内容を関係者で共有したい。オブジェクト指向の設計で広く使われる、図の書き方を標準化した表記法は?
A. UML B. WBS C. ガントチャート D. SLA
この問題へのリンク答えと解説
正解: A 【A(正解)】 ? クラス図などの図の書き方を標準化した表記法です。 オブジェクト指向の設計などで使われる、図の書き方を標準化した表記法が UML である。 【B(不正解)】 ? 作業を細かく分解して階層で表したものです。 プロジェクトの作業を分ける道具であり、設計の図の表記法ではない。 【C(不正解)】 ? 作業の予定と実績を横棒で表した図です。 日程管理の図であり、システムの設計を表す表記法ではない。 【D(不正解)】 ? サービスの内容と水準を定めた合意文書です。 サービスの水準を約束する文書であり、設計の図の書き方ではない。
アジャイルと開発プロセスのフレームワーク
スクラムで、何を開発するかを決め、プロダクトバックログの優先順位に責任を持つ役割は?
A. スクラムマスター B. 開発者 C. プロダクトオーナー D. ステークホルダ
この問題へのリンク答えと解説
正解: C 【A(不正解)】 ? チームを支援し、障害を取り除く役割です。 スクラムがうまく回るよう支援する役割であり、何を開発するかを決める役割ではない。 【B(不正解)】 ? 実際に開発作業を行う人々です。 スプリントバックログの作業を進める人々であり、プロダクトバックログの優先順位を決める役割ではない。 【C(正解)】 ? プロダクトの価値を最大にすることに責任を持つ役割です。 何を開発するかを決め、プロダクトバックログを管理して優先順位を付けるのはプロダクトオーナーである。 【D(不正解)】 ? プロダクトの利用者や出資者などの利害関係者です。 意見を出す立場ではあるが、スクラムチームの中で優先順位に責任を持つ役割ではない。
スプリントの終わりに、チームで「うまくいったこと」「うまくいかなかったこと」を話し合い、次の進め方を改善した。この場を何と呼ぶか?
A. デイリースクラム B. 受入れテスト C. スプリントプランニング D. スプリントレトロスペクティブ
この問題へのリンク答えと解説
正解: D 【A(不正解)】 ? 毎日 15 分ほどで作業状況を共有する短い会合です。 毎日の状況共有であり、スプリントの最後に進め方を振り返る場ではない。 【B(不正解)】 ? 発注者が、意図した用途を満たすか確かめるテストです。 成果物を確かめるテストであり、チームの進め方を改善する話し合いではない。 【C(不正解)】 ? スプリントの初めに、今回扱う作業を決める場です。 スプリントの開始前に行う計画の場であり、終わりの振り返りではない。 【D(正解)】 ? スプリントの最後に、進め方を振り返る場です。 うまくいったこと・いかなかったことを話し合い、次の改善につなげるのはスプリントレトロスペクティブ(ふりかえり)である。
出典: アジャイル開発の進め方(IPA・2024 年 5 月)/IT パスポート試験 シラバス Ver.6.5(IPA)
2 週間のスプリントの最終日に、予定した機能が 1 つ終わらなかった。スクラムの考え方に沿った対応は?
A. 1 週間延ばし、全部終わってからレビューする B. 予定どおり終え、残りはプロダクトバックログに戻す C. ふりかえりを取りやめて、その時間で開発を続ける D. スクラムマスターが残りの機能を一人で仕上げる
この問題へのリンク答えと解説
正解: B 【A(不正解)】 ? 期間を延ばして予定を守る対応です。 スプリントは時間枠であり、予定の機能が終わらなくても延長しない。延ばすのはスクラムの考え方に反する。 【B(正解)】 ? 期間を守り、残りを次の計画に回す対応です。 スプリントは時間枠で延長しない。完成していない項目は、あとで検討できるようプロダクトバックログに戻し、次のスプリント以降の計画で扱う。 【C(不正解)】 ? 改善の場を省いて作業に回す対応です。 ふりかえりは次の改善につなげる大事な場であり、省いて開発を続けるのは考え方に合わない。 【D(不正解)】 ? 支援役が作業を引き取る対応です。 スクラムマスターはチームを支援する役割であり、残作業を一人で引き受けるのは役割に合わない。
出典: アジャイル開発の進め方(IPA・2024 年 5 月)/スクラムガイド 2020 日本語版(scrumguides.org)
新しい機能を作るとき、まずその機能が満たすべきテストを書き、そのテストが通るようにプログラムを書いていく。この手法は?
A. ペアプログラミング B. リファクタリング C. テスト駆動開発 D. 回帰テスト
この問題へのリンク答えと解説
正解: C 【A(不正解)】 ? 2 人 1 組で、1 人が書きもう 1 人が確認する手法です。 2 人で作業する進め方であり、テストを先に書くことが特徴ではない。 【B(不正解)】 ? 外から見た動きを変えずに内部構造を整えることです。 書いたプログラムの構造を整える作業であり、テストを先に書く手法の名前ではない。 【C(正解)】 ? テストを先に作り、それに合格するようにプログラムを書く手法です。 テストを先に書き、通るようにプログラムを作るのがテスト駆動開発である。 【D(不正解)】 ? 修正の影響が他に出ていないかを確かめるテストです。 修正後の確認のためのテストであり、テストを先に書く開発手法ではない。
出典: IT パスポート試験 シラバス Ver.6.5(IPA)/応用情報技術者試験 シラバス Ver.7.2(IPA)
開発者がそれぞれの変更をこまめに 1 つにまとめ、そのたびに自動でプログラムの組み立てとテストを行うようにした。このやり方は?
A. 継続的インテグレーション B. ウォーターフォールモデル C. ファンクションポイント法 D. ユーザーストーリー
この問題へのリンク答えと解説
正解: A 【A(正解)】 ? 変更をこまめに統合し、毎回自動でテストするやり方です。 変更をこまめに統合し、そのたびに自動でビルドとテストを行うのが継続的インテグレーション(CI)である。 【B(不正解)】 ? 工程を順番に進め、原則として前の工程に戻らないモデルです。 工程の進め方のモデルであり、変更をこまめに統合して自動テストするやり方ではない。 【C(不正解)】 ? 機能の数と複雑さから規模を見積もる方法です。 見積りの方法であり、変更の統合やテストの自動化とは関係がない。 【D(不正解)】 ? 利用者の視点で、実現したいことを短い文で表した要求です。 要求の書き方であり、変更を統合して自動テストする仕組みではない。
出典: IT パスポート試験 シラバス Ver.6.5(IPA)/応用情報技術者試験 シラバス Ver.7.2(IPA)
発注者と開発会社で「要件定義」や「保守」の範囲の理解がずれ、もめごとが起きた。作業項目を定義して言葉をそろえるために参照するものは?
A. CMMI B. ITIL C. UML D. 共通フレーム
この問題へのリンク答えと解説
正解: D 【A(不正解)】 ? 組織のプロセスの成熟度を 5 段階でモデル化した枠組みです。 組織の開発能力を評価・改善する枠組みであり、取引で使う作業項目の言葉をそろえるものではない。 【B(不正解)】 ? IT サービスマネジメントのフレームワークです。 運用・サービス管理の枠組みであり、開発の取引で使う作業項目を定義したものではない。 【C(不正解)】 ? 設計の図の書き方を標準化した表記法です。 設計の図をそろえるには役立つが、工程や作業の範囲の言葉を定める枠組みではない。 【D(正解)】 ? 開発と取引の作業項目を一つ一つ定義し、標準化した枠組みです。 ソフトウェア開発とその取引を適正にするため、作業項目を定義して標準化したのが共通フレーム(SLCP)である。
ソフトウェア会社が、自社の開発と保守のプロセスがどの程度整っているかを段階で評価し、次に何を改善すべきかを知りたい。参考にする枠組みは?
A. 共通フレーム B. スクラム C. CMMI D. SLA
この問題へのリンク答えと解説
正解: C 【A(不正解)】 ? 開発と取引の作業項目を標準化した枠組みです。 作業項目の言葉をそろえる枠組みであり、組織の成熟度を段階で評価するものではない。 【B(不正解)】 ? 短い期間を繰り返して開発するアジャイルの枠組みです。 開発の進め方の一つであり、組織のプロセスの成熟度を評価する枠組みではない。 【C(正解)】 ? 組織のプロセスの成熟度を 5 段階のレベルでモデル化した枠組みです。 開発と保守のプロセスを評価・改善するため、成熟度を 5 段階で定義したのが CMMI である。 【D(不正解)】 ? サービスの内容と水準を定めた合意文書です。 顧客とサービスの水準を約束する文書であり、組織の開発能力を評価する枠組みではない。
この分野に出てくる用語(47 語)
CMMI:システム開発組織のプロセスの成熟度を 5 段階のレベルでモデル化し、評価や改善に使う枠組み。能力成熟度モデル統合。
DevOps:開発(Development)と運用(Operations)の担当者が協力し、ソフトウェアを素早く安定して届けるための考え方や取組。
ITIL:IT サービスマネジメントの良い実践例(ベストプラクティス)をまとめたフレームワーク。
MLOps:機械学習モデルの作成と本番での運用をつなぎ、監視や作り直しを継続的に回していくための考え方や取組。
RAD:Rapid Application Development。少人数で開発ツールを活用し、短い期間でシステムを作る開発手法。
SLA:提供するサービスの内容と、合意された品質の水準(パフォーマンス)を定めた、サービス提供者と顧客の間の合意文書。
UML:オブジェクト指向の考え方でシステムを設計するときなどに使う、図の書き方を標準化した表記法。
WBS:プロジェクトで行う作業を、管理しやすい大きさまで段階的に細かく分解して、階層構造で表したもの。
XP:エクストリームプログラミング。テスト駆動開発やペアプログラミングなどの実践を重んじるアジャイル開発の手法。
アジャイル:短い期間で開発とリリースを繰り返し、変化に素早く柔軟に対応しながらソフトウェアを作る軽量な開発手法の総称。
ウォーターフォールモデル:要件定義・設計・プログラミング・テストなどの工程を順番に進め、原則として前の工程に戻らない開発モデル。
オブジェクト指向:データとそのデータを扱う処理(手続)をひとまとめにした「オブジェクト」を単位として、システムを組み立てる考え方。
ガントチャート:横軸に時間をとり、作業ごとの予定と実績の期間を横棒で表した図。進捗の管理に使う。
コードレビュー:書いたプログラムをほかの開発者が読み、誤りや改善点を指摘して品質を高める活動。
スクラム:チームで短い期間(スプリント)ごとに計画・開発・ふりかえりを繰り返すアジャイル開発の枠組み。
スクラムマスター:スクラムがうまく回るよう、チームを支援し、障害を取り除く役割。細かく指示するのではなく支える立場。
ステークホルダ:株主・顧客・従業員・取引先・地域社会など、企業や活動に利害関係をもつ人や組織。
スパイラルモデル:システムをいくつかの部分に分け、設計・開発・評価の流れを繰り返しながら少しずつ完成に近づける開発モデル。
スプリント:スクラムで、開発と評価を行う 1 回分の決められた短い期間。
スプリントバックログ:今回のスプリントで行う作業(タスク)のリスト。そのスプリントでだけ使う。
スプリントレトロスペクティブ:スプリントの最後に、うまくいったこと・いかなかったことを話し合い、次の改善につなげる場。
デイリースクラム:スクラムで毎日、同じ時間・場所で 15 分ほど行う短い会合。作業の状況や困りごとを共有する。
テスト駆動開発:プログラムを書く前にテストを先に作り、そのテストに合格するようにプログラムを作る開発手法。
ファンクションポイント法:入出力や画面・ファイルなどの機能の数と複雑さから、ソフトウェアの開発規模を見積もる方法。
ブラックボックステスト:プログラムの内部構造は見ずに、入力に対して仕様どおりの出力が得られるかを確かめるテスト。
プロダクトオーナー:スクラムで何を開発するかを決める役割。プロダクトの価値を最大にし、プロダクトバックログの優先順位に責任を持つ。
プロダクトバックログ:プロダクトに追加したい要求(ストーリー)を、優先順位の順に並べたリスト。プロダクトオーナーが管理する。
プロトタイピングモデル:早い段階で試作品(プロトタイプ)を作って利用者に確認してもらい、要求を明確にしながら進める開発モデル。
ペアプログラミング:2 人の開発者が 1 台のコンピュータで、1 人がコードを書き、もう 1 人が確認しながら一緒にプログラムを作る手法。
ホワイトボックステスト:プログラムの内部の構造や処理の流れに注目して、すべての命令や分岐が正しく動くかを確かめるテスト。
ユーザーストーリー:利用者の視点で、実現したいことを短い文で表した要求。プロダクトバックログの項目に使う。
リバースエンジニアリング:既存のソフトウェアを解析して、仕様や構成部品などの情報を得ること。権利者の許諾なしの流用は権利侵害になり得る。
リファクタリング:プログラムの外から見た動きを変えずに、内部の構造を分かりやすく整えること。
移行:新しいシステムを本番で使えるように、旧システムからデータや業務を切り替える作業。
回帰テスト:プログラムを修正・変更したときに、それまで正しく動いていた部分に影響が出ていないかを確かめるテスト。
機能要件:システムが何をするか、という働きそのものに関する要件。登録・検索・計算などの機能を定める。
共通フレーム:ソフトウェアの開発と取引を適正にするために、作業項目を定義して標準化した枠組み。SLCP。
継続的インテグレーション:開発者の変更をこまめに統合し、そのたびに自動でプログラムの組み立て(ビルド)とテストを行うやり方。
受入れテスト:システムの発注者(取得者)が、システムが意図した用途を満たしているかを確認するテスト。問題がなければ納入される。
性能テスト:応答時間や処理できる量などの性能が、要件を満たすかを確かめるテスト。
単体テスト:作成した個々のプログラムごとに、誤り(バグ)がないかを確かめるテスト。
統合テスト:単体テスト済みのプログラムを組み合わせ、要件どおりに連携して動くかを確かめるテスト。
非機能要件:性能・信頼性・セキュリティ・使いやすさなど、システムが提供する機能そのもの以外に求められる要件。
負荷テスト:多数の利用者や大量のデータなど大きな負荷をかけて、システムが耐えられるかを確かめるテスト。
保守:稼働中のシステムを安定して動かし、IT の進展や経営戦略の変化に合わせて修正・変更・改善する活動。
利用者マニュアル:利用者がシステムを使うための操作方法などをまとめた手引き。導入時の教育訓練にも使う。
類推見積法:過去の似たシステムの実績をもとに、新しいシステムの規模や工数を見積もる方法。
独学の次に、講座で体系立てて学びたい人へ
この問題集は独学用です。IT の基礎から講師つきで体系立てて学びたい人には、資格や IT の講座がそろうスクールも選択肢になります。
本ページは広告・アフィリエイトプログラムを利用しており、リンク経由でのお申し込み・購入により当サイトに収益が発生することがあります。ただし、ランキング・評価・掲載内容は広告費や報酬の有無に関わらず編集部の独自基準で決定しており、広告主からの指示により内容を変更することはありません。
IT・Webデザイン・資格まで幅広い講座。生成AI/DX講座はリスキリング補助金の対象
まずは無料ではじめられます。リンク先は公式サイトです。
このサービスの解説記事を読む →