Many of the products currently available have some of the above features, but no matter how robust or versatile a repository is, it inevitably falls short of meeting all of a company's requirements if it doesn't support user extensions. The best approach is to select the tool that meets as many of the above criteria as possible and that emphasizes user extensibility. Selecting a repository that is not easily expanded is a quick recipe for disaster. The Oracle Designer Repository Oracle Designer comprises a repository and numerous analysis, design, and code-generation tools. Designer provides a graphical interface for capturing business rules, modeling databases, and generating code.
Designer supports a wide variety of databases and front-end and midtier applications.
In addition to providing a turnkey approach, Designer also supports reverse-engineering of existing applications and databases. Most users are aware of Designer and many of its capabilities, but the user-extensibility features remain significantly underutilized. Often, when users need to store information not already provided for in the Designer interface, they resort to using the Notes, Description, or other generic columns to store the data. However, there are many pitfalls in using generic columns to store specific information. For example, generic columns are not easily visible, are easily overwritten during data migrations, are not documented, and are difficult to control.