| Sr. No. | Forward Engineering | Reverse Engineering |
|---|
| 1. | It is the process of transforming a model into code through a mapping to an implementation language. | It is the process of transforming code into a model through a mapping from a specific implementation language. |
| 2. | Forward engineering results in a loss of information, because models written in the UML are semantically richer than any current object oriented programming language. | Reverse engineering results in a flood of information, some of which is at a lower level of detail than you will need to build useful models. |
| 3. | It identifies the rules for mapping to your implementation language or languages of choice. | It identifies the rules for mapping from your implementation language or languages of choice. |
| 4 | It is a traditional process of moving high-level abstracts and logical, implementation-independent designs to the physical implementation of a system. | It is a process of analyzing an existing system to identify its components and their interrelationships. |
| 5. | It would be a logical forward-moving design. | It would be a form of creative deconstruction. |
| 6. | It is easy, because the design includes all dependencies, indexes and relationships between the components of the data model. | It is hard, because not every database engine has the means to store the interdependencies between objects in a logical model. |
| Name | The name of a constraint. It is optional and is commonly omitted. |
| Expression | The condition that must be true when evaluated in order for the constraint to be satisfied. |
| Documentation | Description of constraint. |
| Name | The name of a note. |
| Documentation | It specifies a string that is the comment. |
| Name | The name of a frame. |
| Documentation | Description of timing frame. |
1. Logical View
2. Process View
3. Development View
4. Physical View
1. Logical View
2. Process View
3. Development View
4. Physical View