ソフトウェアの再利用技術に関する記述のうち,リバースエンジニアリング
説明として適切なものはどれか。

 ア 既存のプログラムから,そのプログラムの仕様を導き出す技術である。

 イ 既存のプログラムから導き出された仕様を修正して,新規プログラムを開
  発する技術である。

 ウ 既存のプログラムを部品化し,それらの部品を組み立てて,新規プログラ
  ムを開発する技術である。

 エ クラスライブラリにある既存のクラスを再利用しながら,新規プログラム
  を開発する技術である。

■キーワード■ リバースエンジニアリング,ソフトウェアの再利用技術

■解答■
  テクニカルエンジニア(ネットワーク)午前平成15年問13

 ア 既存のプログラムから,そのプログラムの仕様を導き出す技術である。

> リバースエンジニアリング 【reverse engineering】
>
>  ソフトウェアやハードウェアなどを分解、あるいは解析し、その
> 仕組みや仕様、目的、構成部品、要素技術などを明らかにすること。
> プログラムの分野では、モジュール間の関係の解明やシステムの基
> 本仕様の分析といった行為を含む。
>
>  リバースエンジニアリングは、企業が他社製品の互換製品を作る
> ために行なうことが多い。セイコーエプソンがリバースエンジニア
> リングによってNECのPC-9800シリーズの互換パソコンを開発した例
> は有名である。企業の製品は特許や著作権が含まれているものが多
> いので、解析結果を利用する際には知的所有権を侵害しないよう細
> 心の注意を払う必要がある。
>
>  一般にはあまり良いイメージがないが、仕様書と実装の食い違い
> を指摘したり、セキュリティホールやバグの発見につながるなど、
> システム保守やセキュリティ強化の面で役立つこともある。
> e-Words リバースエンジニアリング引用
> http://tinyurl.com/2easy

 どうもありがとうございました。

> 世界はリバースエンジニアを必要としている
> http://www.itmedia.co.jp/news/0010/19/pond.html

 どうもありがとうございました。

                                                                                                                                              • -