Graphical Modelling of Relational Databases within Eclipse

RMBench, our flagship product, is a fully integrated Eclipse plugin for graphical modelling of relational databases. It was developed inhouse at Byte Refinery to fill the need we perceived for low-cost but high-quality tools in that segment.

Usability

One important focus during the development of RMBench was high usability in a typical professional IT context, where administrators and application developers deal with databases on a day-to-day basis. From our own experience, we emphasized the following items:

Separation of Model and Diagram

Many simpler, sometimes free tools in this field are limited to a one-on-one correspondence between model and diagram. To some extent this is due to the underlying architecture of eclipse, but it does not meet the requirements of bigger database projects.

  • In RMBench, the model constitutes a collection of database schemas and associated diagrams. Every diagram shows a particular, usually limited aspect of the model. A table can be displayed in multiple diagrams.
  • Foreign key relationships that span the limits of the current diagram are visualized as special "stub connectors" which, when the mouse is placed over them, show the related tables in a tooltip.

Convenient Printing

Even in our modern, computerized and "paperless" world printing remains an important requirement for a modelling tool. During team discussions, or simply to decorate a developers workplace, the multi-page poster showing the database model is an indispensable item.

Since printing usually takes place on limited-size pages, the modelling tool must make it easy to assemble the complete picture.

  • During graphical modelling, RMBench offers a page preview for the current printer which is conveniently overlayed over the diagram, allowing the user to place tables and connection such that they come out well in printing.
  • Along with the ususal features like number of copies and printing of selected pages, the enhanced printer dialog offers different scaling options, for example scaling the whole model to one page.

Reverse and Formward Engineering

Along with usability, the features for importing existing databases, and creating new databases from the graphical model are of utmost importance for a modelling tool. RMBench's reverse engineering capabilities are based on JDBC (Java DataBase Connectivity), the standard interface between Java programs and relational databases.

DDL Generation

After creating a model within RMBench, the SQL code for creating the physical database can be generated from within the tool. There are convenient editors with DDL syntax coloring that allow inspecting and editing the generated DDL before optionally executing it from right within the editor.

Special support for several common database products is bundled with RMBench, including

  • Oracle
  • DB2
  • PostgreSQL
  • MySQL
  • Derby

Model Comparison

One unique feature in RMBench is the ability to compare the current model against an external database. The comparison result is shown in a special editor, which has a structural display in the upper half, detailing the differences, and a DDL editor in the lower half, which shows the corresponding ALTER statements.