平成18年度春期 基本情報 問41−60 解答編





このページは

基本情報

(基本情報技術者試験)

解答と解説のページです。

問題だけで勉強したい方は目次へ戻ってください


問41 モジュールの変更による影響を少なくするためには、モジュール間の関連性をできるだけ少なくして独立性を高くすることが重要である。モジュールの独立性が最も高いものはどれか。
関係するモジュールが共有域に定義したデータを参照する。
制御要素を引数として渡し、そのモジュールの実行を制御する。
必要なデータだけを外部宣言して共有する。
モジュール間の引数として単一のデータ項目を渡す。
解答
解説 モジュール強度とモジュールの独立性(結合度)については重要なので下にまとめます。

画像(問42)を表示できません

選択肢アは共有結合、選択肢イは制御結合、選択肢ウは外部結合の説明です。

問42 次の流れ図において、@ → A → B → D → A → B → C → A → Eの順に実行させるために、@においてmとnに与えるべき初期値aとbの関係はどれか。ここで、a、bはともに正の整数とする。

画像(問42)を表示できません
a=2b
2a=b
2a=3b
3a=2b
解答
解説 通った流れ図で重要な部分を日本語で表すと下のようになります。

@m=a、n=bとする
Amとnは等しくない
Bm<nである
Cn=n−mとする
Dmとnは等しくない
Em>nである
Fm=m−nとする
Gm=nである
H表示して終わる

つまり、最終的な値をn'とm'とすると、

m’=a−n’
n’=b−a

最終的にm’=n’なので、a−(b−a)=b−aにより、3a=2b

問43 設計上の誤りを早期に発見することを目的として、各設計の終了時点で作成者と複数の関係者が設計書をレビューする方法はどれか。
ウォークスルー
机上デバッグ
トップダウンテスト
並行シミュレーション
解答
解説 出来上がった成果物を客観的に多人数で評価することをデザインレビューといいます。これには、実際にプログラムを動かして確かめる動的テストと、プログラムを動かすことなく、ソースコードのチェックなどを行う静的テストがあります。デザインレビューの代表的な例を説明します。

インスペクション:プログラムを第三者が検証し、本人が気づかない誤りや問題点を検出すること。
ウォークスルー:開発に携わった者が集まり、誤りや問題点を発見する。
ラウンドロビン:責任者を順番に勤めながらレビューを行う。これにより、積極性が増し見落としを減す。

机上デバッグとは、静的テストの一種で紙の上でどこが悪いのかを検証するものです。
トップダウンテストとは、結合テストの一種で上位モジュールから下位モジュールに向かって行うテスト手法です。
並行シミュレーションとは、システム監査技法の一種で、監査人が準備したデータを実際に与えて本番と同じ結果になるかを調べるものです。

問44 あるシステムをサブシステムa、bに分けて開発している。現在はそれぞれのサブシステムのテストが終了した段階である。現在までのテストに関するデータは表のとおりである。ここで、このシステムの基準テスト項目数は、10項目/kステップである。

画像(問44_1)を表示できません


また、現在までのバグ検出状況は次のグラフで表される

画像(問44_2)を表示できません


サブシステムa、bの難易度を同等とすると、現状を適切に評価している記述はどれか。
サブシステムaの方が、サブシステムbよりもバグの検出数が収束しており、品質は高いと判断できる。
二つのサブシステムとも、品質安定状況になく、追加テストが必要であると判断できる。
二つのサブシステムとも、ほぼ同数のバグが検出されており、品質は同程度と判断できる。
二つのサブシステムとも、未解決バグ数は0件であり、十分にテストされていると判断できる。
解答
解説 サブテストaのような曲線を信頼度成長曲線といい、このようにバグの数が収束するとシステムの品質は安定し高くなったといえます。
サブテストbは未解決バグこそありませんが、検出数に収束がみられず、まだまだバグが発見される可能性があるといえます。

問45 動的デバッグツールの一つであるトレーサの説明として、適切なものはどれか。
プログラム中に埋め込んだデバッグ用のコードを実行するたびに、メモリやレジスタの内容を書き出す。
プログラムの異常終了時に、メモリやレジスタの内容を書き出す。
プログラムの実行過程を時系列的にモニタリングするために、メモリやレジスタの内容を書き出す。
プログラムの動作に必要となる環境を擬似的に作り出す。
解答
解説 デバッグツールについてまとめます。

