ITPEC FE Morning April 2022 Question 51
The software reengineering process can be divided into four sub-processes: program modularization, program structure improvement, reverse engineering, and source code translation. Which of the following is a process that focuses on functional analysis and information extraction?
Explanation
Reverse engineering — the reengineering sub-process that analyses the existing program to extract its functions, design and data.
Reengineering rebuilds an existing, often legacy, system into a more maintainable one. Before the code can be restructured or translated, it must be understood: reverse engineering analyses the source code and data to recover the specifications, design documents and functional structure. The other three sub-processes then change the code using that information.
Answer (c)
Why not others:
- •(a) Program modularization — regroups related parts of the program into modules, changing how the code is organised rather than extracting information
- •(b) Program structure improvement — rewrites the control structure, for example removing unstructured jumps, to make the code easier to maintain
- •(d) Source code translation — converts the program from one programming language to another
Key rule: Reverse engineering goes from the product back to its design, forward engineering from the design to the product, and reengineering does one after the other.
Software Development Management Techniques · AI-written, may contain errors
This question comes from an official ITPEC past paper. ITPEC Practice is an independent study tool and is not affiliated with ITPEC. See the official FE past-paper collection or Report an issue.