InformationWeek: The Business Value of Technology

InformationWeek: The Business Value of Technology
InformationWeek - Our New iPad App
Labs

August 11, 1997
Drawn To A Conclusion

InfoModeler 3.1 goes beyond documenting-it expands the role of d ata modeling tools


By Andy Feibus

D atabase administrators have a tough job, one that's usually made tougher by the need to keep up with demands for storing and maintaining data for a wide variety of projects. Each new project brings with it a need for additional database objects: more tables, indexes, views, triggers, and stored procedures. Database modeling tools are key to keeping up with this workload-they help define new database designs and reverse-engineer existing databases. l Data modeling tools are specialized drawing tools that let users graphically define the relationships among the different tables (entities) in your database in entity-relationship (E-R) diagrams, and assign extended attributes (fields, indexes, triggers) to each entity by using a set of dialog boxes. The tool ca n then take the diagram and generate the described database. A number of E-R data modeling tools are available, including ERwin from Logic Works, ER/Studio from Embarcadero Technologies, and Visio Professional from Visio. l However, none of these tools help you figure out what fields you'll need. Even if you know you need a table to store customer information, that doesn't mean you know which fields are needed in the table or how these fields will be used in your project. The packages listed above assume you know what fields will be stored in each table. l InfoModeler from InfoModelers Inc. in Bellevue, Wash., lets you create your database by using the object role modeling (ORM) technique to discover all the data items in your

database. InfoModeler then takes your ORM diagrams, determines which tables and fields are needed to create a normalized database, and creates either an E-R diagram or a database schema. InfoModeler supports only IDEF1X and Relational E-R diagramming, which is a very small subset of the possible diagramming symbology for E-R documents. You can use either the ORM or the E-R diagram to create the physical database on your server.

InfoModeler version 3.1 became available Aug. 1; InformationWeek Labs looked at the final beta version. Compared with version 3.0, version 3.1 is mostly a maintenance release with just a couple of minor enhancements: support for the IBM DB2 database and the ability to import database drawings created with Visio Professional 4.5.

InfoModeler 3.1 comes in three editions: Enterprise ($3,195), Select ($1,495), and Personal ($695). Only the Select and Enterprise editions have any support for team development and Open Database Connectivity drivers. The Select edition limits support to a single ODBC database driver at installation time; the Enterprise edition has no such limitation. Unfortunately, no version control or embedded links to a version-control system are available.

InfoModeler is a step ahead of the competition in identifying required database fie lds. However, it has a limited set of E-R diagramming symbology choices, and its team development features are quite limited.

The first step in creating a database design is to list "facts" about the data that will go into the database. These facts are presented in the form of a normal sentence. For example, the sentence "The salesman works with a customer" describes two objects (salesman and customer) and their relationship (works with).

Ovals And Boxes
Most database design tools advocate this approach to "discovering" the database; however, InfoModeler takes the concept a step further and uses the Formal Object Role Modeling Language to help diagram these facts. In FORML, nouns are objects in the database, represented by ovals; verbs and predicates are "roles," which the objects play in the database, and are indicated by boxes. A verb phrase that connects two objects-for example, "works with"-is shown as two connected boxes. A role constraint is shown as a single- or double-headed arro w over the role box to indicate concepts, such as uniqueness.

InfoModeler can also distinguish between objects that exist and objects that are merely values. For example, "customer" is an object that exists in the real world; however, the customer's name is just a value used to describe the "customer" object. Value objects are represented by ovals that are drawn with a dotted line, differentiating them from "real" objects, which are drawn with a solid line. The sentence "The customer has a name" shows the two objects and the role that defines their relationship.

Finally, to make some of the roles more understandable, sample data can be specified to illustrate the actual role limitations between two objects. Sometimes, seeing the actual data that might correspond to two objects in the database assists designers in determining the proper constraints to put on a data field.

Once fact discovery is completed, InfoModeler can generate the logical E-R diagram from this information or the actual databas e schema, tagging any errors or omissions in information. InfoModeler can automatically generate databases for more than 14 different database-management systems, including Borland dBase, IBM DB2, Microsoft Access, and Oracle.

For situations in which there is an existing database but missing or unreliable documentation, InfoModeler can be used to reverse-engineer the database, producing an E-R diagram or an ORM drawing. This process is simple: Select the ODBC connection to the database, select the database objects you want to include in your document and the type of document you want (E-R or ORM), and InfoModeler does the rest.

Less Process, More Features
InfoModeler's drawing tool has some nice features as well, including some automatic layout features and the ability to automatically split the document into multiple pages. Another useful feature is the ability to quickly locate objects within drawings. InfoModeler presents a list of all the objects in a model in a separate window: Double -click on an object, and the drawing view is changed to show that object; plus, InfoModeler places a red arrow next to the object to ensure that you don't miss it.

InfoModeler drawings are a living link to the original database, since changes can be made either to the database or to the documentation, and the two can be synchronized at any time to reflect these changes. This feature will prove quite handy as your project changes from one phase to another.

InfoModeler also generates SQL code for creating any database described as an E-R or ORM drawing. You can choose to create a text file with the appropriate SQL code for the type of database you want to create, or you can create the actual database if your database's ODBC driver supports database creation.

InfoModeler includes a tool for creating preformatted reports about the objects and attributes in your ORM or E-R diagram. The drawings you create with InfoModeler are ready for printing or plotting, but you'll have to use the Windows Metafile format or the clipboard to transfer the drawing into another document.

Andy Feibus is president of CustomBytes, an automation software consulting firm in Atlanta. He can be reached at amf@mindspring.com .


  Back to Labs

  Send Us Your Feedback

  Top of the Page


Get InformationWeek Daily

Don't miss each day's hottest technology news, sent directly to your inbox, including occasional breaking news alerts.

Sign up for the InformationWeek Daily email newsletter

*Required field

Privacy Statement



This Week's Issue

Technology Whitepapers

Featured Reports







Video