ソフトウェアに関するリバースエンジニアリングの説明として,最も適切なものはどれか。
イ 出力,処理,入力という順にプログラムの設計を行う。
ウ ソフトウェアで実現されていた機能をハードウェアで実現する。
エ プログラムの処理の内容に応じて,開発言語や開発ツールを選択する。