スナップショットダンプ:指定した条件やコードを読み込んだときにメモリやレジスタの内容を出力する
メモリダンプ:プログラムが致命的なエラーになり、異常終了したときにメモリやレジスタの内容を出力する
トレーサ:時系列的にデータを追跡していく、ループなどループカウンタや入力の監視などに利用されることが多い
シュミレータ:仮想的に別の環境を作り上げるもの。仮想マシンや仮想OSなどがある

なお、ダンプとは、プログラム実行中の記憶領域のことをいいます。メモリダンプのことをUnix系ではcoreダンプといいます。

問46 図に示すアローダイアグラムは、あるシステムの開発作業を表したものである。クリティカルパスはどれか。ここで、矢印に示す数字は各作業の所要日数を表す。

画像(問46)を表示できません
A−B−G−L−N
A−B−H−K−N
A−C−E−G−L−N
A−C−I−N
解答
解説 クリティカルパスとは、クリティカルパス上の作業が遅延することがプロジェクトの遅延に直結するという遅延の許されない(重点的に管理する必要がある)工程をつないだ線をいいます。ひとつずつ順番に追いかけていくとA → C(5) → E(15) → G(23) → L(35) → N(45)で45日となります。

問47 データベースのバックアップ処理には、フルバックアップ方式と差分バックアップ方式がある。差分バックアップ方式に関する記述のうち、適切なものはどれか。
障害からの回復時に差分だけ処理すればよいので、フルバックアップ方式に比べて復旧時間が短い。
フルバックアップのデータで修復した後に、差分を加えて復旧する。
フルバックアップ方式と交互に運用することはできない。
フルバックアップ方式に比べ、バックアップに要する時間が長い。
解答
解説 フルバックアップと差分バックアップを下にまとめます。

フルバックアップとは、現在記録されているデータを完全にバックアップする手法で、比較的時間がかかります。
差分バックアップとは、定期的にフルバックアップされていることを仮定して、特定の瞬間からの差分だけをバックアップします

例を挙げると、毎週日曜日にフルバックアップを行い月〜土曜日は前日からの差分バックアップを毎朝行うとする。このとき、水曜日の午後に障害が発生した場合は、日曜日のフルバックアップ+月曜日の差分バックアップ+火曜日の差分バックアップ+水曜日の差分バックアップから、水曜日の朝の状態を復元することができます。

フルバックアップと差分バックアップをうまく組み合わせて適切な期間を復元できるようにするのが基本です。

問48 バーコードには、検査数字(チェックディジット)を付加するのが一般的である。JANコード(標準タイプ、13けた)では、12けたの数の検査数字を次の方式で算出している。この方式で算出した図のバーコード(123456789012)の検査数字として適切な値はどれか。

[JANコードにおける検査数字の算出及び付加方式]
(1) 検査数字を付加する前の右端の数字の位置を奇数けたとし、左に向かって交互に奇数けたと偶数けたとする。
(2) 偶数けたの数字の合計を求める。
(3) 奇数けたの数字の合計を求め、その値を3倍する。
(4) (2)と(3)の合計をもとめる。
(5) (4)の値の1の位を10から引く。ただし、1の位が0のときは0とする。例えば(4)が123のときは10-3=7、120のときは0となる。
(6) (5)で求めた数字を検査数字として、右端けたの右に付加する。

画像(問48)を表示できません
解答
解説 バーコードのチェックディジットを求める問題です。順番に求めて見ましょう。

@偶数桁の合計をもとめる(1+9+7+5+3+1)=26
A基数桁の合計の3倍をもとめる(2+0+8+6+4+2)×3=66
B2つの合計をもとめる26+66=92
C10−上の値の1の位=10−2=8

問49 コンピュータシステムの利用料金を逓減課金方式にしたときのグラフはどれか。ここで、横軸を使用量、縦軸を利用料金とする。
画像(問49ans)を表示できません
解答
解説 逓減(ていげん)とは徐々に減るという意味で、逓減課金方式とは、最初は高かった利用金額が、利用するほど時間単位ごとの利用金額減少するという課金方法です。つまり、使用量が増えるたびに使用金額が低く=傾きが小さくなっていきます。(もちろん、全体的な利用料金は増えていきます)

