What is the term for the process of reading an existing database schema and producing a clear, high-level data model from it for documentation or redesign?

Difficulty: Easy

Correct Answer: reverse engineering.

Explanation:


Introduction / Context:
When teams inherit a database without good documentation, they often need to derive a conceptual or logical model from the implemented schema. This helps stakeholders understand entities, relationships, and constraints before making improvements. The industry term for this is reverse engineering.



Given Data / Assumptions:

  • The physical schema already exists with tables, keys, and constraints.
  • Documentation is incomplete or outdated.
  • Goal is to produce an understandable model for analysis and redesign.


Concept / Approach:

Reverse engineering extracts metadata (tables, columns, PKs, FKs), analyzes naming patterns and dependencies, and maps them into a logical model (entities, attributes, relationships). This model describes what the system represents rather than how it is physically implemented.



Step-by-Step Solution:

1) Harvest metadata from the catalog or information schema.2) Identify primary and foreign keys to reconstruct relationships.3) Group related tables into subject areas and produce diagrams.4) Validate with domain experts and iterate.


Verification / Alternative check:

Cross-check the inferred model by sampling data and confirming cardinalities and optionalities match business rules.



Why Other Options Are Wrong:

Data modeling and database design are forward-looking activities; here we start from an existing schema and derive the model, which is reverse engineering.



Common Pitfalls:

Mistaking naming conventions for real business rules; failing to validate inferred relationships with actual users and data.



Final Answer:

reverse engineering.

Discussion & Comments

No comments yet. Be the first to comment!
Join Discussion