平成17年度 秋期 ソフトウェア開発技術者試験 問1−20 解答編




このページは

ソフ開

(ソフトウェア開発技術者試験)

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

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



問61 データベースの3層スキーマ構造に関する記述として、適切なものはどれか。
3層スキーマ構造は、データベースサーバ、アプリケーションサーバ、及びクライアントの三つの層から成る。
データの論理的関係を示すスキーマと、利用者が欲するデータの見方を示すスキーマを用意することによって、論理的データ独立性を実現している。
内部スキーマは、データそのものを個々のアプリケーションの立場やコンピュータの立場から離れて記述するものである。
物理的なデータベース構造をユーザが意識する必要がないように、データを記録装置上にどのように記録するか記述したものを外部スキーマという。
解答
解説 3層スキーマを以下に図示し、内容をまとめます。

スキーマを表示できません

問62 データベースの論理モデルに関する記述のうち、適切なものはどれか。
階層モデルは、多対多のレコード関係を表現するのに適している。
関係モデルでは、子レコードはただ一つの親レコードに属する。
ネットワークモデルは、行と列からなる表で表現できる。
ボイスコッド正規形は、関係モデルで使用される形式である。
解答
解説 論理モデルとは、データベースを構築する際のデータ構造などを抽象できなモデルで表現したものです。代表的なものに、階層モデル、ネットワークモデル、関係モデル、オブジェクトモデルなどがあります。それぞれの選択肢をみていきます。

選択肢ア:階層モデルは木構造のような形になり、1対多の関係を表します。
選択肢イ:表のような形でデータを表現します。子レコードは複数の親レコードに所属することもあります。
選択肢ウ:一般的なネットワークをあらわすのに利用されるもので、多対多の関係を表すのに適しています。
選択肢エ:関係モデルの正規系の種類の1つで、全ての関数従属性の決定項が候補キーである場合の形態をいいます。

問63 関係データベースの主キーに関する記述のうち、適切なものはどれか。
外部キーの値は、NULL値であってはならない。
外部キーの参照先は、代替キーでなければならない。
候補キーのうちの一つが主キーとなり、残りは代替キーとなる。
代替キーのうちの一つが主キーとなり、残りは候補キーとなる。
解答
解説 主キーとは、その表において、ほかの従属した要素を一意に決定できる項目のことをいいます。そのため、値にNULL(空値)や重複は認められません。また、複数の項目(キー)を主キーとして扱うこともできます(複合キー)。主キーと同じく一意に設定される制限『UNIQUE』がありますが、これはNULLが認められます。

問64 第1、第2、第3正規形とそれらの特徴a〜cの組合せとして、適切なものはどれか。

a:どの非キー属性も、主キーの真部分集合に対して関数従属しない。
b:どの非キー属性も、推移的に関数従属しない。
c:属性の値として、繰返しをもたない。
画像(問64ans)を表示できません
解答
解説 データベースの正規化は、重複や矛盾を排除して、データベースの一貫した内容を保障します。リレーションデータベースの正規化にはいくつかの段階があります。通常は第3正規形までですが、ボイス・コッドや第4、第5正規形というのもあります。

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

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

問65 販売会社が商品の注文を記録する場合のエンティティ(顧客、商品、注文、注文明細)間の関係を、E−R図で表現する。a〜dに入れるべきエンティティの組合せとして、適切なものはどれか。ここで、顧客は何度も注文を行い、同時に複数の商品を注文する。また、長方形はエンティティセットを表し、長方形間の1 *は1対多のカーディナリティを表す。

画像(問65)を表示できません
画像(問65ans)を表示できません
解答
解説 まず、顧客は何度も注文を行うとあるので、顧客と注文の関係は1対多であることがわかります。また、1つの注文から同時に複数の商品があることと1つの商品がさまざまな注文で指定されることが予想できます。つまり、注文と商品は多対多であることが容易に予想できます。最後に、残った注文明細で多対多の関係を1対多と多対1に分けることで、E−R図が完成します。

問66 関係DBMSの機能a〜cと関係のあるSQL文の適切な組合せはどれか。