問50 システム運用管理における管理情報の取扱いに関する記述のうち、最も適切なものはどれか。
管理は少人数の管理者グループで行う。管理用アカウントは、グループ専用のものを共用する。管理情報は、一般ユーザに公開し、ユーザ自身がチェックできるようにする。
管理は少人数の管理者グループで行う。管理用アカウントは、グループ専用のものを共用する。管理情報は、セキュリティレベルなどを考慮した上で一般ユーザへの公開を行う。
管理は少人数の管理者グループで行う。管理用アカウントは、個々の管理者専用のものを使用する。。管理情報は、セキュリティレベルなどを考慮した上で一般ユーザへの公開を行う。
管理は一人の管理者で行う。管理情報は、セキュリティレベルなどを考慮した上で一般ユーザへの公開を行う。
解答
解説 アカウント管理の重要なポイントは、本人しか使えないこと、不正に利用できないこと、管理者が適切な権限をもつことです。

選択肢ア、イのようにグループで共有するとだれがアクセスしたか特定ができなくなります。
選択肢エのように、管理者が1人しかおらず、極端な権力が集中すると、管理者が不正をした場合に検出できなくなります。

問51 IPv4(Internet Protocol version 4)にはなく、IPv6(Internet Protocol version 6)で追加・変更された仕様はどれか。
アドレス空間として128ビットを割り当てた。
サブネットマスクの導入によって、アドレス空間の有効利用を図った。
ネットワークアドレスとサブネットマスクの対によってIPアドレスを表現し、クラス概念をなくした。
プライベートアドレスの導入によって、IPアドレスの有効利用を図った。
解答
解説 IPv6はIPv4で問題となったグローバルなIPアドレスの枯渇が問題を解決するために導入されました。IPv4では32ビットを10進数4桁であらわしていましたが、IPv6では、128ビットを16進数32桁で表現します。

問52 符号化速度が64kビット/秒の音声データ1.2Mバイトを、通信速度が48kビット/秒のネットワークを用いてダウンロードしながら途切れることなる再生するためには、再生開始前に最低何秒分のデータのバッファリングが必要か。
50
150
200
350
解答
解説 音声データを符号化して転送する。その際に、符号化速度≦転送速度であれば、順次データを転送できますが、符号化速度>転送速度であれば、いつかは変換したデータがなくなり、ある程度の時間通信側が待たなければならなくなります。

今回、転送するデータは、1.2MB
符号化速度は、64kビット/秒=8Kバイト/秒。よって、1200/8=150秒
転送速度は、48kビット/秒=6Kバイト/秒。よって、1200/6=200秒

よって、50秒のバッファがあれば、遅延なく転送できるといえます。

問53 TCP/IPネットワークでホスト名をIPアドレスに変換する機能を提供するものはどれか。
ARP
DHCP
DNS
SNMP
解答
解説 選択肢のプロトコルを下にまとめます。

ARP:IPアドレスからMACアドレスを求めるプロトコル(逆はRARPが行います。)
DHCP:動的にIPアドレスをクライアントに割り当てるプロトコル
DNS:IPアドレスとドメイン名を対応付けるプロトコル
SNMP:メールをクライアントからサーバ。サーバからサーバへ転送するプロトコル(サーバからクライアントはPOP3が行います)

問54 インターネットで使われるプロトコルであるTCP及びIPと、OSI基本参照モデルの7階層との関係を適切に表しているものはどれか。
画像(問54ans)を表示できません
解答
解説 TCPは信頼性のある転送を行いトランスポート層で動作します。IPはその下の層であるネットワーク層で動作します。TCP/IPと一体化されて呼ばれることが多いですが、あくまで別の働きをしています。

問55 設置場所の異なるクライアントとサーバ間で、次の条件で通信を行う場合の応答時間は何秒か。ここで、距離による遅延は考慮しないものとする。

画像(問55)を表示できません
1.4
3.8
5.0
5.8
解答
解説 まず、実質的な転送速度は、8Mビット/秒×0.6=1Mバイト/秒×0.6=0.6Mバイト/秒。これを使って上りと下りの転送時間を計算します。

上り:1/0.6=1.667
下り:2/0.6=3.333

これに、クライアントの処理時間0.4とサーバの処理時間0.4を加えると、1.8+3.3+0.4+0.4=5.8秒となります。

