The process followed in order to find difficult, unknown, and hidden…

2025

The process followed in order to find difficult, unknown, and hidden information about a software system is called:

  1. A.

    Software Engineering

  2. B.

    Software Re-Engineering

  3. C.

    Reverse Engineering

  4. D.

    Inverse Engineering

Attempted by 86 students.

Show answer & explanation

Correct answer: C

Answer: Reverse Engineering

Definition: Reverse engineering is the process of analyzing a software system to identify its components, interrelationships, and extract design, requirements, or other hidden information that is not readily available from documentation.

  • Key characteristic: Aimed at discovering undocumented or hard-to-find information about existing software.

  • Purpose: Understand legacy systems, recover lost design, enable maintenance, or analyze behavior.

  • Distinction: Different from software re-engineering, which focuses on modifying and improving the system; reverse engineering focuses on discovery and understanding.

Common steps in reverse engineering:

  1. Collect artifacts: Gather source code, binaries, configuration, documentation, and runtime traces.

  2. Static analysis: Examine code or disassembled binaries to identify structure and dependencies.

  3. Dynamic analysis: Run the system, monitor behavior, and collect runtime information to understand actual behavior.

  4. Reconstruct models: Build higher-level artifacts such as architecture diagrams, data models, or requirements from the findings.

  5. Document results: Produce documentation and specifications to support maintenance, re-engineering, or compliance.

Note: Always consider legal and ethical implications—reverse engineering may be restricted by license agreements or law in some contexts.

A video solution is available for this question — log in and enroll to watch it.

Explore the full course: Mppsc Assistant Professor