a:表の所有者や許された人だけが処理できる。
b:正常終了したトランザクションの更新内容が、その後のシステム障害で無効になることはない。
c:ビューを定義する。
画像(問66ans)を表示できません
解答
解説 基本的なSQLの命令を下にまとめます。

データ操作言語(DML)
SELECT:データを検索するときに使う
INSERT:データを挿入するときに使う
UPDATE:データを更新するときに使う
DELETE:データを削除するときに使う

データ定義言語(DDL)
CREATE:表などを作る
DROP:表などを削除する
ALTER:表などを更新する
TRUNCATE:表などを削除する

データ制御言語(DCL)
GRANT:アクセス権を付加する
REVOKE:アクセス権を剥奪する
COMMIT:トランザクションを確定する
ROLLBACK:トランザクションを取り消す

問67 BUSHO表とSHAIN表があり、SHAIN表は次のSQL文で定義されている。

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


BUSHO表とSHAIN表に次のデータが格納されている状況で、SHAIN表に追加可能なデータはどれか。

画像(問67_2)を表示できません
画像(問67ans)を表示できません
解答
解説 SQL文を解説していきます。

まず、CREATE TABLEという文でSHAINという表を作ることを宣言しています。内容は順に次のとおりです。

S_CODEはCHAR型3文字分で主キー
S_NAMEはNCHAR型で3文字分
BU_CODEはCHAR型で3文字分
S_AGEはDECIMAL型で2文字分
BU_CODEはBUSHO表からの外部キーである
S_AGEは18以上60以下の値である。

なお、NCHARとは主にUnicodeの文字列型。DECNIMALは有効桁数などの精度を含む数値を指定するものです。

選択肢アは、問題なく追加できます。
選択肢イは、S_CODEは主キーで、すでに111があるため追加できません。
選択肢ウは、BU_CODEが外部キーなので、BUSHO表にないB04は追加できません。
選択肢エは、S_AGEが18より小さいので追加できません。

問68 元のデータベースと同じ内容の複数データベースをあらかじめ容易しておき、元のデータベースが更新されると、独立のプロセスが、指定された一定時間後にその内容を複数データベースに反映する手法はどれか。
2相コミットメント
イメージコピー
ミラーリング
レプリケーション
解答
解説 それぞれの用語を以下にまとめます。

2相コミットメント:分散しているDBなどにおいて、2段階でコミットやロールバックを指示するシステムのこと
イメージコピー:ファイルとしてではなく、ビット列としてイメージをコピーすること
ミラーリング:複数の保管場所(HDDなど)に同時に書き込むこと
レプリケーション:データの複製(レプリカ)を複製し、オリジナルのデータに変更が発生すると、レプリカに反映するもの

問69 チェックポイントを取得するDBMSにおいて、図のような時間経過でシステム障害が発生し、前進復帰によって障害回復を行った。前進復帰後のa、bの値は幾つか。ここで、Tn□は長方形の左右両端がトランザクションの開始と終了を表し、長方形内の記述は処理内容を表す。T1開始前のa、bの初期値は0とする。

画像(問69)を表示できません
画像(問69ans)を表示できません
解答
解説 まず、DBの代表的な復旧方法である、ロールバックとロールフォワードを下に図示します。

ロールバックとロールフォワードを表示できません

システムの論理的な障害の場合は、ロールバックをしますが、コミットに失敗したトランザクションだけを処理すればよいので、チェックポイント以前の回復作業は不要です。(物理的な障害の場合は必要です。)

それでは、各トランザクションを見ていきます。
T1:すでにチェックポイントの前にコミットが完了しているので、復旧は不要です。
T2,T3:処理の途中で障害が発生したので、ロールバックで復旧をします。
T3,T4:チェックポイントのデータとジャーナルを利用して、ロールフォワードで復旧します。

問70 遠隔地にあるデータベースにアクセスするプロトコルを規定している国際規格は何と呼ばれるか。
CORBA
DDL
RDA
RPC
解答
解説 それぞれの用語を以下にまとめます。