問56 CATV回線を用いたデータ伝送(インターネット接続サービスなど)の特徴に関する記述のうち、適切なものはどれか。
回線によって各端末がセンタとスター型に接続されているので、端末同士の接続サービスが容易に表現できる。
ケーブルモデムを利用することによって、下り方向については数Mビット/秒を超える高速伝送が可能である。
データ伝送を行うためには、回線に光ファイバケーブルを使用しなければならない。
上り方向・下り方向とも回線速度が同じであり、双方向通信に最適である。
解答
解説 CATV(Common Antenna TeleVision あるいは Community Antenna TeleVision)はケーブルテレビやインターネット、電話などを利用することができます。転送には同軸ケーブルを利用することもでき、下りのほうが高速になります。

問57 二つのLANセグメントを接続する装置Aの機能をOSI基本参照モデルで表すと図のようになる。この装置Aとして、適切なものはどれか。

画像(問57)を表示できません
ゲートウェイ
ブリッジ
リピータハブ
ルータ
解答
解説 これは、ネットワーク機器が対応するOSI基本参照モデルの階層と照らし合わせることで解くことができます。

ハブ(OSI基本参照モデル第1層:物理層):集線装置
リピータ(OSI基本参照モデル第1層:物理層):信号の増幅
ブリッジ(OSI基本参照モデル第2層:データリンク層):MACアドレスを使った通信を行う
ルータ(OSI基本参照モデル第3層:ネットワーク層):IPアドレスアドレスを使ったルーティングを行う。
ゲートウェイ(OSI基本参照モデル第4層以上):異なるLANの接続や、プロトコルの変換を行う。

ここで、3層まで対応しており、転送も行っているので、ルータだとわかります。

問58 項目a〜fからなるレコードがある。このレコードの主キーは、項目aとbを組み合わせたものである。また、項目fは項目bによって、特定できる。このレコードを第3正規形にしたものはどれか。

画像(問58)を表示できません
画像(問58ans)を表示できません
解答
解説 リレーションデータベースの正規化にはいくつかの段階があります。通常は第3正規形までですが、ボイス・コッドや第4、第5正規形というのもあります。

第1正規形:繰り返しや、反復している部分を独立させる。
第2正規形:第1正規形であり、部分関数従属を除去する(完全関数従属にする)
第3正規形:第2正規形であり、主キー以外に従属するものを除去する(推移関数従属を除去する)

用語についても少し解説しておきます。
関数従属:BがAに関数従属するとは、A(例:社員番号)を決めるとB(社員名)が一意に決定するというもの。Aを決定項、Bを従属項といいA→Bであらわす。
完全関数従属:決定項に余分なものがないときにいう。社員番号→社員名など。
部分関数従属:決定項に余分なものがあるときにいう。{社員番号、部署番号}→社員名など(部署番号がなくても社員名を特定できる)
推移関数従属:主キー以外に従属するものをいう。{社員番号}→{部署番号、部署名、社員名}のとき部署名は、部署番号にも従属しているので推移従属となる。

問59 データベースの排他制御であるロックに関する説明として、適切なものはどれか。
デッドロックが発生した場合には、両方のトランザクションをロールバックする。
ロックには、読取り時に使用する共有ロックと、変更時に用いる占有ロックがある。
ロックの粒度は大きいほど並列に実行されるトランザクションは多くなる。
ロックを用いると、デッドロックが発生することはない。
解答
解説 データのロックに関する問題です。ロックは、読み込んで書き込む間にデータが書き換えられると整合性が崩れる場合にもちいられるものです。また、自分だけが占有する占有ロックと、他者の読み込みを許可する共有ロックが存在します。デッドロックとは、互いに占有ロックをした状態で他方の資源を要求することで、処理が進まなくなってしまう現象です。この場合は、両方ともロールバックをして処理をやり直します。

問60 トランザクションのACID特性に関する記述のうち、適切なものはどれか。
コミット後にシステム障害が発生した場合、その内容は変更前の状態に戻される。
トランザクションが同時に実行されても、互いに干渉しない。
トランザクションの実行の結果、データベースの整合性が崩れることも許容する。
トランザクションの途中でシステム障害が発生しても、障害発生時までの変更内容は保存される。
解答
解説 ACIDとは、(データベースなどの)トランザクションが備えるべき性質のことで、原子性、一貫性、独立性、永続性のことです。それぞれを下にまとめます。

原子性(Atomicity):完全に実行されるか、全く処理をしない
一貫性(Consistency):データの整合性が保たれ、矛盾がない
独立性(Isolation):処理過程は他者から隠蔽され、影響されない
永続性(Durability):完了した操作は、失われない

よって、選択肢イは独立性をあらわしているといえます。