IPA IP 2020 Question 51

A question IPA Japan published in 令和2年度 10月 ITパスポート試験 公開問題 問51, translated into English. ITPEC is based on the same exams.

Which of the following is the most appropriate work that is performed in reverse engineering?

Explanation

Analyzing a program to extract its design information — reverse engineering works backwards from a finished product to the specifications and design behind it.

Ordinary (forward) development goes from requirements to design to a program. Reverse engineering runs the other way: it starts from an existing program, often one whose documents are missing or out of date, analyzes its code and behavior, and recovers its specifications and design information. The result is used for maintenance, for migrating or rebuilding the system, or for understanding how a product works.

Answer (d)

Why not others:

  • •(a) — repeating short development cycles to absorb change requests is agile development
  • •(b) — building a trial version and feeding users' evaluation back into development is prototyping
  • •(c) — carrying out the processes in order from upstream to downstream is the waterfall model

Key rule: From an existing program back to its specifications and design is reverse engineering; agile, prototyping and waterfall are ways of developing forwards.

Software Development Management Techniques · AI-written, may contain errors

This question comes from the past questions IPA Japan publishes, translated into English by ITPEC Practice. ITPEC Practice is an independent study tool and is not affiliated with IPA or ITPEC. See the original paper (PDF) or Report an issue.