2026年版・4-1

システム要件定義・設計の一問一答

基本情報技術者試験 科目A「開発技術」から、システム要件定義・設計に関する4択問題を10問。「答えと解説を見る」を開くと、正解とその理由がその場で読めます。会員登録は不要です。

この分野の演習

全10問/解説つき・基本無料

アプリ形式で解く(全600問) 開発技術の要点解説を読む
問題

上から順に解いてみてください。答えは各問の下で確認できます。科目Aの本試験と同じく、4択で出題しています。

問14-1

システムに求められる要件のうち、非機能要件に該当するものはどれか。

  • ①注文を受けたら、在庫数から注文数を差し引く
  • ②顧客の氏名から、会員の情報を検索できること
  • ③画面の操作から3秒以内に、検索結果を表示する
  • ④月末に、売上の集計表を部門別に出力できること
答えと解説を見る
正解 ③画面の操作から3秒以内に、検索結果を表示する
解説
要件は、機能要件と非機能要件に分けられます。
・機能要件:システムが「何をするか」(検索する、計算する、出力するなど)
・非機能要件:機能以外の、性能・信頼性・使いやすさ・セキュリティ・保守のしやすさなどの品質に関する要件
「3秒以内に表示すること」は、処理の速さ(性能)に関する要件なので、非機能要件です。

他の選択肢が不適切な理由
・氏名で会員の情報を検索できる:システムが行う機能なので、機能要件です。
・在庫数から注文数を差し引く:業務の処理の内容なので、機能要件です。
・売上の集計表を出力する:システムが行う機能なので、機能要件です。

覚え方のポイント
「機能要件=何ができるか」「非機能要件=どれくらい速く・安全に・止まらずにできるか」。数値の目標(秒・%・人数)が入っていたら、非機能要件のことが多いです。
問24-1

UMLの図のうち、クラスの属性と操作、およびクラス間の関連などの、システムの静的な構造を表す図はどれか。

  • ①ステートマシン図
  • ②クラス図
  • ③アクティビティ図
  • ④シーケンス図
答えと解説を見る
正解 ②クラス図
解説
クラス図は、UML(統一モデリング言語)の図の一つで、システムを構成するクラスと、それぞれのクラスが持つ属性(データ)と操作(処理)、クラスどうしの関連・継承(汎化)・集約などの関係を表します。時間とともに変わらない、システムの静的な構造を表す図です。

他の選択肢が不適切な理由
・シーケンス図:オブジェクトの間でやり取りされるメッセージを、時間の順に表す図です。
・アクティビティ図:処理の流れ(手順、分岐、並行処理)を表す図です。流れ図に近い表現です。
・ステートマシン図:オブジェクトの状態が、事象によってどのように移り変わるかを表す図です。

覚え方のポイント
UMLの図は「構造(静的)を表す図=クラス図など」「振る舞い(動的)を表す図=シーケンス図・アクティビティ図・ステートマシン図・ユースケース図など」に分けて覚えましょう。
問34-1

UMLの図のうち、システムの利用者(アクター)と、システムが提供する機能の関係を表し、要件の定義の段階でよく使われる図はどれか。

  • ①コンポーネント図
  • ②ユースケース図
  • ③配置図
  • ④クラス図
答えと解説を見る
正解 ②ユースケース図
解説
ユースケース図は、システムの外部にいる利用者や他のシステム(アクター)と、システムが提供する機能(ユースケース)の関係を表す図です。「誰が、システムを使って何をするか」を簡単な図で表せるため、要件定義の段階で、利用者と開発者の認識を合わせるのに使われます。

他の選択肢が不適切な理由
・クラス図:クラスの属性や操作、クラスどうしの関係を表す図です。
・配置図:システムを動かすハードウェア(ノード)と、そこに配置されるソフトウェアの構成を表す図です。
・コンポーネント図:ソフトウェアを構成する部品(コンポーネント)と、その依存関係を表す図です。

覚え方のポイント
「ユースケース図=人形(アクター)と楕円(機能)の図」。システムの外側から見た機能を表す図です。
問44-1

UMLのシーケンス図で表すものとして、最も適切なものはどれか。

  • ①オブジェクト間のメッセージのやり取りを時間順に表す
  • ②クラスの属性と操作、およびクラス間の関係を表す
  • ③利用者と、システムが提供する機能との関係を表す
  • ④オブジェクトの状態と、その状態が変わるきっかけを表す
