ITパスポート 2014年 春期 問47
問題文
リバースエンジニアリングの説明として、適切なものはどれか。
選択肢
ア:確認すべき複数の要因をうまく組み合わせることによって、なるべく少ない実験回数で効率的に実験を実施する手法
イ:既存の製品を分解し、解析することによって、その製品の構造を解明して技術を獲得する手法(正解)
ウ:事業内容は変えないが、仕事の流れや方法を根本的に見直すことによって、最も望ましい業務の姿に変革する手法
エ:製品の開発から生産に至る作業工程において、同時にできる作業を並行して進めることによって、期間を短縮する手法
🔒 解説は解答すると表示されます
リバースエンジニアリングの説明【ITパスポート 解説】
正解の理由
設問で問われている「既存の製品を分解し、解析することによって、その製品の構造を解明して技術を獲得する手法」という説明は、まさにリバースエンジニアリング(Reverse engineering:既存製品の設計や構造を解析して明らかにする技術)の定義に合致します。したがって、選択肢のうち イ が正しい説明です。
リバースエンジニアリングは、製品を物理的に分解したり、ソフトウェアの挙動を解析したりして、「どう作られているか」「内部の仕組みは何か」を明らかにする行為です。スマホの分解や、ソフトウェアのバイナリ解析が典型例です。
解法ステップ
- 問題文のキーワードを拾う:「既存の製品」「分解」「解析」「構造を解明」「技術を獲得」など。
- 各選択肢と照らし合わせる:キーワードと一致する定義や似た用語を思い出す。
- 用語の意味を思い出す:
- リバースエンジニアリング = 既存製品を解析して構造や設計を明らかにする。
- 他の選択肢は別の専門用語(後述)を表すため除外する。
- 最も合致する選択肢を選ぶ:キーワードと完全に一致する イ を正解とする。
短時間で解くコツ:設問中の「分解」「解析」「既存の製品」が出たらリバースエンジニアリングを連想します。
選択肢別の誤答解説
- ア:実験計画法(DOE:Design of Experiments)を指します。複数要因を組み合わせて実験回数を減らす手法であり、リバースエンジニアリングとは別物です。
- イ:既存製品を分解・解析して構造や設計を明らかにする手法。リバースエンジニアリングの定義に一致するため正解です。
- ウ:BPR(Business Process Reengineering:業務プロセスの根本的な再設計)を示しています。事業内容は変えずに業務の流れややり方を根本的に見直す施策で、製品の解析とは異なります。
- エ:同時並行設計(Concurrent engineering:設計から生産までの作業を並行して進めて期間を短縮する手法)を示します。開発プロセスに関する手法であり、分解・解析とは関係ありません。
よくある誤解
- 「リバースエンジニアリング=単なる模倣」と考える誤解
→ リバースエンジニアリングは「解析して設計を理解する行為」であり、必ずしも模倣(そのままコピー)を意味しません。技術理解や互換性確保、セキュリティ解析など正当な目的もあります。 - 「製品を分解するのは物理的な作業だけ」と思う誤解
→ ソフトウェアのリバースエンジニアリングはコード解析やバイナリ解析、挙動観察など物理分解とは異なる手法が含まれます。
補足コラム
- 法的・倫理的注意点:リバースエンジニアリングは研究や互換性確保などの正当な目的で行われることがありますが、著作権・ライセンス違反や秘密保持契約(NDA)違反になる場合があります。国や状況によって扱いが異なるため、実務で行う際は法務や契約を確認してください。
- よく使われる場面:故障解析(なぜ壊れたか調べる)、セキュリティ解析(脆弱性を発見する)、互換製品の開発(既存機器と接続できる製品を作る)など。
- ハードウェアとソフトウェアの違い:ハードは物を分解して部品構成を調べます。ソフトは逆コンパイルやデバッガを使って内部動作を解析します。
FAQ
Q1: リバースエンジニアリングは違法ですか?
A1: 一概に違法とは限りません。目的や方法、契約・著作権の有無で合法性が変わります。商用製品の無断解析で権利侵害になることがあるため、実務では法的確認が必要です。
A1: 一概に違法とは限りません。目的や方法、契約・著作権の有無で合法性が変わります。商用製品の無断解析で権利侵害になることがあるため、実務では法的確認が必要です。
Q2: 学習目的でリバースエンジニアリングをしてもよいですか?
A2: 学習目的の場合でも、利用するソフトや機器のライセンスや法令に注意してください。オープンソースや自分で用意した環境で学ぶのが安全です。
A2: 学習目的の場合でも、利用するソフトや機器のライセンスや法令に注意してください。オープンソースや自分で用意した環境で学ぶのが安全です。
Q3: リバースエンジニアリングを学ぶと役立ちますか?
A3: はい。セキュリティ、互換性設計、故障解析などに役立ちます。ただし法的・倫理的側面も学ぶ必要があります。
A3: はい。セキュリティ、互換性設計、故障解析などに役立ちます。ただし法的・倫理的側面も学ぶ必要があります。
関連キーワード: リバースエンジニアリング、逆解析、ソフトウェア解析、ハードウェア分解、実験計画法、DOE、BPR、業務プロセス再設計、同時並行設計、コンカレントエンジニアリング、著作権、セキュリティ、互換性、技術移転

\ せっかくなら /
ITパスポートを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

