A visual modeling tool is necessary to expedite the development of program code. The primary sources for the code are the class and component diagrams.
Just as forward engineering is beneficial, it is important to reverse-engineer the application code into the visual model. This iterative process—forward engineering, coding, and then reverse engineering—is ongoing throughout the project lifecycle.
Not one line of SQL is necessary to implement the container-managed persistence (CMP) model as implemented in the Enterprise JavaBean 2.0 specification.