答えと解説を見る
正解 ①オブジェクト間のメッセージのやり取りを時間順に表す
解説
シーケンス図は、複数のオブジェクトが、どのような順序でメッセージ(処理の呼出し)をやり取りするかを、上から下へ時間の流れに沿って表す図です。例えば「利用者が注文ボタンを押す→注文画面が注文オブジェクトを作る→在庫オブジェクトに問い合わせる」といった流れを表現できます。

他の選択肢が不適切な理由
・クラスの属性と操作、クラス間の関係:クラス図で表すものです。
・利用者とシステムの機能の関係:ユースケース図で表すものです。
・オブジェクトの状態と、状態が変わるきっかけ:ステートマシン図で表すものです。

覚え方のポイント
「シーケンス=順序」。時間の順にメッセージのやり取りを表すのがシーケンス図です。
問54-1

DFD(データフロー図)で表現するものとして、最も適切でないものはどれか。

  • ①データの発生源や行き先となる外部の実体
  • ②データを一時的または永続的に保存する場所
  • ③データを変換したり加工したりする処理
  • ④処理を実行する順序や、条件による分岐
答えと解説を見る
正解 ④処理を実行する順序や、条件による分岐
解説
DFDは、業務やシステムの中で、データがどこから来て、どのように処理され、どこへ行くかという「データの流れ」を表す図です。次の4つの記号を使います。
・データフロー(矢印):データの流れ
・プロセス(丸):データを変換・加工する処理
・データストア(二本線):データを保存する場所
・外部実体(四角):データの発生源や行き先
処理を実行する順序や、条件による分岐といった制御の流れは、DFDでは表しません。

他の選択肢が不適切な理由
・データの発生源や行き先となる外部:外部実体としてDFDで表します。
・データを変換・加工する処理:プロセスとしてDFDで表します。
・データを保存する場所:データストアとしてDFDで表します。

覚え方のポイント
「DFD=データの流れだけを見る図(順序や分岐は描かない)」。処理の順序や分岐を表したいときは、流れ図やアクティビティ図を使います。
問64-1

モジュールの独立性を高めるための設計として、最も適切なものはどれか。

  • ①モジュール強度も結合度も強くして、一体化させる
  • ②モジュール強度を弱くし、モジュール結合度を強くする
  • ③モジュール強度を強くし、モジュール結合度を弱くする
  • ④モジュール強度も結合度も弱くして、分割を細かくする
答えと解説を見る
正解 ③モジュール強度を強くし、モジュール結合度を弱くする
解説
モジュールの独立性は、次の2つの尺度で評価します。
・モジュール強度(凝集度):1つのモジュールの中の要素が、どれだけ1つの機能にまとまっているか。強いほどよい
・モジュール結合度:モジュールどうしが、どれだけ互いに依存し合っているか。弱いほどよい
強度が強く、結合度が弱いほど、モジュールの独立性が高く、修正の影響が他に広がりにくい、保守しやすい設計になります。

他の選択肢が不適切な理由
・強度を弱く、結合度を強くする:独立性が最も低くなる、望ましくない設計です。
・強度も結合度も強くする:結合度が強いと、1つの修正が他のモジュールに影響しやすくなります。
・強度も結合度も弱くする:強度が弱いと、1つのモジュールに関係の薄い機能が混在してしまいます。

覚え方のポイント
「中はまとまり(強度は強く)、外とはつながりすぎない(結合度は弱く)」。これがよいモジュールの条件です。
問74-1

オブジェクト指向の概念のうち、データとそのデータを操作する手続を1つにまとめ、外部からは決められた操作を通してだけ利用できるようにすることを何というか。

  • ①多態性
  • ②継承
  • ③カプセル化
  • ④インスタンス化
答えと解説を見る
正解 ③カプセル化
解説
カプセル化は、データ(属性)と、それを操作する手続(メソッド)を1つのオブジェクトにまとめ、内部のデータを外部から直接触れないように隠して、決められた操作(インタフェース)を通してだけ利用できるようにすることです。内部の実装を変えても、外部への影響を小さく抑えられます(情報隠蔽)。

他の選択肢が不適切な理由
・継承:上位のクラス(スーパークラス)の属性や操作を、下位のクラス(サブクラス)が引き継ぐ仕組みです。
・多態性:同じ名前の操作(メッセージ)を送っても、受け取ったオブジェクトの種類に応じて異なる動作をすることです。
・インスタンス化:クラス(設計図)をもとに、具体的なオブジェクト(インスタンス)を作ることです。

覚え方のポイント
オブジェクト指向の3大要素は「カプセル化(まとめて隠す)」「継承(引き継ぐ)」「多態性(同じ呼びかけで違う動き)」。
問84-1

