Posted by: barrmar on Jul 15, 2010
Faced with having to create a data model of a system presented me with a problem. Visio is just not up to the task. It allows you to draw the pictures, but provides little scope to define the model properly.
I have a very old copy of ERWin. ERWin is a Computer Associates application carrying a corporate price tag. The version I have dates back to 2004, about the last time I used it. I installed it onto my computer, but found that to use it would involve going through a very long and tedious tutorial. I would then face another problem - the model can only be used effectively using the propriety software. My client doesn't have this product, so that option is out.
I began an Internet search for open source data modelling software. A number of options presented themselves. None looked very good. Then I chanced upon an application called Open ModelShpere.
Open Modelsphere is an open source application available free. Java based, it is platform independent, running just as happily on Windows 7 and Linux.
My past experience with open source software has been mixed. There are some excellent applications out there, but many do not quite make the grade. Some are difficult to install, requiring detailed instructions.
Open Modelsphere has proven itself to be up to the job. The program has a great deal of functionality that exceeds many commercial equivalents. It is primarily a data modelling tool, but also has business process and UML modelling options.
It is possible to reverse engineer a database into the application as well as forward engineer a database. Options include conceptual, logical and physical data models and it handles entity relationships perfectly well. It allows for the definition of primary and secondary keys, and automatically identifies foreign keys. There are a whole range of attritubes - from data type and length to description and validation rules than can be defined.
There is one big advantage over ERWin - it is much easier to use and it is available free. I am able to give the model to someone else when it is completed - all they have to do is to download and install the application.
The process modelling is UML based using a methodology with which I am not that familiar, but I will persist nevertheless.
Open Modelsphere has an excellent user guide that will help you through the parts of the system that are not that intuitive.
Using the model for two days was almost enough for me to define the data model of a fairly large system - without all the attributes.
My verdict: highly recommended.