CORBA(Common Object Request Broker Architecture):異機種分散処理環境のことで、オブジェクト間でのメッセージ交換の仕様を定義しています。
DDL(Data Definition Language):データ定義言語のことで、データベース全体の定義や制御を行う言語
RDA(Remote Database Access):分散環境でデータベースにアクセスするための規格
RPC(Remote Procedure Call):遠隔地や別のアドレス空間にある手続や関数・サブルーチンを呼び出すこと技術

問71 図は公開かぎ暗号方式による機密情報の送受信の概念図である。a、bに入れるかぎの適切な組合せはどれか。

画像(問71)を表示できません
画像(問71ans)を表示できません
解答
解説 公開鍵暗号方式は、暗号化鍵と復号化鍵が別々の暗号方式です。代表的なものに巨大数の素因数分解の困難性を利用したRSAがあります。

公開鍵暗号方式は、受信者の公開鍵で暗号化し、受信者の秘密かぎで復号化することで実現します。

また、本人確認もできるディジタル署名は、これの逆の過程をたどり送信者の秘密かぎで暗号化し、送信者の公開かぎで復号化します。

問72 公開かぎ暗号方式によって、n人が相互に暗号を使って通信する場合、異なるかぎは全体で幾つ必要になるか。
n+1
2n
n(n−1)/2
log2
解答
解説 まず、公開鍵暗号方式は暗号鍵と復号鍵が異なり、秘密鍵は自分だけが持ち、公開鍵を通信相手に渡します。

よって、それぞれが自分の秘密鍵と公開鍵を準備しておけば、だれとでも通信できるので、2n個ですみます。

一方で、共通鍵は自分と自分以外の通信は、1×(n−1)です。全体ではn人いるので、n(n−1)となります。送信者と受信者を入れ替えても同じかぎで通信できるので、実質はこの半分ですむことになるので、n(n−1)/2となります。

問73 パスワードに使用する文字の種類をM、パスワードのけた数をnとするとき、設定できるパスワードの個数を求める数式はどれか。
画像(問73ans)を表示できません
解答
解説 文字の種類をひとけたづつばらして考えると、するM×M×M×・・・・とけた数n乗したのと同じくなります。よって、種類が多いよりもけた数を多くする方がはるかにセキュリティの効果が高いことが合わせて理解できると思います。

問74 無線LANの認証で使用される規格IEEE802.1xが規定しているものはどれか。
アクセスポイントがRADIUSサーバと連携するユーザ認証の枠組み
アクセスポイントが認証局と連携し、暗号化パスワードをセションごとに生成する枠組み
ディジタル証明書を使って認証するプロトコルWEP
無線LANの認証プロトコルとして、信号レベルで衝突を検知するCSMA/CD方式
解答
解説 IEEE802.1xは、LAN接続時の認証規格です。クライアントであるサプリカント。アクセスポイントであるオーセンティケータ。認証をおこなう認証サーバの3つから構成されています。検疫ネットワーク等で利用されています。

問75 セキュリティ対策の“予防”に該当するものはどれか。
アクセスログをチェックし、不正なアクセスがないかどうかを監視する。
コンティンジェンシープランを策定し、訓練を実施する。
重要ファイルのバックアップ処理を定期的に行う。
セキュリティに関する社内教育を実施し、個人の意識を高める。
解答
解説 セキュリティ対策の予防も一般的に使われている予防という単語とほとんど同義です。つまり、何か損害が発生する前にそれを抑える対処のことを指します。ログのチェックやバックアップは損害が発生した後に、その分析や回復をするもので、事前に損害を抑える能力はありません。また、コンティンジェンシープランとは緊急時対応計画のことです。