オブジェクト指向で、スーパークラスの属性や操作を、サブクラスがそのまま引き継いで利用できる仕組みを何というか。

  • ①オーバーロード
  • ②継承
  • ③集約
  • ④カプセル化
答えと解説を見る
正解 ②継承
解説
継承(インヘリタンス)は、上位のクラス(スーパークラス)が持つ属性や操作を、下位のクラス(サブクラス)が引き継ぐ仕組みです。サブクラスでは、引き継いだものに加えて、独自の属性や操作を追加したり、操作の中身を上書き(オーバーライド)したりできます。共通する部分をスーパークラスにまとめることで、プログラムの再利用性が高まります。スーパークラスとサブクラスの関係を「汎化・特化」、つまり「is-a(〜の一種である)」の関係といいます。

他の選択肢が不適切な理由
・カプセル化:データと手続をまとめて、内部を隠すことです。
・集約:あるクラスが、他のクラスを部品として含む「全体と部分」の関係(has-a)です。
・オーバーロード:同じ名前で、引数の型や数が異なる複数の操作を定義することです。

覚え方のポイント
「継承=is-a(犬は動物の一種)」「集約=has-a(車はタイヤを持つ)」。関係の種類を言葉で区別しましょう。
問94-1

オブジェクト指向の多態性(ポリモーフィズム)の説明として、最も適切なものはどれか。

  • ①同じメッセージでも、受け取ったオブジェクトに応じて異なる動作をする
  • ②オブジェクトの内部のデータを隠し、決められた操作だけを公開する
  • ③上位のクラスの属性と操作を、下位のクラスがそのまま引き継いで使える
  • ④同じクラスから作ったオブジェクトが、互いに同じデータを共有する
答えと解説を見る
正解 ①同じメッセージでも、受け取ったオブジェクトに応じて異なる動作をする
解説
多態性(ポリモーフィズム)は、同じ名前の操作(メッセージ)を送っても、それを受け取ったオブジェクトのクラスに応じて、異なる動作をする性質です。例えば「図形」クラスを継承した「円」と「四角形」に同じ「面積を求めよ」というメッセージを送ると、それぞれの図形に合った計算が行われます。呼び出す側は相手の種類を気にせずに済むため、拡張しやすいプログラムになります。

他の選択肢が不適切な理由
・内部のデータを隠し、決められた操作だけを公開:カプセル化の説明です。
・上位のクラスの属性と操作を引き継ぐ:継承の説明です。
・同じクラスのオブジェクトがデータを共有:クラス変数(静的メンバ)のように、クラス単位で1つのデータを持つ仕組みに近い説明で、多態性ではありません。

覚え方のポイント
「ポリ=多くの」「モーフ=形」。1つの呼びかけで、相手によっていろいろな形の動きをする、と覚えましょう。
問104-1

デザインパターンの説明として、最も適切なものはどれか。

  • ①画面のデザインを統一するため、色やフォントの使い方を定めた決まり
  • ②設計書の書き方を統一するため、組織で定めた文書の書式の見本
  • ③プログラムを書くときの変数名の付け方や、字下げの方法を定めた規約
  • ④設計でよく現れる問題と、その解決策を再利用できる形でまとめたもの
答えと解説を見る
正解 ④設計でよく現れる問題と、その解決策を再利用できる形でまとめたもの
解説
デザインパターンは、オブジェクト指向のソフトウェア設計で繰り返し現れる典型的な問題と、その優れた解決策を、名前を付けて再利用できる形にまとめたものです。代表的なものに、GoF(Gang of Four)の23のパターン(Singleton、Observer、Factory Methodなど)があります。設計の品質が安定し、開発者どうしの意思疎通もしやすくなります。

他の選択肢が不適切な理由
・色やフォントの使い方を定めた決まり:画面のデザインガイドラインの説明です。
・変数名の付け方や字下げの方法の規約:コーディング規約(コーディング標準)の説明です。
・設計書の書式の見本:文書のテンプレートの説明です。

覚え方のポイント
「デザインパターン=設計のよくある問題と解き方の型(名前付き)」。見た目のデザインではなく、プログラムの構造の設計の話です。

基本情報技術者(科目A)の対策問題(全600問)に戻る

非公式の資格試験対策サイトです。独立行政法人情報処理推進機構(IPA)とは一切関係ありません。

※本ページでは、アクセス解析(Googleアナリティクス)と、広告の配信・成果の計測(A8.net)のためにCookie等を利用し、閲覧に関する情報をGoogle LLC・株式会社ファンコミュニケーションズへ送信しています。詳しくはプライバシーポリシーをご覧ください。

※本ページの問題・解説は、生成AI(人工知能)を活用して作成しています。

【PR】