- トップページ
- 応用情報技術者
- 平成24年度春季問題
- 平成24年度春季解答・解説
平成24年度春季解答
問題46
安全性や信頼性について、次の方針でプログラム設計を行う場合、その方針を表すべき用語はどれか。
“不特定多数の人が使用するプログラムには、自分だけが使用するプログラムに比べて、より多くの機能を組み込む。プログラムが処理できるデータの前提条件を文書に書いておくだけでなく、その前提を満たしていないデータが実際に入力されたときは、エラーメッセージを表示して再入力を促すようにプログラムを作る。
ア | フールプルーフ |
イ | フェールセーフ |
ウ | フェールソフト |
エ | フォールトトレラント |
解答:ア
<解説>
ア | ○ | フールプルーフとは、工業製品や生産設備、ソフトウェアなどで、利用者が誤った操作をしても危険に晒されることがないよう、設計の段階で安全対策を施しておくことである |
イ | × | フェイルセーフとは、故障や操作ミス、設計上の不具合などの障害が発生することをあらかじめ想定し、起きた際の被害を最小限にとどめるような工夫をしておくことである。 |
ウ | × | フェールソフトとは、故障箇所を切り離すなど被害を最小限に抑え、機能低下を許しても、システムを完全には停止させずに機能を維持した状態で処理を続行することである。 |
エ | × | フォールトトレラントは、システム設計の手法であり、システムの一部に問題が生じても全体が機能停止するということなく(たとえ機能を縮小しても)動作し続けるようなシステムを設計するものである。 |
問題47
作業成果物の作成者以外の参加者がモデレータとして主導すること、及び公式な記録、分析を行うことが特徴のレビュー技法はどれか。
ア | インスペクション |
イ | ウォークスルー |
ウ | パスアラウンド |
エ | ペアプログラミング |
解答:ア
<解説>
ア | ○ | インスペクションとは、ソフトウェア開発の各作業工程で、設計仕様書やコーディングしたプログラムのロジックを第三者が検証し、誤りや問題点を検出することである。 開発者本人が気づきづらい問題点を洗い出すことができるため、ソフトウェアの品質向上につながる。 |
イ | × | ウォークスルーとは、プログラムの仕様やプログラムそのものに誤りがないかどうかを、プログラム全体にわたってチェックすることである。 |
ウ | × | パスアラウンドとは、成果物を他者が精査・講評するレビューの手法の一つで、成果物を評価者に電子メールや回覧板などを用いて複数のレビュアーに回覧して誤りや問題点を検出する方式である。 |
エ | × | ペアプログラミングは、2人のプログラマがソフトウェアのコーディングとコーディングのチェックを行う手法である。 |
問題48
プログラムに“事実"と“規則"を記述し、プログラム言語の処理系がもつ導出原理によって結論を得るプログラムパラダイムであって、エキスパートシステムの開発に適しているものはどれか。
ア | オブジェクト指向プログラミング |
イ | 関数型プログラミング |
ウ | 手続型プログラミング |
エ | 論理型プログラミング |
解答:エ
<解説>
ア | × | オブジェクト指向プログラミングとは、データとそれを操作する手続きをオブジェクトと呼ばれるひとまとまりの単位として一体化し、オブジェクトの組み合わせとしてプログラムを記述するプログラミング技法である。 |
イ | × | 関数型プログラミングとは、プログラムを関数定義の組み合わせによって構成する技法である。 |
ウ | × | 手続型プログラミングとは、記述された命令を逐次的に実行し、処理の結果に応じて変数の内容を変化させていく技法である。 |
エ | ○ | 論理型プログラミングとは、規則と事実の記述から自動的にシステムを生成できるプログラムパラダイムである。代表的なものに"Prolog"がある。 |
問題49
マッシュアップを利用してWebコンテンツを表示している例として、最も適切なものはどれか。
ア | 検索キーワードの候補を、サーバから取得した過去の検索履歴を使って表示する。 |
イ | 地図上のカーソル移動に伴い、ページを切り替えずにスクロール表示する。 |
ウ | 電車経路の検索結果上に、各路線会社のWebページへのリンクを表示する。 |
エ | 店舗案内のページ上に、他のサイトが提供する地図情報を表示する。 |
解答:エ
<解説>
マッシュアップ(Mashup)とは、複数の Web サービスの API を組み合わせ、あたかも一つの Web サービスのようにする機能のことである。
(エ)「店舗案内のページ上に、ほかのサイトが提供する地図情報を表示する。」のみが複数のWebサービスのAPIを組み合わせているので正解である。
問題50
リバースエンジニアリングの説明はどれか。
ア | 既存のプログラムからそのプログラムの仕様を導き出すこと |
イ | 既存のプログラムから導き出された仕様を変更してプログラムを開発すること |
ウ | クラスライブラリ内の既存のクラスを利用してプログラムを開発すること |
エ | 部品として開発されたプログラムを組み合わせてプログラムを開発すること |
解答:ア
<解説>
リバースエンジニアリングは、ソフトウェアやハードウェアなどを分解、あるいは解析し、その仕組みや仕様、目的、構成部品、要素技術などを明らかにし、設計仕様を抽出しソフトウェア開発を行う手法である。
したがって、アが正解である。
お問い合わせ