問76 ブラウザからWebサーバにアクセスするシステムのセキュリティに関する記述のうち、適切なものはどれか。
CGI又はサーブレットによって生成されたHTML文章は動的に変化するので、ブロキシサーバでのキャッシュの内容が、本来の利用者以外に開示されることはない。
SSLを使用すれば、通信経路上にブロキシサーバが存在していても、各利用者とWebサーバとの間での参照情報が、本来の利用者以外に開示されることはない。
複数の利用者が同一のパソコンを利用する場合、最初にHTTP基本認証を利用したログイン操作を行うようにすれば、ブラウザを起動したまま利用者が交代しても、本来の利用者以外に情報が開示されることはない。
リバースプロキシは静的にコンテンツのキャッシュができないので、それを使ってもクライアントへの応答時間が改善されることはない。
解答
解説 ブロキシサーバは代理サーバどもよばれ、主にDMZ等におかれて、Webページ等へのアクセスを高速にかつ代理的に行います。よって、その内容は利用者以外にも知られる可能性はあります。SSLは暗号化技術の一つで、プロキシサーバがあっても、その暗号は端末間で暗号・復号するので途中で利用者以外が内容を読み取ることはできません。ブラウザを起動したままということはログインしたままということなので、これも他人に内容を知られる可能性があります(なりすまし等にも悪用されかねません)。リバースプロキシはプロキシサーバの逆で、外部からのアクセスを内部に中継します。よって、キャッシュしたデータを利用するので、クライアントへの応答時間は短縮されます。

問77 ISMS適合性評価制度における情報セキュリティポリシに関する記述のうち、適切なものはどれか。
基本方針は、事業の特徴、組織、その所在地、資産及び技術を考慮して策定する。
重要な基本方針を定めた機密文章であり、社内の関係者以外の目に触れないようにする。
セキュリティの基本方針を述べたものであり、ビジネス環境や技術が変化しても変更してはならない。
特定のシステムについてリスク分析を行い、そのセキュリティ対策とシステム運用の詳細を記述したものである。
解答
解説 セキュリティポリシとは、企業が情報セキュリティに対する基本的な考え方を文章にしたものです。まず、セキュリティポリシを作成する際は、その会社の特性を十分に考慮して基本計画を立てます。そして、社員全員に周知徹底し、必要に応じて改正をする必要があります。特定のシステムについてのみに限定をするものでもありません。

目的としては、社員のセキュリティに対する意識向上や、社外への信頼性のイメージアップなどがあります。

問78 リスクマネジメントの実施内容を説明したものはどれか。
将来の損失発生の危険性は不確実なものであり、対策費の予算ではなく損失額を見積もる。
投機的リスクとは経営主体の管轄外で発生するリスクなので、内在するリスクは管理対象外とする。
リスクファイナンスでは、リスク分析、リスクコントロールなどのリスクマネジメントにかかる一切の費用の手当てをする。
リスク分析では純粋リスクにとどめず、投機的リスクも対象にする。
解答
解説 リスクマネジメントとは、システムに内在する脆弱性や不安定要素を分析し、企業活動に生じる損失を防止、軽減するための対策をいいます。また、リスクマネジメントのはじめにリスク分析を行いどのようなリスクがあり、どれくらいの損害を生み出すかを調べます。代表的なリスクの対策を以下にまとめます。

リスクを表示できません

問79 システム及び製品に関する情報技術セキュリティ評価基準の国際規格はどれか。
ISO/IEC13335
ISO/IEC14516
ISO/IEC15408
ISO/IEC17799
解答
解説 国際規格ISO/IEC15408の対象製品は、セキュリティ機能を持ったIT製品/システムであり、ソフトウェア、ハードウェア、ファームウェアが対象になります。(日本規格ではJISX5070に相当します。)

問80 静止画像の圧縮方式に関する記述のうち、適切なものはどれか。
可逆符号圧縮方式では、圧縮率は伸張後の画像品質に影響しない。
可逆符号圧縮方式では、非可逆圧縮より高い圧縮率が実現できる。
非可逆符号圧縮では、伸張後の画像サイズが元の画像よりも小さくなる。
非可逆符号圧縮方式による圧縮では、圧縮率を変化させることはできない。
解答
解説 圧縮された情報を完全に元に戻せる圧縮を可逆圧縮、圧縮された情報を完全に元に戻せない圧縮を非可逆圧縮といいます。可逆圧縮の代表例はGIFで、非可逆圧縮の代表はJPEGです。非可逆圧縮は元に戻せない分、圧縮率が高くなる傾向があります。